历史上的今天
今天是:2025年03月08日(星期六)
2020年03月08日 | 51单片机实现printf
2020-03-08 来源:eefocus
printf函数在格式化输出时,向下调用了char putchar(char c);这个函数,在“stdio.h”里可以发现有这个函数,所以我们需要自己构造一个这样的函数,即通过串口putchar(),代码如下:
char putchar(char c)//重定向
{
Uart_SendChar(c);
return c;
}
void Uart_SendChar(unsigned char dat)
{
SBUF = dat;
while(!TI);
TI = 0;
}
然后串口初始化之后,将"stdio.h"头文件包含,就可以使用printf函数了。
NOTE:
使用stdio库中的printf函数将会增加1k左右的代码量,在小容量的51单片机中慎重使用!!
史海拾趣
|
iPod touch播放器是苹果iPod家族系列中的最新一员。iPod Touch播放器与iPhone手机极为相似,被认为是“没有通话功能的iPhone”,另外,同iPhone相比,iPod Touch没有蓝牙功能。但是,iPhone手机用户的一些核心体验在iPod touch上都仍然保留,比如,iP ...… 查看全部问答> |
|
为什么在wince上无法用directdraw创建OFFSCREENPLAIN? 我要在一个板上用directdraw显示yuv图象,我是定制系统有把ddraw加到系统上, wince的例程能运行(ddex1,2 3都能运行,就那个蚊子没有什么动静),说明我的版是有支持ddraw. 但我在创建OFFSCREENPLAIN的时候,不能创建成功, 我参数设置如下: &n ...… 查看全部问答> |
|
怎样安装到网上搜去(注意安装完了改那个后缀名,至于有些文档里说的改环境变量什么的,我觉得没有必要) 安装完注意的问题:调试的时候调试窗口不是自己写的源程序时 在编辑状态的点击OPTIONS--->Build OPTIONS在弹出的窗口选中use debug optio ...… 查看全部问答> |
|
我用AD8551跨导方式放大光电二极管输出电流(I-V),用万用表检测AD8551输出端结果非常稳定,但是用MAX1304做AD采集,结果却一直向小的方向漂移,大约一个小时漂移10mv(8551输出3v左右时)。现在AD8551输出直接接了AD的输入端。原来曾试过加RC滤波 ...… 查看全部问答> |




