📄 mcu_uart.lst
字号:
C51 COMPILER V7.50 MCU_UART 01/15/2006 18:22:16 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MCU_UART
OBJECT MODULE PLACED IN MCU_UART.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE MCU_UART.C
line level source
1 /* Copyright (C) 1996-2005 Brilliant Ideal Electronics. All rights reserved.
2 MP3_Player+USB_Disk V3.0 Edit by JMBIE STUDIO 2005.03
3 */
4
5
6 #include "AT89C51SND1_REG.H"
7 #include "MCU_UART.H"
8
9 char hex[16] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
10
11 void init_uart() // Baud rate 9600
12 {
13 1 /*Using the T1 as Baud Rate Generater.
14 1 CKCON |=0x04;
15 1 TMOD = 0x20;
16 1 TH1 = 0xf5;
17 1 TL1 = 0xf5;
18 1 SCON = 0x50;
19 1 PCON = PCON|0x80;
20 1 TR1 = 1;
21 1 */
22 1 //Using Internal Baud Rate Generater.
23 1 CKCON |=0x10;
24 1 SCON = 0x50;
25 1 PCON = PCON|0x80;
26 1 BRL = 0xbf;
27 1 BDRCON |=0x0c; //TBCK=1,RBCK=1
28 1 BDRCON |=0x02; //SPD=1
29 1 BDRCON |=0x10; //BRR=1,enable BRG
30 1 }
31
32 /*
33 char uart_getch()
34 {
35 while (!RI);
36 RI = 0;
37 return SBUF;
38 }
39
40 void uart_putch(char ch)
41 {
42 SBUF = ch;
43 while (!TI);
44 TI = 0;
45 }
46
47 */
48
49 void printu(char * str)
50 {
51 1 char *ct = str;
52 1 while (*ct != '\0')
53 1 {
54 2 if (*ct == '\n')
55 2 {
C51 COMPILER V7.50 MCU_UART 01/15/2006 18:22:16 PAGE 2
56 3 SBUF = 13;
57 3 while (!TI);
58 3 TI = 0;
59 3 }
60 2 SBUF=*ct;
61 2 while (!TI);
62 2 TI = 0;
63 2 ct++;
64 2 }
65 1 }
66
67
68 void printuf(char *str, unsigned char cb)
69 {
70 1 char *ct = str;
71 1 while (*ct != '\0')
72 1 {
73 2 if (*ct == '%')
74 2 {
75 3 if (*(ct + 1) == 'x')
76 3 {
77 4 ct += 2;
78 4 SBUF = hex[cb/16];
79 4 while (!TI);
80 4 TI = 0;
81 4 SBUF = hex[cb%16];
82 4 while (!TI);
83 4 TI = 0;
84 4 continue;
85 4 }
86 3 if (*(ct + 1) == 'd')
87 3 {
88 4 ct += 2;
89 4 if(cb/100)
90 4 {SBUF = cb/100+0x30;
91 5 while (!TI);
92 5 TI = 0;}
93 4 if(cb/10)
94 4 {SBUF = (cb%100)/10+0x30;
95 5 while (!TI);
96 5 TI = 0;}
97 4 SBUF = cb%10+0x30;
98 4 while (!TI);
99 4 TI = 0;
100 4 continue;
101 4 }
102 3 if (*(ct + 1) == 'c')
103 3 {
104 4 ct += 2;
105 4 SBUF = cb;
106 4 while (!TI);
107 4 TI = 0;
108 4 continue;
109 4 }
110 3
111 3 }
112 2 if (*ct == '\n')
113 2 {
114 3 SBUF = 13;
115 3 while (!TI);
116 3 TI = 0;
117 3 }
C51 COMPILER V7.50 MCU_UART 01/15/2006 18:22:16 PAGE 3
118 2 SBUF = *ct;
119 2 while (!TI);
120 2 TI = 0;
121 2 ct++;
122 2 }
123 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 257 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 16 ----
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 + -