中易网

用C51在keil编译的时候,printf串口输出的时候,为什么要"IT=1"才能在串口看到输出结果

答案:1  悬赏:70  
解决时间 2021-01-11 05:10
  • 提问者网友:谁的错
  • 2021-01-10 14:51
用C51在keil编译的时候,printf串口输出的时候,为什么要"IT=1"才能在串口看到输出结果
最佳答案
  • 二级知识专家网友:独钓一江月
  • 2021-01-10 16:28
这是因为printf函数是调用putchar函数输入;
而putchar应该是先判断TI是否为1,不为1则等待为1。如果为1则清0,然后送出一个字符。而单片机上电复位后TI是为零的,因此你如果直接使用printf函数,你的程序就会在putchar函数中等待TI为1。
所以在使用printf前,必须手动将TI=1。

请到keil/c51/lib下查看putchar函数的原文件,就明白这一点。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息