STC Uart1,Uart2 关联 printf 函数
2016-09-22 16:02
387 查看
printf 调用的应该是putchar来打印的函数。
所以应该是需要重写putchar函数。初始化与uart1/2一致。
找到的其他的类似与置 TI=0; 好像是不行
在uart.c 中添加如下片段。
【引用自http://bbs.elecfans.com/jishu_405035_1_1.html】
添加完putchar函数后,keil 编译时提示
【C:\KEIL C51\C51\INC\STDIO.H(30): error C231: ‘_putchar’: redefinition】
函数重复定义,此时可以打开stdio.h头文件,注释掉“extern char putchar (char);”
然后再次编译,通过,此时可在任意位置调用printf(“%x, %s, %d,…”, hex, str, int);
所以应该是需要重写putchar函数。初始化与uart1/2一致。
找到的其他的类似与置 TI=0; 好像是不行
在uart.c 中添加如下片段。
【引用自http://bbs.elecfans.com/jishu_405035_1_1.html】
//uart1 void putchar(char c){ ES = 0; SBUF = c; while(TI==0); TI = 0; ES = 1; } //uart2 void putchar(char c){ IE2 &= 0xfe; S2BUF = c; while((S2CON & S2TI) == 0); S2CON &= ~S2TI; IE2 |= 0x01; }
添加完putchar函数后,keil 编译时提示
【C:\KEIL C51\C51\INC\STDIO.H(30): error C231: ‘_putchar’: redefinition】
函数重复定义,此时可以打开stdio.h头文件,注释掉“extern char putchar (char);”
然后再次编译,通过,此时可在任意位置调用printf(“%x, %s, %d,…”, hex, str, int);
相关文章推荐
- Uart_Printf()函数实现
- TM4C123GH6PM中的UARTprintf函数
- Uart_Printf()函数分析
- ARM 串口输出函数uart_printf
- 嵌入式c语言中printf函数的使用(一)——将MCU的UART、IIC、或SPI与printf函数连接
- ARM 平台printf函数定位到uart输出介绍
- printf()函数的执行机理
- 如何写参数个数不定的函数(即类似printf的函数)
- printf函数入门
- printf函数(格式输出函数)
- arm汇编语言中调用C库函数printf[原]
- 编写适合自己需要的printf()函数
- Python Cookbook 第二版 汉化版 [Recipe 16.4] 将参数与函数关联起来(Currying)
- printf函数
- LPC 2368 Uart printf scanf 实现
- 实现自己的不定参数函数(类似printf)
- 利用未公开函数枚举进程及其关联的端口系列之(二)
- C语言的printf函数(格式输出函数)
- 我也来写一个类printf函数(一道深信服的笔试题)
- 关于printf()函数和scanf()函数