
只是烧程序的话串口没问题,但要有电平转换芯片,不然 PC 5V 的电会烧了 33V 的 C2000。
少些工具可以使用 CodeSkin 的 C2prog 软件,直接上官网下就好,免费!
问题一:printf语句在向串口发送字符之前,有一汇编语句判断
TI
是否为
1
(TI
为是表明一个字符发送完毕),若为
0
则等待,语句如下:
C:0x040C
3099FD
JNB
TI(0x981),C:040C
其目的是等待前一字符发送完毕,才发下一字符。所以初始化串口时必须加一句:TI
=
1,否则,程序就在上一个汇编语句上死循环。
问题二:要用printf必须先初始化串行口!
首先,你要通过软件设置好TI=0;
开始执行程序后,TI==0 这个条件为真,也就是while(1); 一直执行这条while(TI==0)程序,也就是所谓的等待,直到你要发送的数据发送完毕,CUP产生一个中断,内部寄存器用于标识发送中断的TI位自动置1,此时,TI的置为1,也就是TI==0 这个条件不再成立,while(TI==0)这条语句就相当于while(0);于是程序跳出while()循环往下执行。
另外需要注意的是,只有while(TI==0);才行, 后面的分号不能省略,没有分号编译时,默认while(TI==0)这条语句后面的那条程序对坐while()循环的对象了。那就错了!
以上就是关于TI的C2000 DSP如何下载程序,一定要JTAJ接口配合配合仿真器下载吗全部的内容,包括:TI的C2000 DSP如何下载程序,一定要JTAJ接口配合配合仿真器下载吗、关于单片机(c语言)串行通信的printf的用法和SCON中TI的问题、单片机中:while(TI==0)怎么能实现等待功能困惑了好久了。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)