mai.c
key.c```
handlebars
#include
"system.h"
#include
"key.h"
extern
uchar
flag_1ms;/
/在其他模組中尋找其定義。另外,extern也可用來進行鏈結指定。
void
main
(void)/
/程式的主函式}}
在這裡插入**片
#include
"key.h"
//把led.**件包含進來
#include
"system.h"
//把timer0.**件包含進來
uchar
code
smgduan[17
]=;/
/顯示0~
f的值uchar
displaydata[8
];//
定義8位陣列char
datnum1=0
,datnum2=0
,datnum3=0
;uinty=
0;void
dig_poll()
//數碼管顯示i+
+;//
延時7毫秒if(i
>7)
}void
szxs
(void)/
/時鐘顯示}}
}}
key.h
system.h#include
"system.h"
//把timer0.**件包含進來
sbitk1=
p3^1;
sbitk2=
p3^0;
sbitk3=
p3^2;
sbitk4=
p3^3;
//定義按鍵埠
sbit
lsa=p2^
2;//
數碼管位選管腳
sbit
lsb=p2^
3;sbit
lsc=p2^
4;#define
key1
1//按鍵值
#define
key2
2#define
key3
3#define
key4
4void
dig_poll
(void);
void
szxs
(void
);
在這裡插入**片
#include
"system.h"
uchar
flag_1ms=0
;void
timer0_init
(void
)void
timer0()
interrupt
1//中斷號1/
*void
delay_us
(uint
xus)
void
delay_ms
(uint
xms)}*
/
定時器控制數碼管2011 1 24
1.利用定時器 計數器t1產生定時時鐘,由p1口控制8個發光二極體,使8個指示燈依次一次一次閃動,閃動頻率為10次 秒,迴圈 2.用定時器以間隔500ms在6位數碼管依次顯示0,1,2,3,c,d,e,f,重複 include include define uchar unsigned char s...
流水燈 數碼管 定時器中斷
利用動態掃瞄和定時器1在數碼管上顯示出從765432開始以1 10秒的速度往下遞減直至765398並保持顯示此數,與此同時利用定時器0以500ms速度進行流水燈從上至下移動,當數碼管上數減到停止時,實驗板上流水燈也停止然後全部開始閃爍,3秒後 用t0定時 流水燈全部關閉 數碼管上顯示出 hello ...
51 定時器掃瞄矩陣鍵盤 數碼管顯示
大二的時候學完51寫的乙個綜合程式。用定時器中斷掃瞄行,即行已知 再在主程式中判斷列 得到的行列值帶入顯示函式display 按下鍵顯示,鬆開取消顯示。涉及原理理解,邏輯比較混亂,可讀性低。includeunsigned char i,j,l,r,add 0,temp 注意微控制器的行列對應的引腳 ...