cyz1313 发表于 2018-12-3 17:38:24

stn32读取多摩川编码器的问题


http://gg.eefocus.com/www/delivery/lg.php?bannerid=0&campaignid=0&zoneid=462&loc=http%3A%2F%2Fwww.stmcu.org.cn%2Fmodule%2Fforum%2Fthread-618525-1-1.html&referer=http%3A%2F%2Fwww.stmcu.org.cn%2Fmodule%2Fforum%2Fforum.php%3Fmod%3Dpost%26action%3Dnewthread%26fid%3D1323&cb=10e2f5fffd

本人最近用了一款多摩川的编码器TS5700N8501,用stm32f103读取它的数据。用的是usart1DMA功能加485模块来和编码器通信,软件方面没有问题,用串口助手调试过。通信速率2.5M也没有问题,用示波器测过板子485的输出波形。给编码器简单的发送一个0x40的指令,但是编码器就是不返回数据。求大神指导一下。(怀疑是板子上的485模块匹配电阻与编码器的ADM485的匹配电阻不一样导致的

cyz1313 发表于 2018-12-4 10:35:46

求助各位大神,给个建议呀

队长shiwo 发表于 2018-12-4 11:17:50

你的STM32和编码器是否通讯成功过了?如果没有应该检查串口配置是否和编码器的一致,最主要是波特率

cyz1313 发表于 2018-12-4 17:24:33

队长shiwo 发表于 2018-12-4 11:17
你的STM32和编码器是否通讯成功过了?如果没有应该检查串口配置是否和编码器的一致,最主要是波特率 ...

朋友你好,编码器波特率是2.5M,一开始串口2确实是达不到这么高的速率,然后我用了串口1的DMA功能,设置成2.5M,也用示波器仿真了,发现波特率可以达到,波形也没问题呀!

队长shiwo 发表于 2018-12-4 18:43:12

cyz1313 发表于 2018-12-4 17:24
朋友你好,编码器波特率是2.5M,一开始串口2确实是达不到这么高的速率,然后我用了串口1的DMA功能,设置 ...

用了DMA也不会提高波特率的吧,最高波特率被串口本身的时钟限制了的

cyz1313 发表于 2018-12-4 19:14:31

队长shiwo 发表于 2018-12-4 18:43
用了DMA也不会提高波特率的吧,最高波特率被串口本身的时钟限制了的

查过串口1最高波特率可以到4.5兆,我的2.5兆应该没啥问题,更何况还用示波器测过了。
用DMA是因为看到网上有这么个解决方案,所以才加上了的。

cyz1313 发表于 2018-12-4 19:28:56

队长shiwo 发表于 2018-12-4 18:43
用了DMA也不会提高波特率的吧,最高波特率被串口本身的时钟限制了的

查看了STM32手册,串口1波特率最高可以达到4.5兆,我这2.5兆应该没啥问题,何况我还有示波器测过了。
用DMA是因为之前在网上看到过这个方案。
页: [1]
查看完整版本: stn32读取多摩川编码器的问题