Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
我们产品用的方案是YTM32B1ME05,通信上我们有CAN通信和串口通信。都是用中断来实现的,串口通信是用: 在程序中我们是下面做串口通信处理。 现在出现,CAN通信接收的数据多时,串口会接收不了数据。 之前也出现过问题,技术工程师让我们加大了接收缓存的数组(UART_TX_RX_SIZE)。原来设定是10的,我们现在一个通信最大的数据量是153,现在加大到160。但是还是会出现串口有数据,中断没接收。只要没接收后,一定要断电,重启后才可以再恢复。
猜测原因可能是,当CAN通信在接收数据多时,会一直在CAN中断内,此时如果有串口接收数据,且超过硬件缓存size,则会丢弃溢出的数据,导致通信失败。 可以试一下把 UART 中断优先级调高,让 UART 可以抢占 CAN 中断
修改过了。CAN改成3,UART改成2.但是还是会不进去中断。UART的溢出中断没有发生。
这个好复现吗?建议咨询FAE进行远程调试
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...