|
正在初學(xué)51的中斷,定時(shí)器,串口等等,遇到很多瓶頸比如串口怎么發(fā)送變量的數(shù)值啦(加一個(gè)0x30就好),分享這個(gè)程序給初學(xué)者們啦
功能:
1. 開(kāi)機(jī)以后,LED0和LED1實(shí)現(xiàn)0.5秒間隔閃爍2次,蜂鳴器同時(shí)鳴叫2次。
2. 之后,串口等待接收到一個(gè)字符'R',開(kāi)始進(jìn)入主循環(huán)體。
3. 主循環(huán)體中,LED0和LED1實(shí)現(xiàn)1秒間隔閃爍。
4. 串口接收到字符'D',回復(fù)LED當(dāng)前狀態(tài)和系統(tǒng)當(dāng)前處于運(yùn)行還是暫停狀態(tài),如果運(yùn)行狀態(tài),收到字符'R',如果暫停狀態(tài),收到字符'P'。
5. 串口接收到字符'T',回復(fù)主循環(huán)體開(kāi)始運(yùn)行的時(shí)間和系統(tǒng)當(dāng)前處于運(yùn)行還是暫停狀態(tài),時(shí)間單位為秒,最大計(jì)數(shù)值65535,以每一位的ASCII碼字符發(fā)送,最后加換行符。
6. 串口接收到其他字符,回復(fù)字符'W',且蜂鳴器高頻率鳴叫2次。
7. 主循環(huán)體運(yùn)行每分鐘,蜂鳴器低頻率鳴叫1次。
8. 開(kāi)啟INT0中斷,按下S_INT0,可以暫停目前的程序運(yùn)行,再次按下,可以繼續(xù)運(yùn)行,之前的所有都保持繼續(xù)運(yùn)行的狀態(tài),計(jì)數(shù)值也繼續(xù)累加。暫停狀態(tài)下, 依然可以響應(yīng)串口的'D'和'T'的應(yīng)答回復(fù),具體暫停還是運(yùn)行狀態(tài)的解釋,詳見(jiàn)第4條要求。
9. 所有定時(shí), 用T0方式1中斷實(shí)現(xiàn)。
10. 串行口配置為方式1,4800波特率,中斷接收,查詢發(fā)送。
PS:定時(shí)器的初值為了方便是用晶振12HZ算的哦,想要精確延時(shí)的朋友記得換成11.0592算一下啦
用的STC89C52REC的迷你單片機(jī),原理圖附在壓縮包里啦
單片機(jī)源程序如下:
所有資料51hei提供下載:
totaltask.rar
(83.75 KB, 下載次數(shù): 34)
2019-8-19 17:02 上傳
點(diǎn)擊文件名下載附件
源程序+原理圖 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|