关于UART4 485通讯的问题

2019-07-21 08:00发布

用UART4接了一个485芯片,配置过程没有问题,使用中断的时候返回的数据错误,给我大神能帮忙看看吗,应该怎么解决啊[mw_shl_code=applescript,true]void UART4_IRQHandler(void)
{
        u8 Res;
         if(USART_GetITStatus(UART4, USART_IT_RXNE) != RESET)
                {
                Res =USART_ReceiveData(UART4);       
    Res++;
                USART_SendData(UART4, Res);
                       
     }
}[/mw_shl_code]
485是半双工的,是不是接收到了以后不能直接发送出去啊?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
凌凌漆
1楼-- · 2019-07-22 13:28
douxiaolingyun 发表于 2018-11-9 09:43
也就是说你的程序在接受数据的时候,不能进行又发送数据的动作,你自己看看你程序中有没有发送数据的情况。

大神帮忙看一下,我的控制是这样的,应该怎么做啊
凌凌漆
2楼-- · 2019-07-22 14:12
oyixi001 发表于 2018-11-9 09:47
485芯片有控制脚的,需要拉低拉高改变发送和接收。具体参见相关pdf。

大神看看应该怎么
szczyb1314
3楼-- · 2019-07-22 15:30
能进入接收中断,说明数据已经接收了,然后发送应该是没问题的,不过485发送接收是有使能控制的,你得看你的485的数据手册和你电路设计了
凌凌漆
4楼-- · 2019-07-22 21:08
szczyb1314 发表于 2018-11-9 13:16
能进入接收中断,说明数据已经接收了,然后发送应该是没问题的,不过485发送接收是有使能控制的,你得看你 ...

我把使能控制电路发出来了,大神给看一下吧
oyixi001
5楼-- · 2019-07-23 03:01
 精彩回答 2  元偷偷看……
凌凌漆
6楼-- · 2019-07-23 04:44
oyixi001 发表于 2018-11-12 13:50
额,图有2个小问题。1、最左边R21那里不能用UART5_TX,需要另外一个stm32的引脚,配置为out_PP即可。你这 ...

貌似你说的很有道理,我也不是很懂,但我现在知道是什么原因了,接收的话不用做任何操作,发送的话,,引脚自己拉高,

一周热门 更多>