



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、STC12C5A60S2 雙串口使用程序(已經驗證成功)#include #include intrins.h#define uchar unsigned char#define S2RI 0x01 / 串口2接收中斷請求標志位#define S2TI 0x02 / 串口2發(fā)送中斷請求標志位/=/ 對于將P4.4、P4.5當做I/O口使用必須添加的定義|/=sfr p4sw=0xbb; / 需在主函數文件中做相應設置4、5、6為1(作為I/O口使用)/*sbit button1=P43;sbit button2=P44;sbit button3=P45;sbit button4=P46;*/u
2、char code temp1= 白云:“我可是個名人” ;uchar code temp2= 黑土:“啥名人啊,你就是個人名” ;uchar code temp3= 小崔:“誒,大叔大媽,你倆都冷靜冷靜” ;uchar code temp4= 觀眾:“哈哈哈哈” ;/*void delay_1ms(uchar ii) / 誤差 -0.1us unsigned char a,b;for(; ii0; ii-) for( b = 18; b0; b-) for( a = 152; a0; a-); _nop_(); /if Keil,require use intrins.h void dela
3、y1s(void) /誤差 -0.5us unsigned char a,b,c; for( c = 212; c0; c-) for( b = 160; b0; b-) for( a = 80; a0; a-); _nop_(); /if Keil,require use intrins.h _nop_(); /if Keil,require use intrins.h*/* 串口通信部分 *uchar wj_uun = !; / 用于存放串口1接收的字符uchar wj_uun2 = ?; / 用于存放串口2接收的字符void bt_uart_init() / 單片機雙串口初始化/SCON
4、=0X50; / SM0=0 SM1=1 SM2=0 REN=1SM0 = 0; / 串口工作方式1:1位起始位,8位數據位,1位停止位允許串口接收SM1 = 1;REN = 1; / 允許串口接收/RI=1; / 接收標志位,0:正在接收 1:接收完畢 (如果RI=1就一直執(zhí)行串口中斷)TMOD = 0X20; / 定時器T1工作方式2TH1 = 0XFD; / 9600bit/s下的定時器初值TL1 = 0XFD;TR1 = 1; / 啟動定時器T1EA = 1; / 開總中斷ES = 1; / 開串行口中斷S2CON = 0x50; / 串口2工作在方式1 10位異步收發(fā) S2SM0=0
5、 S2SM1=1 S2REN=1允許接收BRT = 0XFD; / 9600bit/s下的獨立波特率發(fā)生器初值AUXR = 0x10; / 輔助寄存器:0001 0000 -BRTR=1:獨立波特率發(fā)生器開始計數,S2SMOD=0:波特率不加倍,BRTx12=0:獨立波特率每12個時鐘計數一次IE2 = 0x01; / 開串口2中斷 0000 0001-ES2=1/AUXR1 = 0x10; / 0001 0000-S2_P4=1:UART2從P1口(RxD2:P1.2 TxD2:P1.3)切換到P4口(RxD2:P4.2 TxD2:P4.3) 否則默認都為P1口/* 串口1發(fā)送函數 */vo
6、id s1_send_char(uchar dat) / 發(fā)送端(發(fā)送的是字符)SBUF = dat; / 將字符送入發(fā)送緩沖寄存器while(!TI); / TI為發(fā)送狀態(tài)標志位,0:發(fā)送中 1:發(fā)送結束TI = 0; / 手動清零標志位void s1_send_string(uchar *pt) / 通過調用發(fā)送字符函數來發(fā)送字符數組while(*pt != 0)s1_send_char(*pt+);/* 串口2發(fā)送函數 */void s2_send_char(uchar dat2) / 發(fā)送端(發(fā)送的是字符)S2BUF = dat2; / 將字符送入串口2的發(fā)送緩沖寄存器while(!(
7、S2CON&S2TI); / 判斷發(fā)送是否結束:S2CON.bit2 = 0:發(fā)送中 1:發(fā)送結束S2CON &= S2TI; / 手動清零標志位,令S2CON.bit2 = 0void s2_send_string(uchar *pt2) / 通過調用發(fā)送字符函數來發(fā)送字符數組while(*pt2!=0)s2_send_char(*pt2+);/* 串口1中斷程序 */void bt_serial_1()interrupt 4 / 中斷編號4為串行口1中斷if(RI) / 接收標志位,0:正在接收 1:接收完畢 (如果RI=1就一直執(zhí)行中斷)RI = 0; / 同樣需要手動清零wj_uun
8、= SBUF; / 將接收緩沖器接收的字符送入變量中/* 串口2中斷程序 */void bt_serial_2()interrupt 8 / 中斷編號8為串行口2中斷if(S2CON&S2RI) / 接收標志位: S2CON.bit1 = 0:正在接收 1:接收完畢 (如果RI=1就一直執(zhí)行中斷)S2CON &= S2RI; / 同樣需要手動清零,令S2CON.bit1 = 0wj_uun2 = S2BUF; / 將串口2接收到的字符送入變量中void main(void)bt_uart_init(); / 串口初始化p4sw = 0x70; / 0111 0000 對應的4、5、6腳設置成功通用I/O口while(1)/*if(w
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 合同范例在下
- 廈門學校食堂承包合同范例
- 臨時土地合同范本
- 吉他老師合同范本
- 2025年麻風二聯(lián)苗合作協(xié)議書
- 債權協(xié)議合同范本
- 綠化設計苗木合同范本
- 代辦貸款定金合同范例
- 勞動合同范本講解
- 發(fā)票業(yè)務合同范本
- 南充市高2025屆高三高考適應性考試(二診)英語試卷
- 2025年黑龍江職業(yè)學院單招職業(yè)適應性測試題庫帶答案
- 2025年湖南有色金屬職業(yè)技術學院單招職業(yè)傾向性測試題庫附答案
- 第五章產前檢查及高危妊娠監(jiān)測課件
- 2025年02月曲靖市師宗縣事業(yè)單位委托公開遴選工作人員(含遴選)26人筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 2025年寶雞職業(yè)技術學院單招職業(yè)技能測試題庫及完整答案1套
- 2025年車位買賣合同模板電子版
- AI創(chuàng)作指令合集系列之-教案寫作指令
- 環(huán)水保培訓資料
- 2025中智集團招聘重要崗位高頻重點模擬試卷提升(共500題附帶答案詳解)
- 急危重癥護理學第十章環(huán)境及理化因素損傷的救護
評論
0/150
提交評論