最近因为学习任务的原因需要使用matlab做上位机程序与stm32单片机通信,可是实现过程中出现了奇怪的问题,具体描述如下:
在烧录好stm32端程序后,可以通过各种串口调试助手实现数据的收发,功能正常。可是在使用matlab进行串口操作时,却什么信息也收不到,也无法向单片机写入数据。
以下分别是当时我使用的stm32端和matlab端的试验性程序:
stm32端试验性程序:
while(1)
{
i++;
if(i%5000==0)
{
USART_SendData(USART1,1234);
}
if(i%200==</

在尝试使用matlab作为上位机与stm32单片机进行串口通信时,遇到收发数据异常。问题源于普中PZ6806L开发板的USB串口通信中,matlab打开串口导致DTR信号持续拉高,影响正常通信。解决方案是通过控制DTR电平,如在matlab中利用DataTerminalReady属性或setDTR函数切换DTR状态。确保设置正确的波特率、数据格式和其他串口参数,排查问题时注意检查serial对象属性。
最低0.47元/天 解锁文章
1570

被折叠的 条评论
为什么被折叠?



