使用的是F2812芯片,在对SCIB采用中断方式进行数据接收时,无法收到第二个字节。
想要实现的功能是接收到外部发送的5a5a就进入中断,现在的现象是利用串口调试助手发送5a 5a时,观察SCIRXBUFB寄存器,一直只能接收到第一个5a,第二个数据不正确,一会是FF,一会是00。(已证明测试电缆自发自收没有问题)
在main中开启了SCIB的发送和接收中断,PIE中断也指向了相应的位置,调试助手和程序的数据格式是一致的。
找不出问题出在哪里了……
Seven Han:
是否有检查下波特率的设置?
使用的是F2812芯片,在对SCIB采用中断方式进行数据接收时,无法收到第二个字节。
想要实现的功能是接收到外部发送的5a5a就进入中断,现在的现象是利用串口调试助手发送5a 5a时,观察SCIRXBUFB寄存器,一直只能接收到第一个5a,第二个数据不正确,一会是FF,一会是00。(已证明测试电缆自发自收没有问题)
在main中开启了SCIB的发送和接收中断,PIE中断也指向了相应的位置,调试助手和程序的数据格式是一致的。
找不出问题出在哪里了……
Xi Meng:
回复 Seven Han:
这个设置了的,两端均为115200,数据格式是一致的。
使用的是F2812芯片,在对SCIB采用中断方式进行数据接收时,无法收到第二个字节。
想要实现的功能是接收到外部发送的5a5a就进入中断,现在的现象是利用串口调试助手发送5a 5a时,观察SCIRXBUFB寄存器,一直只能接收到第一个5a,第二个数据不正确,一会是FF,一会是00。(已证明测试电缆自发自收没有问题)
在main中开启了SCIB的发送和接收中断,PIE中断也指向了相应的位置,调试助手和程序的数据格式是一致的。
找不出问题出在哪里了……
Xinxi Tang:
回复 Xi Meng:
观测过你的信号波形么?如果信号波形上升沿和下降沿延迟偏差较大,肯定会误码
使用的是F2812芯片,在对SCIB采用中断方式进行数据接收时,无法收到第二个字节。
想要实现的功能是接收到外部发送的5a5a就进入中断,现在的现象是利用串口调试助手发送5a 5a时,观察SCIRXBUFB寄存器,一直只能接收到第一个5a,第二个数据不正确,一会是FF,一会是00。(已证明测试电缆自发自收没有问题)
在main中开启了SCIB的发送和接收中断,PIE中断也指向了相应的位置,调试助手和程序的数据格式是一致的。
找不出问题出在哪里了……
Xi Meng:
回复 Xinxi Tang:
我单独测过发出来的端口的波形,上升沿和下降沿的延时时间相对于发送的周期集合可以忽略不计。
然后寄存器中一直提示帧错误,说第二个字节的结束位未检测到或者是合并到其他的帧数据中去了
使用的是F2812芯片,在对SCIB采用中断方式进行数据接收时,无法收到第二个字节。
想要实现的功能是接收到外部发送的5a5a就进入中断,现在的现象是利用串口调试助手发送5a 5a时,观察SCIRXBUFB寄存器,一直只能接收到第一个5a,第二个数据不正确,一会是FF,一会是00。(已证明测试电缆自发自收没有问题)
在main中开启了SCIB的发送和接收中断,PIE中断也指向了相应的位置,调试助手和程序的数据格式是一致的。
找不出问题出在哪里了……
Frank Lee96:
奇偶校验位、停止位的设置是否一致?一致的话串口中断是否及时清中断,是否及时取数,取数与清中断的顺序是否颠倒?