使用Raspberry Pi通过RS485发送和接收帧

时间:2017-01-04 13:41:01

标签: frame raspbian raspberry-pi3 rs485

我的工作任务是使用Raspberry Pi 3来控制转盘。 转盘有一个内部RS485串口,可通过内置的FTDI USB转换器(USB-RS485-WE-1800-BT)进行访问。 我在Pi上使用Raspbian Jessie Lite并且没有决定使用什么编程语言。

首先,在我看来,FTDI转换器已正确安装。如果我错了,请纠正我:

pi@turntable_ctl1:~ $ dmesg | grep FTDI
[    2.236219] usb 1-1.3: Manufacturer: FTDI
[    5.085380] usbserial: USB Serial support registered for FTDI USB Serial Device
[    5.086330] ftdi_sio 1-1.3:1.0: FTDI USB Serial Device converter detected
[    5.087760] usb 1-1.3: FTDI USB Serial Device converter now attached to ttyUSB0

此外,如果我运行 minicom -D / dev / ttyUSB0 (关闭硬件流控制并打开软件流控制并将波特率设置为19200 8N1),则插入USB插头内的红色LED每次按键时,转换器都会闪烁。

不幸的是,转盘没有完整的文件,因为它是由法国的一家公司为我们定制的。那里的人给我提供了这个graphic (half in english/half in french)以及以下信息:

"当您向我们发送PC框架时,主板会以MT框架进行响应。"

据我所知,为了让桌子转动,我现在必须在/ dev / ttyUSB0上打开一个RS485连接然后执行以下操作:

sendChar(P)
sendChar(C)
sendChar(1)
sendChar(100)  // for example
sendChar(1)    // for example

但我不知道如何在任何编程语言中这样做。更糟糕的是,我无法找到任何代码样本,尽管我认为这是一个相当标准的任务。

所以,如果有人能指出我正确的方向,或者告诉我我的思路从哪里走了,我将非常感激!

感谢您的时间! 标记

1 个答案:

答案 0 :(得分:1)

如果这可能与我以外的任何人有关,这是我的解决方案: 经过一些搜索和朋友的大量提示后,我发现这个库提供了(在Raspberry Pi的其他有用工具中)一个很棒的简单工具集,用于Raspberry Pi上的串行通信。

WiringPi - Serial Library

Gordon在他的网站上有你需要的所有文档和教程。

感谢戈登! 标记