📄 putchar.lst
字号:
C51 COMPILER V7.50 PUTCHAR 10/12/2006 15:31:40 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE PUTCHAR
OBJECT MODULE PLACED IN .\Release\Putchar.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\lib\Putchar.c LARGE OPTIMIZE(9,SIZE) BROWSE ORDER MODDP2 INCDIR(..\..
-\inc\) DEBUG OBJECTEXTEND PRINT(.\Release\Putchar.lst) OBJECT(.\Release\Putchar.obj)
line level source
1 /***********************************************************************/
2 /* This file is part of the C51 Compiler package */
3 /* Copyright KEIL ELEKTRONIK GmbH 1990 - 2002 */
4 /***********************************************************************/
5 /* */
6 /* PUTCHAR.C: This routine is the general character output of C51. */
7 /* You may add this file to a uVision2 project. */
8 /* */
9 /* To translate this file use C51 with the following invocation: */
10 /* C51 PUTCHAR.C <memory model> */
11 /* */
12 /* To link the modified PUTCHAR.OBJ file to your application use the */
13 /* following Lx51 invocation: */
14 /* Lx51 <your object file list>, PUTCHAR.OBJ <controls> */
15 /* */
16 /***********************************************************************/
17
18 #include <reg51.h>
19
20 #define XON 0x11
21 #define XOFF 0x13
22 extern data char TXFLAG;
23
24 #if 0
/*
* putchar (full version): expands '\n' into CR LF and handles
* XON/XOFF (Ctrl+S/Ctrl+Q) protocol
*/
char putchar (char c) {
if (c == '\n') {
if (RI) {
if (SBUF == XOFF) {
do {
RI = 0;
while (!RI);
}
while (SBUF != XON);
RI = 0;
}
}
while (!TI);
TI = 0;
SBUF = 0x0d; /* output CR */
}
if (RI) {
if (SBUF == XOFF) {
do {
RI = 0;
while (!RI);
}
while (SBUF != XON);
RI = 0;
C51 COMPILER V7.50 PUTCHAR 10/12/2006 15:31:40 PAGE 2
}
}
while (!TI);
TI = 0;
return (c);//SBUF = c);
}
#endif
64
65 /*
66 * putchar (basic version): expands '\n' into CR LF
67 */
68 char putchar (char c) {
69 1 if (c == '\n') {
70 2 while (!TXFLAG);
71 2 TXFLAG = 0;
72 2 SBUF = 0x0d; /* output CR */
73 2 }
74 1 while (!TXFLAG);
75 1 TXFLAG = 0;
76 1 return (SBUF = c);
77 1 }
78 #if 0
/*
* putchar (mini version): outputs charcter only
*/
char putchar (char c) {
while (!TI);
TI = 0;
return (SBUF = c);
}
#endif
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 24 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
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 + -