📄 virtual.lst
字号:
C51 COMPILER V8.08 VIRTUAL 09/09/2008 20:01:36 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE VIRTUAL
OBJECT MODULE PLACED IN virtual.OBJ
COMPILER INVOKED BY: I:\Keil\C51\BIN\C51.EXE virtual.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*-------------------------------------
2 工程名称:virtual
3 功能描述:测试虚拟串口
4 时 间:2008-9-2 20:02
5 作 者:小琅
6 -------------------------------------*/
7
8 #include "include51.h"
9
10 bit flag = 0; //接受标志
11 uint8 rdata = 0;
12
13 void Init();
14 void Delay(uint8);
15 void Send(uint8 sdata);
16
17 void main()
18 {
19 1 Init();
20 1 while(1)
21 1 {
22 2 if(flag == 1)
23 2 {
24 3 Send(0xA9);
25 3 flag = 0;
26 3 }
27 2 Delay(5);
28 2 }
29 1 }
30
31 /*-------------------------------------
32 --------------------------------------*/
33 void Init()
34 {
35 1 SCON = 0x50; //串口工作方式1,允许串口接收
36 1 TMOD |= 0x20; //定时器1,工作方式2
37 1 TH1 = 0xFD; //定时器1决定波特率9600
38 1 TL1 = 0xFD;
39 1 ET1 = 0; //T1关中断
40 1 ES = 1; //串口开中断
41 1 RI = 0;
42 1 TI = 0;
43 1 EA = 1;
44 1 TR1 = 1; //启动定时器1
45 1 }
46
47 /*-------------------------------------------
48 功能:串口中断处理
49 --------------------------------------------*/
50 void Int_Ser() interrupt 4 using 1
51 {
52 1 if(RI==1)
53 1 {
54 2 rdata = SBUF;
55 2 P1 = rdata;
C51 COMPILER V8.08 VIRTUAL 09/09/2008 20:01:36 PAGE 2
56 2 RI = 0;
57 2 flag = 1;
58 2 }
59 1 TI= 0;
60 1 }
61
62 /*-------------------------------
63 --------------------------------*/
64 void Send(uint8 sdata)
65 {
66 1 TI = 0;
67 1 ES = 0;
68 1 SBUF = sdata;
69 1 while(TI == 0);
70 1 TI = 0;
71 1 ES = 1;
72 1 }
73 void Delay(uint8 n)
74 {
75 1 uint8 i;
76 1 while(n--)
77 1 for(i=125; i!=0; i--);
78 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 90 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -