单片机接收不到串口调试助手发来的数据,我用的是USB接口,

2025-04-04 19:00:36
推荐回答(4个)
回答1:

【1】你所做的收到与否判断。如果不是在线仿真,查看Receive_Buf[],而是根据回复情况,结论可能是错的。
【2】没有看到你的应答程序。
【3】如果串口设置了最高优先,PS=1;其余IP位为0情况。仿真仍然时有时无,还应检查电平接口标准。通常USB转串口(TTL电平),可能TTL侧是3V。因此上拉个电阻在单片机RXD管脚到5V电源,再试试看。TXD则不需要。

回答2:

void serial() interrupt 4
{
static uchar i;
uchar ch;
if(RI)
{
RI = 0;
Receive_Buf[i] = SBUF;
i++;
if(i > 16)
{
i = 0;
R_flag = 1;
}
}
}

回答3:

兄弟, 你也应该明白是什么问题吧, "单片机接收不到串口调试助手发来的数据,我用的是USB接口" C是过程语言, 转化到单片机内是机器语言(汇编) , USB 接口与串口是两个不同的硬件, 它们的通讯设置是不相同的
你编写的这段代码前面应该还有"通讯参数设置" 这个模块, 以你焊接的硬件来编写这个模块. 若软硬件不搭配, 肯定是通讯不了的

回答4:

是不是超出了可识别的设备呀