请教关于STM32 CAN与USART同时通讯的问题

2019-03-23 19:18发布

小弟在用MCU为 STM32F103ZET6 的一块板子学习当中,现在USART和CAN已经分别调通。
现在想请教一下各位高手:
我手边有一台可以通过232串口与PC通讯的机器,是通过PC上一个软件发送指令来控制通讯,但是限于232传输距离不够,我想先用我自己板子上的串口232与机器通讯,然后通过CAN与PC通讯,借此延长传输距离,这样一来,PC跟机器的功能不变,只是我的板子起到了一个中转的作用,日后想在板子上加上显示等用来显示有用的数据。
精通STM32的各位能否给我一个思路,说说这个中转的过程,具体都能用到STM32的哪些功能,详细说一下,谢谢大家!!!
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
安_然
1楼-- · 2019-03-24 01:16
 精彩回答 2  元偷偷看……
hahaygy
2楼-- · 2019-03-24 02:39
感谢版主回复,我这个对反应时间的要求不需要很快,串口那边的速度仅需要 波特率2400B/s 就可以了。
请问要如何在中间加一个缓冲呢?是不是都要在中断中完成收发呢?期待版主的回复!

[ 本帖最后由 hahaygy 于 2013-3-15 19:03 编辑 ]
Li_Lei
3楼-- · 2019-03-24 05:41
买个can调试器直接就送到电脑里了,转成串口多此一举.
xinjitmzy
4楼-- · 2019-03-24 06:55
 精彩回答 2  元偷偷看……
chunyang
5楼-- · 2019-03-24 11:03
楼主的想法是可以实现的,首先看楼主的CAN和串口是否可以同时工作即物理上是否各自独立(包括引脚占用和片内资源等都要各自独立),如是,简单连接串口和CAN后用软件操作就是,将数据通过寄存器交互即可。如非,则需要在内存里建立一个足够大的缓冲区(看你串口终端设备的每次数据发出量),通过这个缓冲区交互数据即可。
hahaygy
6楼-- · 2019-03-24 14:46
这回明白了,我建立缓冲区试试,这样还可以对数据进行进一步的处理,非常感谢版主!!!

一周热门 更多>