|
|
為啥我按圖連接的電路,程序燒進(jìn)去了,但是按下K1蜂鳴器卻不響,是單片機(jī)程序的問題嗎?
- #include<reg51.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit Key=P2^5;
- sbit DoorBell=P2^7;
- uint p=0;
- //主程序
- void main()
- {
- DoorBell=0;
- TMOD=0x00; //T0 方式 0
- TH0=(8192-700)/32; //700us 定時
- TL0=(8192-700)%32;
- IE=0x82;
- while(1)
- {
- if(Key==0) //按下按鍵啟動定時器
- {
- TR0=1;
- while(Key==0);
- }
- }
- }
- //T0 中斷控制點(diǎn)陣屏顯示
- void Timer0() interrupt 1
- {
- DoorBell=~DoorBell;
- p++;
- if(p<400) //若需要拖長聲音,可以調(diào)整 400 和 800
- {
- TH0=(8192-700)/32; //700us 定時
- TL0=(8192-700)%32;
- }
- else if(p<800)
- {
- TH0=(8192-1000)/32; //1ms 定時
- TL0=(8192-1000)%32;
- }
- else
- {
- TR0=0;
- p=0;
- }
- }
復(fù)制代碼
|
|