proteus仿真51串口實兩個單片機串口通信,一個發(fā)( {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};),一個收(收到的數(shù)據(jù)點亮LED)
發(fā)送端與接收端源程序及仿真文件見附件
單片機源程序如下:
- #include<reg51.h>
- //--聲明全局函數(shù)--//
- void UsartConfiguration();
- void Delay10ms(unsigned int c); //誤差 0us
- /*******************************************************************************
- * 函 數(shù) 名 : main
- * 函數(shù)功能 : 主函數(shù)
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void main()
- {
- // unsigned char i;
- UsartConfiguration();
- while(1)
- {
- if(RI)
- {
- P0=SBUF; //接收的數(shù)據(jù)點亮led (跑馬燈)
- RI=0;
- }
-
-
- }
- }
- /*******************************************************************************
- * 函 數(shù) 名 :UsartConfiguration()
- * 函數(shù)功能 :設置串口
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void UsartConfiguration()
- {
- SCON=0X50; //設置為工作方式1
- TMOD=0X20; //設置計數(shù)器工作方式2
- PCON=0X00; //波特率不加倍
- TH1=0XFD; //計數(shù)器初始值設置,注意波特率是9600的
- TL1=0XFD;
- // ES=1; //打開接收中斷
- // EA=1; //打開總中斷
- TR1=1; //打開計數(shù)器
- }
- /*******************************************************************************
- * 函 數(shù) 名 : Delay10ms
- * 函數(shù)功能 : 延時函數(shù),延時10ms
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void Delay10ms(unsigned int c) //誤差 0us
- {
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
串口.rar
(17.63 KB, 下載次數(shù): 88)
2018-4-19 17:10 上傳
點擊文件名下載附件
串口源程序及仿真文件
|