KeilC51使用printf输出到串口打印的实现
来源:互联网 发布:穆赫兰道 知乎 编辑:程序博客网 时间:2024/05/24 03:31
1.在keil中printf默认是向串口中发送数据的,在完成串口0的初始化之后便可以使用。Keil\C51\LIB目录下有个putchar.c文件,printf函数会调用该文件中的putchar函数,putchar里面的使用的寄存器都是标准51的sfr(如TI,SBUF),它们的地址是固定的,由此可知printf函数只针对串口0。
2.printf函数是调用putchar函数输入的,而putchar应该是先判断TI是否为1,不为1则等待为1。如果为1则清0,然后送出一 个字符。因此你如果直接使用printf函数,你的程序就会在putchar函数中等待TI为1。这时你的程序就相当于直接死掉了。你可以通过改写 putchar函数实现自己的目的的。
3.<stdio.h>中定义printf函数,调用底层的putchar()来实现.底层发送数据到串口时,先查TI=1是否成立,死等直到TI=1时将新数据写入SBUF,函数返回,所以要先将TI置1,启动第一次传输操作.可查看反汇编相关代码理解其工作机理!
4.如果只是用printf输出字符串的话还是自己编个函数吧,因为printf要处理各类数据的输出,占用代码空间很大,我试了一下,程序里就一条printf语句,code就1K了,而且printf执行起来也慢。
0 0
- KeilC51使用printf输出到串口打印的实现
- IAR +STM32实现printf()输出到串口
- DSP下面printf串口输出的实现
- 使用SWO来替代串口实现Printf打印功能
- STM32在IAR和MDK中使用printf进行串口打印的实现方法
- printf()函数实现串口打印的配置方法
- glibc中的printf如何输出到串口
- 串口输出重定向到 printf
- STM32中使用printf打印串口数据
- STM32 使用printf打印串口信息
- zigbee printf 输出打印信息到控制台
- linux下使用printf打印输出不同颜色字体的方法
- 使用printf向串口输出数据
- linux 实现输出重定向(printf 打印,输出到指定文件(不输出到终端))
- 战舰F407在CMSIS-RTOS RTX下使用printf函数输出到串口
- STM32串口打印printf
- STM32 printf函数打印到串口(刘凯)
- 编写读取内存的程序 ——keil uVision3 printf函数重定向到串口输出
- Android界面基本属性
- Linux 下的终端文件管理mc
- Drools项目发布成Web服务
- C语言---数据类型
- linux deamon中常使用的pid file
- KeilC51使用printf输出到串口打印的实现
- 遍历二叉树
- Swift学习笔记(一)——Swift的数据类型
- hashcode
- LeetCode OJ - Rotate Image
- little crawler for clojure
- debugfs命令恢复被误删的文件
- 如果在本地搭一个服务器和mysql数据库环境,如果使用java来访问数据库
- 网站分析基础概念之目标转化率