新手入门
- 积分
- 3
- 金钱
- 3
- 注册时间
- 2020-12-7
- 在线时间
- 0 小时
|
1金钱
使用stm32cubeide建立的工程,设置了时钟频率和波特率,使用的是RS485转usb转换器,所有能试的都试了,就是一个简单的接受一个数据老是收不对,发送77收到是44,多试了几组发现接受的数据是发送的数据取反再右移一位然后最高位补零,我真是服了,怎么调都调不回来
这是中断回调函数,求大佬支招
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if(huart==&huart1)
{
HAL_UART_Receive(&huart1, RX1, sizeof(RX1), 50);
HAL_UART_Transmit(&huart1, RX1, sizeof(RX1), 50);
HAL_UART_Receive_IT(&huart1,RX1, sizeof(RX1));
}
else if(huart==&huart2)
{
HAL_UART_Receive(&huart2, RX2, sizeof(RX2), 50);
HAL_UART_Transmit(&huart2, RX2, sizeof(RX2),50);
HAL_UART_Receive_IT(&huart2,RX2, sizeof(RX2));
}
}
|
|