[应用方案] 我用的新塘MO58的芯片,编写485通信的程序,有个奇怪的现象

[复制链接]
 楼主| laocuo1142 发表于 2021-3-15 15:02 | 显示全部楼层 |阅读模式
编好的程序,向PC机串口调试助手发数据。比如一个数组a[5]={0xa1, 0xa2, 0xa3, 0xa4, 0xa5};共有5个字节的数据,但是我用自己编写的函数
void fasong_485(uint8_t        *command2,uint8_t number2)
{
  uint8_t *Txbufer;
  Txbufer = command2;
  DrvUART_Write(UART_PORT1,Txbufer,number2);
//  _DRVUART_WAIT_TX_EMPTY (UART_PORT1);         不屏蔽该语句很难返回!!!
}发送数据到串口,假如fasong_485( a , 5 );串口只能显示前4个数据,改为fasong_485( a , 6 );就能显示全了!怎么回事呢?求解释
gejigeji521 发表于 2021-3-15 22:01 | 显示全部楼层
发送参数改成8呢,是不是偶数都可以。
gejigeji521 发表于 2021-3-15 22:01 | 显示全部楼层
可能底层的代码是以16位发送的吧。不够的等待。
凯复Kane 发表于 2021-3-15 23:44 | 显示全部楼层
用的什么芯片呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1296

主题

6236

帖子

15

粉丝
快速回复 在线客服 返回列表 返回顶部

1296

主题

6236

帖子

15

粉丝
快速回复 在线客服 返回列表 返回顶部