📄 uartmaster.lst
字号:
C51 COMPILER V7.50 UARTMASTER 04/14/2006 20:56:02 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE UARTMASTER
OBJECT MODULE PLACED IN UartMaster.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE UartMaster.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <c8051f040.h>
2
3 typedef unsigned char uchar;
4 typedef unsigned int uint;
5
6 sfr16 RCAP2=0XCA;
7 sfr16 TMR2=0XCC;
8
9 xdata uchar aa[6]={0xCC,0xCC,0xCC,0xCC,0xCC,0xCC};
10 xdata uchar res[6];
11 xdata uchar k;
12 xdata uchar t;
13
14 enum {aalen=6};
15
16 void uart0_ini();
17 void t1_ini();
18 void t1_baud(uchar t1h);
19 void t2_ini();
20 void t2_baud(uint t2reload);
21 void config(void);
22
23 void uart0_ini(){
24 1 SFRPAGE=0X00;
25 1 SADEN0=0X00;
26 1 SADDR0=0X00;
27 1 SSTA0=0X01;
28 1 SCON0=0X50;
29 1 SCON0&=0XFC;
30 1 IE|=0X10;
31 1 t1_ini();
32 1 t2_ini();
33 1 }
34
35 void t1_ini(){
36 1 SFRPAGE=0x00;
37 1 CKCON=0x10;
38 1 TMOD=0x20;
39 1 TCON=0x40;
40 1 }
41
42 void t1_baud(uchar val){
43 1 SFRPAGE=0x00;
44 1 TH1=~val+1;
45 1 TL1=TH1;
46 1 }
47
48 void t2_ini(){
49 1 SFRPAGE=0X00;
50 1 TMR2CF=0X08;
51 1 TMR2CN=0X04;
52 1 }
53
54 void t2_baud(uint t2reload){
55 1 SFRPAGE=0X00;
C51 COMPILER V7.50 UARTMASTER 04/14/2006 20:56:02 PAGE 2
56 1 RCAP2=~t2reload+1;
57 1 TMR2=RCAP2;
58 1 }
59
60 void config(void){
61 1 WDTCN=0X07;
62 1 WDTCN=0XDE;
63 1 WDTCN=0XAD;
64 1 SFRPAGE=0X0F;
65 1 XBR0=0X04;
66 1 XBR1=0X00;
67 1 XBR2=0X40;
68 1 XBR3=0X00;
69 1 SFRPAGE=0X0F;
70 1 P0MDOUT=0X00;
71 1 P1MDIN=0XFF;
72 1 SFRPAGE=0X0F;
73 1 CLKSEL=0X00;
74 1 OSCXCN=0X00;
75 1 OSCICN=0X84;
76 1 }
77
78 void main(){
79 1 config();
80 1 uart0_ini();
81 1 t1_baud(10);
82 1 t2_baud(10);
83 1 EA=1;
84 1 k=0;
85 1 t=0;
86 1 SFRPAGE=0X00;
87 1 SBUF0=aa[k];
88 1 while(1){
89 2 if(k>=aalen){
90 3 SFRPAGE=0X00;
91 3 TR2=0;
92 3 }
93 2 if(t>=aalen){
94 3 SFRPAGE=0X00;
95 3 TR1=0;
96 3 }
97 2 }
98 1 }
99
100 void uart0_ISR() interrupt 4{
101 1 SFRPAGE=0X00;
102 1 if(SCON0&0X01){
103 2 res[t]=SBUF0;
104 2 t++;
105 2 SCON0&=0XFE;
106 2 }
107 1 if(SCON0&0X02){
108 2 k++;
109 2 SBUF0=aa[k];
110 2 SCON0&=0XFD;
111 2 }
112 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 278 ----
CONSTANT SIZE = ---- ----
C51 COMPILER V7.50 UARTMASTER 04/14/2006 20:56:02 PAGE 3
XDATA SIZE = 14 ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
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 + -