当串口发送数据时被硬件置1,需要软件清零。
“main()函数该是个死循环,现在i控制次数,10次执行完后程序飞到哪儿去了?”
应该是这个原因,我在for循环结束后,加了while(1);重复发送的问题解决了。但是现在有一个新问题,就是串口输出为“bbei jing”就是多了一个字母b,我单步执行看了一下,找到多一个b的原因:在第一次执行while(TI==0);时i又跳回了0.所以temp[0]被发送了两次,为什么会第一次执行while(TI==0);时i又跳回0?
另外请问:
main()必须是死循环吗?为什么这么重要的问题,没见教科书里有明确的说明?能解释一下原因吗?