找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1871|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

按鍵怎樣切換數(shù)碼管顯示溫度值

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1099205 發(fā)表于 2023-11-10 11:11 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
按鍵怎樣切換數(shù)碼管顯示溫度值和上下閾值,上下值閃爍幾下后還可以回到溫度值
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:883242 發(fā)表于 2023-11-10 22:50 | 只看該作者
檢測(cè)到按鍵,閃爍顯示幾秒上閾值,閃爍顯示幾秒下閾值,回到正常顯示溫度狀態(tài)。
回復(fù)

使用道具 舉報(bào)

板凳
ID:69038 發(fā)表于 2023-11-11 00:45 | 只看該作者
設(shè)標(biāo)志計(jì)數(shù),按下按鍵計(jì)數(shù)++,
計(jì)數(shù)1,顯示上限,計(jì)數(shù)2,顯示下限,計(jì)數(shù)0返回,計(jì)數(shù)大于=于4計(jì)數(shù)=0;
再設(shè)按鍵超時(shí)值,有鍵按下,賦值10秒,無(wú)鍵按下超時(shí)值--,
標(biāo)志計(jì)數(shù)>0且超時(shí)值>0,對(duì)應(yīng)顯示閃爍。無(wú)操作10秒后返回不閃。
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2023-11-11 07:21 | 只看該作者
閃爍幾下后還可以回到正常界面,參考以下示例中相關(guān)代碼 4位數(shù)碼管時(shí)鐘溫度表仿真.rar (331.88 KB, 下載次數(shù): 9)

回復(fù)

使用道具 舉報(bào)

5#
ID:1099205 發(fā)表于 2023-11-11 09:16 | 只看該作者
這個(gè)上限值和溫度值顯示都需要寫(xiě)在同一個(gè)定時(shí)器函數(shù)里用switch語(yǔ)句選擇嗎?上限值顯示時(shí)怎么停留一段時(shí)間,然后自己回到溫度顯示值,定時(shí)器里可以用delay,或則fou循環(huán)嗎?如果這時(shí)候執(zhí)行按鍵加減會(huì)不會(huì)影響數(shù)碼管顯示不正常
回復(fù)

使用道具 舉報(bào)

6#
ID:123289 發(fā)表于 2023-11-11 09:49 | 只看該作者
程序這樣做:
1、顯示內(nèi)容只從XSBUF變量中取數(shù)字顯示,即不顯示其它值。好處是:顯示程序SS單一簡(jiǎn)單。
2、下限值放到D_BUF變量中。
3、上限值放到U_BUF變量中。
4、當(dāng)前溫度值放到N_BUF變量中。
當(dāng)你要顯示上限時(shí),送U_BUF到XSBUF,就可以了。
當(dāng)你要顯示下限時(shí),送D_BUF到XSBUF,就可以了。
當(dāng)你要顯示當(dāng)前溫度時(shí),送N_BUF到XSBUF,就可以了。
5、如何閃爍呢?在顯示程序SS中做文章,以顯示某個(gè)LED為例講解,顯示更多的LED,自己擴(kuò)延。
假設(shè)要顯示的是A(0或1),不要將A直接送到IO口驅(qū)動(dòng)LED。而是將A*B之后再送到IO口,這樣A就受B控制了。讓B每0.3秒閃動(dòng)一次(用定時(shí)中間很易做到),這樣LED就閃動(dòng)了。
6、如何控制閃與不閃呢?再用C來(lái)控制,假設(shè):C=1閃,C=0不閃。你就這樣做:
LED = A*B*C + A*(!C)。
關(guān)鍵點(diǎn):不要直接送A至IO,而是加上控制計(jì)算后再送至IO。你會(huì)了吧。
如此,你只要對(duì)讓C=0/1,就可以控制顯示閃與不閃。能過(guò)修改XSBUF,控制顯示的內(nèi)容。簡(jiǎn)單方便吧。


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表