1樓:
這個太簡單了吧,記住寫程式定時器要一直跑,建立一個時基,像個手錶的時間一樣要一直跑,即有time_125us,time_1ms,time_100ms,time_1s,time_1min,time_1hour等時間變數建立時基一直走。其它程式可以分時掃描也可以輪流掃描,不能停留死等,像電腦裡的程式一樣表面看起來各個程式是一直執行的,即各個程式中不能有delay_1ms之類的函式,如果要定時應該申請一個變數在時基裡處理,如等待2s可以這麼寫
if(step==0)
if((step==1)&&(time==0))在時基時每1s把time減1,減到0為止即if(time)time--;
對按鍵的寫法一般用採集的方法如按鍵後io為低if(!io)
else
if(key_flag&&(!key_flag_bak))else led_off;
2樓:匿名使用者
用一個定時器,先賦值一個num,當num=20的時候,led亮的時間是1s,當按下鍵,讓num+20(12m的晶振)在定義一個a,判斷a是否與num相等。這樣試試呢....
51微控制器C程式問題
很明顯不一樣 原因如下 s2con 0x02 0 這條語句成立的條件是s2con 0 二進位制表示的,代表任意值 即s2con只需要第二位為0就一定滿足 s2con 0x02 1 這條語句成立的條件是s2con 二進位制表示的,代表任意值 即s2con可以為任意值,都滿足 我猜你的問題應該是這麼樣子...
C語言鬧鐘程式,用C語言寫51微控制器鬧鐘程式
如果在vc 中考慮採用定時器 如果不用vc 考慮採用多執行緒 如何拿微控制器用c語言程式設計做一個鬧鐘?現在智慧手機是設定好的,可以用手機的鬧鐘就可以了 用c語言寫51微控制器鬧鐘程式 實現功能 本程式實現在p1口模擬一個流水燈程式 include define p out p1 巨集定義輸出的i ...
c51微控制器程式求助
sec cnt equ 30h sec 0x equ 31h org 0000h sjmp mian org 000bh sjmp int t0 mian mov sec cnt,20 mov sec 0x,00h mov tmod,01h mov th0,65536 50000 256mov tl...