|
發布時間: 2022-8-10 16:09
正文摘要:我思考了半天,打出了冒號閃爍代碼,測試發現每分鐘只閃57下。 一開始直接用延時500毫秒循環閃,發現搶了數碼管的動態掃描時間,造成數碼管閃爍。 這里是插入在動態掃描里的,顯示效果都還算理想,只是少 ... |
|
if(sec &1)ss=1;else ss=0;/*1s一翻*/ 這個一秒一翻轉還實在,直接關系1302 編譯不了0.5要不然就按秒亮滅了 ![]() |
wulin 發表于 2022-8-14 07:21 下載了,慢慢玩 |
Y_G_G 發表于 2022-8-13 14:50 復制修改的,改好的就湊一起了 ![]() |
| 調整延時時間 |
玉萌業余發展 發表于 2022-8-11 17:59 單鍵調時,適用帶冒號時鐘專用數碼管。
4位數碼管時鐘仿真.rar
(125.11 KB, 下載次數: 15)
|
玉萌業余發展 發表于 2022-8-13 10:28 話不是這么說的 你多少是會點的 雖說不是一定要像人家科班出身那樣,寫出嚴謹的規范的C語言代碼出來 但至少,一個語句占一行,這一點是要的 因為大家都是這樣的,如果你要貼代碼出來,多少是要考慮一下別人能不能看得明白你的代碼 像你這種代碼,很多時候,過一段時間,只怕是你自己都不知道自己代碼是什么意思了 |
Y_G_G 發表于 2022-8-12 07:24 其實我什么都不懂 ![]() |
玉萌業余發展 發表于 2022-8-11 17:59 你這個代碼,寫得讓人耳目一新啊,有黑客帝國風范 |
Y_G_G 發表于 2022-8-11 13:36 修改了一個。本來就學著玩得 ![]() |
188610329 發表于 2022-8-11 14:54 好,有錢再買回來研究 ![]() |
玉萌業余發展 發表于 2022-8-11 12:20 時鐘點是獨立引腳控制的話,建議用ds1307替代ds1302,因為ds1307有sqw引腳,可直接控制時鐘點,給07地址分別寫入0x00,0x80,0x10可控制時鐘點亮,滅,閃。 |
|
Miao在定時器中斷中改變,1秒鐘取反一次 OUT=..........; //顯示,冒號不亮 if(Miao)OUT&=.....;//冒號亮燈 如果你不會寫一個一秒鐘的定時器,那............. |
lkc8210 發表于 2022-8-10 17:00 冒號是哪根腳/段位? 假設是W3的dp段 P1=0xFF;w3=1;P1=smgduan[shi%16]; if(ss>=500) { ss==0; if(flash) { P1 &= 0x7F; } flash = !flash; }else{ ss+=ms*4; } delay(ms);w3=0;//.... 用的是單獨帶冒號的數碼管,不是小數點分出的;其實小數點分出可以節省硬件連接 ![]() |
mengsiu 發表于 2022-8-11 10:35 感謝黒友回復。 。要精確閃爍哦![]() |
董云交 發表于 2022-8-11 09:08 感謝黒友回復。 。 |
wulin 發表于 2022-8-10 20:54 感謝黒友回復。 。 |
188610329 發表于 2022-8-10 18:06 感謝黒友回復。 。那個是SQW引腳![]() |
npn 發表于 2022-8-10 18:00 感謝黒友回復。 。自學的技術,還不是很熟悉 |
天ノ憶 發表于 2022-8-10 17:35 感謝黒友回復。 。 |
haiyang201 發表于 2022-8-10 17:06 感謝黒友回復。 。自學的技術不是很會 |
lkc8210 發表于 2022-8-10 17:00 感謝黒友回復。 。mh |
| 用個定時器之類的,約500ms滅,然后時鐘變秒時亮就可以。 |
| 這種閃爍我會用定時器中斷,不占用系統延時。他在閃爍的話給我的信息就是系統在運行。至于一分鐘閃多少下,是57下還是63下,其實并不是那么重要的了。 |
| 可以用定時器延伸出來做一個軟定時器,然后置標志位進行準確定時 |
這個程序里有關于數碼管閃點的代碼,可以借鑒用于冒號閃爍。
4位數碼管時鐘溫度表仿真.rar
(175.43 KB, 下載次數: 28)
|
|
這要具體情況具體分析,不能任死理的。 一般如果時鐘點 是獨立引腳的話,我比較習慣用 DS1307 的 SQW 引腳輸出 1秒 的脈沖 來驅動。 而如果時鐘點 是和其他段是公用引腳,比如,在位2的 小數點。 那么會 利用定時器 每 500ms 翻轉一次 Flag_TimePiont 標志, 在數碼管 動態掃描 顯示 位2 數字的時候: if(Flag_TimePiont) Disp[2] |= 0x80; else Disp[2] &= 0x7f; 這樣的方法。 |
| 你要用定時器中斷進行動態掃描和計時。 |
| 要想準確就用定時器 |
| 定時器不是好一點,不占用時間 |
|
冒號是哪根腳/段位? 假設是W3的dp段
|