久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 51串口網上參考程序

51串口網上參考程序

作者: 時間:2016-11-23 來源:網絡 收藏
學了幾天,接收也沒調通。原搬了網上程序,還是終于通了。貼人原程序吧!
網址如下:http://www.cnblogs.com/feng-bxr/articles/2302086.html謝謝原作者。

#include

sbit WINT1=P3^3; // 外部中斷,接S4按鍵

void init() {

PCON=0x00; //波特率不加倍

TMOD=0x20; //定時器1用作波特率發生器(具有自動重裝載初值的功能)

SCON=0x50; //8為異步收發,波特率可變(由定時器控制)選擇串口方式1,接收允許

TH1=0x0fd;

TL1=0x0fd; //設置波特率為9600bps,晶振11.0592MHz

RI=0; //清標志位

TI=0;

TR1=1; //開啟計數T1

ES=1; //開串口中斷

IT1=1; //設置為跳變觸發方式

EX1=1; //開外部中斷1

EA=1; //開總中斷

}

void main(){

init();

while(1); //延時等待中斷

}

void uart_interrupt (void) interrupt 4{

char date;

ES=0; //關閉串口中斷

if(TI) { //判斷是發送中斷

TI=0; //清除發送中斷標志

}

else {

date=SBUF; //數據緩存到date中

RI=0; //清除接收中斷標志

date++; //數據處理

SBUF=date; //返回數據

}

ES=1; //打開串口中斷

}

void int1_interrupt(void) interrupt 2 {

while(!WINT1); //按鍵松手檢測

SBUF=0X41; //發送字符數據A

}




關鍵詞: 51串口參考程

評論


技術專區

關閉