硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1056|回复: 9
收起左侧

[有问必答] 移植的串口FIFO应用在485中出现问题

[复制链接]

1

主题

10

回帖

13

积分

新手上路

积分
13
发表于 2024-5-20 11:14:57 | 显示全部楼层 |阅读模式
标准库F1,移植串口fifo,发送过程中,出现丢一字节的情况,485控制引脚莫名被拉低,导致出现丢字节,下边是逻辑分析仪抓到的,请帮忙找下问题

Snipaste_2024-05-20_11-04-10.jpg

附件是移植的串口文件。

uart.c

29.48 KB, 下载次数: 17

uart.h

3.86 KB, 下载次数: 7

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2024-5-20 15:32:41 | 显示全部楼层
看代码没发现什么问题,得想办法抓一下工程代码看看,另外看下串口错误状态寄存器是不是有ORE溢出错误。
回复

使用道具 举报

1

主题

10

回帖

13

积分

新手上路

积分
13
 楼主| 发表于 2024-5-20 15:58:13 | 显示全部楼层
本帖最后由 xxm 于 2024-5-20 16:14 编辑
eric2013 发表于 2024-5-20 15:32
看代码没发现什么问题,得想办法抓一下工程代码看看,另外看下串口错误状态寄存器是不是有ORE溢出错误。

老哥,ORE没溢出,这个代码不加485芯片,数据没问题,只要一用485,就丢
回复

使用道具 举报

3

主题

295

回帖

304

积分

高级会员

积分
304
发表于 2024-5-20 17:09:39 | 显示全部楼层
没看出来问题在哪,主程序是什么逻辑?一个端口接收到数据,超时时间到以后就用另一个端口原样发送出去?看一下中断优先级,定时器中断和接收中断优先级不能是一样的
回复

使用道具 举报

1

主题

10

回帖

13

积分

新手上路

积分
13
 楼主| 发表于 2024-5-21 09:01:02 | 显示全部楼层
skyshine 发表于 2024-5-20 17:09
没看出来问题在哪,主程序是什么逻辑?一个端口接收到数据,超时时间到以后就用另一个端口原样发送出去?看 ...

对,串口数据转发,串口2接485芯片
Snipaste_2024-05-21_08-58-40.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2024-5-21 15:02:51 | 显示全部楼层
xxm 发表于 2024-5-20 15:58
老哥,ORE没溢出,这个代码不加485芯片,数据没问题,只要一用485,就丢

对了,你的485硬件怎么设计的,考虑输出的上拉下拉和终端电阻都加上。

不过这个改进跟你这个程序收发引脚貌似没什么关系。

实在不行就搞个笨办法,发送完毕后,延迟等待一会在进入接收状态。
回复

使用道具 举报

1

主题

10

回帖

13

积分

新手上路

积分
13
 楼主| 发表于 2024-5-21 15:17:40 | 显示全部楼层
eric2013 发表于 2024-5-21 15:02
对了,你的485硬件怎么设计的,考虑输出的上拉下拉和终端电阻都加上。

不过这个改进跟你这个程序收发 ...

加了
Snipaste_2024-05-21_15-16-31.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2024-5-22 13:09:43 | 显示全部楼层

你的这个美信485是正品吧,按说片选不该有这种问题。可以考虑换个厂家的phy试试
回复

使用道具 举报

1

主题

10

回帖

13

积分

新手上路

积分
13
 楼主| 发表于 2024-5-22 13:32:35 | 显示全部楼层
eric2013 发表于 2024-5-22 13:09
你的这个美信485是正品吧,按说片选不该有这种问题。可以考虑换个厂家的phy试试

485芯片是在立创采购的,应该是没问题的。我今天换一种测试方法:单片机通过串口2(接485芯片)循环发送固定数组,另一片同样的板子作为接收方,通过逻辑分析仪抓取,数据没有问题,多次长时间测试,没有丢数据。
Snipaste_2024-05-22_13-23-17.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2024-5-23 08:48:32 | 显示全部楼层
xxm 发表于 2024-5-22 13:32
485芯片是在立创采购的,应该是没问题的。我今天换一种测试方法:单片机通过串口2(接485芯片)循环发送 ...

好的,估计前面的测试有对发的情况
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-4-26 04:40 , Processed in 0.350445 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表