?? test.lst
字號:
C51 COMPILER V7.20 TEST 09/29/2004 13:16:49 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE TEST
OBJECT MODULE PLACED IN test.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE test.c OPTIMIZE(6,SPEED) BROWSE DEBUG OBJECTEXTEND TABS(3)
line level source
1 // 采用查詢方式進行串口通訊的例子
2
3 // 采用這種方式的弊端:
4 // 1.如果對方?jīng)]有發(fā)送數(shù)據(jù),則本機無限等待,而不能做其它事情
5 // 2.如果對方發(fā)送數(shù)據(jù)而本機正做其它事情,那么有可能丟失數(shù)據(jù)。
6
7 // 因此實際上串口接收常采用中斷方式,串口發(fā)送則不需要。
8
9
10 #include <reg51.h>
11
12 extern void serial_init(void);
13 extern unsigned char getchar(void);
14 extern void putchar(unsigned char ch);
15 extern void puthex(unsigned char ch);
16
17
18 void main(void)
19 {
20 1 unsigned char i;
21 1
22 1 serial_init(); // 串口初始化
23 1
24 1
25 1 do {
26 2 i=getchar(); // 如果沒有收到串口數(shù)據(jù)則一直等待(查詢接收串口數(shù)據(jù)的弊端)
27 2
28 2 ++i;
29 2 --i; // 觀察斷點
30 2
31 2 putchar(i); // 在串口顯示接收到的ASCII數(shù)據(jù)(就是把原來收到的數(shù)據(jù)再送回串口)
32 2 putchar(' ');
33 2 putchar(' ');
34 2
35 2 putchar('0');
36 2 putchar('x');
37 2 puthex(i); // 在串口以十六進制格式顯示接收的ASCII數(shù)據(jù)
38 2
39 2 putchar(' ');
40 2 putchar(' ');
41 2
42 2 ++i;
43 2 --i; // 觀察斷點
44 2
45 2 }while(1);
46 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 59 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
IDATA SIZE = ---- ----
C51 COMPILER V7.20 TEST 09/29/2004 13:16:49 PAGE 2
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -