?? rs232.lst
字號(hào):
C51 COMPILER V7.20 RS232 03/15/2007 14:48:59 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE RS232
OBJECT MODULE PLACED IN RS232.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE RS232.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /**************************************************
2
3 RS232串口通信實(shí)驗(yàn)
4 http://www.kaifaban.com
5
6 功能:LED顯示PC串口發(fā)送給單片機(jī)的數(shù)據(jù)
7 并且給PC返回接收到的數(shù)據(jù)
8 注:串口收發(fā)請使用串口調(diào)試軟件調(diào)試,J12連接右邊兩端
9
10 ***************************************************/
11 #include <reg52.h>
12 #define uchar unsigned char
13 sbit DsySelect=P3^7; //控制LED的74HC244所在IO口
14 uchar Buf=0; //接收到的數(shù)據(jù)
15 //串行中斷程序
16 void UART() interrupt 4 {
17 1 if(RI){
18 2 if(SBUF!=0x11){
19 3 Buf=SBUF;//從串口緩沖區(qū)取得數(shù)據(jù)
20 3 SBUF=Buf;//發(fā)送接收到的數(shù)據(jù)
21 3 while(!TI);//等待發(fā)送完成
22 3 TI=0;//清除發(fā)送標(biāo)志
23 3 }
24 2 RI=0;//清除接收標(biāo)志
25 2 }
26 1 }
27 //主程序
28 main(){
29 1 DsySelect=0;//打開LED
30 1 P0=0xFF; //復(fù)位P0口
31 1 EA=1; //開總中斷
32 1 ES=1; //允許串行中斷
33 1 SCON=0x50;//串口模式1
34 1 PCON=0; //波特率不翻倍
35 1 TMOD=0x20; //定時(shí)器1工作方式2
36 1 TL1=TH1=0xFD; //波特率9600bps(11.0592M)
37 1 TR1=1; //啟動(dòng)定時(shí)器1
38 1 while(1){
39 2 P0=~Buf; //以8位二進(jìn)制數(shù)顯示接收到的數(shù)據(jù)
40 2 }
41 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 60 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -