hambird 发表于 2013-7-5 09:50:49

stm32f207 RS485 问题

 请教一下,我现在使用stm32f207 的usart3作RS485的数据发送,PD3作为控制io,
发送的基本逻辑是
1、先将pd3置高
2、发送数据,等TXE==RESET
3、将pd3拉低
发现每次发送数据,串口助手会少收到数据
后来用示波器观察TXD和PD3,发现每次数据没发送完,pd3就拉低。
请问这是什么原因?难道txe==reset并不能代表发送数据完成了么?
我现在只能在2、3步之间加了个延时,但是我觉得只是规避了问题,还不知道真正的问题出在哪儿,希望哪位帮我解答一下,谢谢!

hambird 发表于 2013-7-9 09:46:25

回复:stm32f207 RS485 问题

 自己回复,查阅资料后发现TXE是发送寄存器空标志,真正在发送完成标志是TC。

人生之际 发表于 2013-7-11 21:44:12

RE:stm32f207 RS485 问题

是的,TXE后还有整整一个字节在移位寄存器里面,如果让DMA帮你送数据的话,开始发送后,只要开TC中断等它来了就可以切换485芯片到接收状态了。

chuanyunlove 发表于 2015-6-3 15:02:09

求 详解:)

gxw520 发表于 2016-8-4 08:31:39

请问103和207编程的差别大吗?
页: [1]
查看完整版本: stm32f207 RS485 问题