發什么就顯示什么,波特率4800
單片機源程序如下:
- /**************************************************************************************
- 將波特率設置為4800,選擇發送的數據就可以顯示
- 發什么顯示什么
- ***************************************************************************************/
- #include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
- typedef unsigned int u16; //對數據類型進行聲明定義
- typedef unsigned char u8;
- /*******************************************************************************
- * 函數名 :UsartInit()
- * 函數功能 :設置串口
- * 輸入 : 無
- * 輸出 : 無
- *******************************************************************************/
- void UsartInit()
- {
- SCON=0X50; //設置為工作方式1
- TMOD=0X20; //設置計數器工作方式2
- PCON=0X80; //波特率加倍
- TH1=0XF3; //計數器初始值設置,注意波特率是4800的
- TL1=0XF3;
- ES=1; //打開接收中斷
- EA=1; //打開總中斷
- TR1=1; //打開計數器
- }
- /*******************************************************************************
- * 函 數 名 : main
- * 函數功能 : 主函數
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void main()
- {
- UsartInit(); // 串口初始化
- while(1);
- }
- /*******************************************************************************
- * 函數名 : Usart() interrupt 4
- * 函數功能 : 串口通信中斷函數
- * 輸入 : 無
- * 輸出 : 無
- *******************************************************************************/
- void Usart() interrupt 4
- {
- u8 receiveData;
- receiveData=SBUF;//出去接收到的數據
- RI = 0;//清除接收中斷標志位
- SBUF=receiveData;//將接收到的數據放入到發送寄存器
- while(!TI); //等待發送數據完成
- TI=0; //清除發送完成標志位
- }
復制代碼
所有資料51hei提供下載:
串口通信.rar
(24.91 KB, 下載次數: 19)
2018-8-10 18:04 上傳
點擊文件名下載附件
|