?? rs232.lst
字號(hào):
C51 COMPILER V8.02 RS232 10/24/2007 23:16:51 PAGE 1
C51 COMPILER V8.02, 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 程序功能:通過PC端的串口調(diào)試工具,從PC端發(fā)出一個(gè)十六進(jìn)制的數(shù),
3 通過串口傳輸?shù)絾纹瑱C(jī),并有單片機(jī)通過
4 LED數(shù)碼管顯示出來,而且單片機(jī)又將
5 這個(gè)數(shù)發(fā)回PC端,并在PC端顯示出來,從而
6 實(shí)現(xiàn)單片機(jī)與PC機(jī)的通訊
7 *****************************************/
8 #include <reg52.h>
9
10 unsigned char date;
11 code unsigned char seg7code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,
12 0x82,0xf8,0x80,0x90,0xff}; //共陽(yáng)數(shù)碼管段碼
13
14
15 //***********************************************************
16
17 // 延時(shí)子程序
18
19 //************************************************************
20 void delay1ms()
21 {
22 1 unsigned char i;
23 1 for(i=124;i>0;i--); //延時(shí)124*8+10=1002us
24 1 }
25
26 //***********************************************************
27
28 //顯示函數(shù),顯示四位的date數(shù)據(jù)
29
30 //P0口接段碼,P2.0-P2.3接位選
31
32 //************************************************************
33
34 void LED_display(int date) //顯示4位數(shù)
35 {
36 1 P2=0xfb; //P2.2=0,選通第三位
37 1 P0=seg7code[date%100/10];
38 1 delay1ms();
39 1 P0=0xff; //消隱
40 1
41 1 P2=0xf7; //P2.3=0,選通第四位
42 1 P0=seg7code[date%10];
43 1 delay1ms();
44 1 P0=0xff; //消隱
45 1 }
46
47 //******************************
48
49 //*****串口初始化函數(shù)***********
50
51 //******************************
52 Initial_com()
53 {
54 1 EA=1; //開總中斷
55 1 ES=1; //允許串口中斷
C51 COMPILER V8.02 RS232 10/24/2007 23:16:51 PAGE 2
56 1 ET1=1; //允許定時(shí)器T1的中斷
57 1 TMOD=0x20; //定時(shí)器T1,在模式3(自動(dòng)裝入的8位定時(shí)方式)中斷產(chǎn)生波特率
58 1 PCON=0x00; //SMOD=0
59 1 SCON=0x50; //8位異步收發(fā),波特率可變
60 1 TH1=0xfd; //波特率設(shè)置為9600
61 1 TL1=0xfd;
62 1 TR1=1; //開定時(shí)器T1運(yùn)行控制位
63 1
64 1 }
65
66 //*************************
67 //**********主函數(shù)*********
68 //*************************
69 main()
70 {
71 1 Initial_com();
72 1 while(1)
73 1 {
74 2 if(RI)
75 2 {
76 3 date=SBUF;
77 3 SBUF=date;
78 3 RI=0;
79 3 }
80 2 LED_display(date);
81 2 }
82 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 132 ----
CONSTANT SIZE = 11 ----
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 + -