📄 uart.lst
字号:
C51 COMPILER V8.02 UART 05/08/2008 14:12:14 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN uart.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE uart\uart.c LARGE BROWSE INCDIR(.\dataflash;.\lcd;.\task;.\uart;.\ucos;.\ke
-y) DEBUG OBJECTEXTEND PRINT(.\uart.lst) OBJECT(uart.obj)
line level source
1 /*
2 *************************************************************************
3 * C8051F340 uart modular
4 *
5 * Ambition Comm Tech Ltd.Cop
6 * Jason.D.Proakis
7 *
8 * File Description : .c file of uart in C8051F340.
9 * Include implemention operate functions
10 * such as initial, output one charater,
11 * output a string, input one charater, input a string.
12 * Create Date : 04-04-2008
13 * Version : V1.00
14 * Change History :
15 *
16 *************************************************************************
17 */
18
19
20 #include <C8051F340.h>
21 #include "uart.h"
22
23 /* Initial uart0, use .h file configurations */
24 void init_uart0(void)
25 {
26 1 CKCON |= 0x08; /* timer1 use sysclk */
27 1 SCON0 |= 0x50; /* uart in mode 1 (8 bit), REN=1 */
28 1 TMOD &= 0x0F; /* Timer 1 in mode 2 */
29 1 TMOD |= 0x20;
30 1 TH1 = 0x30; /* 115200 Bds at 48MHz system clock */
31 1 TL1 = 0x30;
32 1 TR1 = 1; /* Timer 1 run */
33 1 TI0 = 1; /* set uart0 transmit interrupt flag*/
34 1 }
35
36 /* Put a char by uart0 */
37 void putc_uart0(char ch) reentrant
38 {
39 1 while(!TI0);
40 1 TI0 = 0;
41 1 SBUF0 = ch;
42 1
43 1 if(ch == '\n') putc_uart0('\r');
44 1 }
45
46 /* Get a char from uart0 */
47 char getc_uart0(void)
48 {
49 1 while(!RI0);
50 1 RI0 = 0;
51 1 return (SBUF0);
52 1 }
53
54 /* Put a string by uart0 */
C51 COMPILER V8.02 UART 05/08/2008 14:12:14 PAGE 2
55 void puts_uart0(char * pch)
56 {
57 1 while(*pch != '\0') putc_uart0(*pch++);
58 1 }
59
60 /* Get a string from uart0 */
61 unsigned char gets_uart0(char * pch)
62 {
63 1 unsigned char cnt = 0;
64 1
65 1 while((*pch++ = getc_uart0()) != '\n') cnt ++;
66 1 *pch = '\0';
67 1
68 1 return cnt;
69 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 179 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 6
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 + -