[STM32F0] stm32f030f4怎么扩展两个串口

[复制链接]
4124|47
 楼主| jlyuan 发表于 2021-11-13 22:49 | 显示全部楼层 |阅读模式
看了stm32f030f4的手册!片子只有一个串口,但是可以复用端口,所以我想用复用端口来做两组串口 PA9,PA19
和PA2,PA3。但是当我做的时候才发现把两组串口都配置好了之后,发送数据时两组串口都能够接收到。后来我分时段配置串口,数据读取正确。但是有点小问题如下:AA 00 0E 00 64 72 FF 00 AA 00 0E 00 64 72 FF 00 AA 00 0F 00 64 73 FF 00 AA 00 0F 00 64 73 FF 00 AA 00 0F 00 64 73 FF 00 AA 00 0F 00 64 73 FF 00 AA 00 0D 00 64 71 FF 00 AA 00 0D 00 64 71 FF 00 AA 00 0D 00 64 71 FF 00 AA 00 0D 00 64 71 FF 00
。每次数据读取了之后AA 00 0E 00 64 72 FF 00多了一个00!弄了半天还是没有弄掉
dengdc 发表于 2021-11-13 22:51 | 显示全部楼层

还有什么现象?能再详细描述下吗?
 楼主| jlyuan 发表于 2021-11-13 22:54 | 显示全部楼层
一个串口作为传感器值读取,一个串口用做modbus协议!
wangpe 发表于 2021-11-13 22:56 | 显示全部楼层
你上面的数据怎么发的?
dingy 发表于 2021-11-13 22:57 | 显示全部楼层
是不是每发一段数据,多出最后面的00?
dengdc 发表于 2021-11-13 22:59 | 显示全部楼层
这个 00 应该是串口切换时, 端口无效而导致串口内部引线上的低电平引起的,
songqian17 发表于 2021-11-13 23:02 | 显示全部楼层
可以考虑帧切换时, 通过软件清掉这个尾巴上的数据.
xxrs 发表于 2021-11-13 23:08 | 显示全部楼层
可以给通信线上加上拉电阻,防止在切换串口时出现不确定的电平状态
 楼主| jlyuan 发表于 2021-11-13 23:10 | 显示全部楼层
不是多出了0x00 !! 是我发送完一次数据后,把串口对应的IO口配置为输出模式,表示切换到另一个串口!由于产生了电平变化,所以串口自动读取为0x00的数据!
 楼主| jlyuan 发表于 2021-11-13 23:12 | 显示全部楼层
是的 !! 我是用modbus通信协议!!    后面这个0x00读取的时候可以丢掉 !! 但是那个标准协议只有那么几位数据!       输出模式都测试完了,还是不能够丢掉这个尾巴  。等下试试配置为输入模式看看可不可以丢掉这个尾巴!
 楼主| jlyuan 发表于 2021-11-13 23:14 | 显示全部楼层
恩恩 !!! 等下我试试!!! 如果配置成上拉输入能不能达到相同效果?
 楼主| jlyuan 发表于 2021-11-13 23:19 | 显示全部楼层
哈哈 !!! 刚才我一下想到了。     我用的modbus是485输出,当传输完7位数据后就关闭输出通信使能!这样就可以丢掉那个“尾巴 ”了!!!
dingy 发表于 2021-11-13 23:19 | 显示全部楼层
如果是硬件串口,官方是有推荐IO的配置的
heweibig 发表于 2021-11-13 23:21 | 显示全部楼层
如果你改成上拉输入,不确定会不会出问题
shimx 发表于 2021-11-13 23:23 | 显示全部楼层
8楼说的,真是这样吗
supernan 发表于 2021-11-13 23:25 | 显示全部楼层

那你可以分时复用这两组端口,就是通过二次初始化的方式嘛
午夜粪车 发表于 2021-11-13 23:30 | 显示全部楼层
请教如何将stm32f030f4配置成2个串口,我试了无数遍,始终不行
zhenykun 发表于 2021-11-13 23:32 | 显示全部楼层
STM32F030F4就一个串口?
 楼主| jlyuan 发表于 2021-11-13 23:35 | 显示全部楼层

嗯,我再好好缕一缕吧,有了好消息及时通知大家
 楼主| jlyuan 发表于 2021-11-13 23:37 | 显示全部楼层

唉,还是没有什么结果,算了,多谢大家啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

880

主题

12030

帖子

4

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