ArduinoModbus库文件硬件串口更改
本帖最后由 Strictus 于 2020-10-10 13:10 编辑由ArduinoModbus库文件使用的硬件串口号是写死的,并且与大多数Arudino主板的默认打印串口号重复。因此会让要想使用ArduinoModbus库的用户感到有些苦恼,这个贴子给大家展示一下如何修改ArduinoModbus库使用的硬件串口号。
1、使用前需要安装两个库文件(在IDE中打开Library Manager(Ctrl+Shift+I),找到并安装ArduinoModbus和ArduinoRS485两个库),安装好库文件后,找到Arduino库安装目录,如下图:
2、 在库文件安装目录下的ArduinoRS485库文件中找到RS485.cpp和RS485.h两个文件,如下图;
3、打开RS485.cpp,找到169行代码RS485ClassRS485(SERIAL_PORT_HARDWARE, RS485_DEFAULT_TX_PIN, RS845_DEFAULT_DE_PIN,RS845_DEFAULT_RE_PIN);如下图;
将参数SERIAL_PORT_HARDWARE改为需要用到的硬件串口号,如下图;
这里已改为Serial2.
4、打开RS485.h文件,找到宏定义#defineRS485_DEFAULT_TX_PIN1,如下图;
将宏定义#define RS485_DEFAULT_TX_PIN1改为硬件串口相对应的PIN,如下图;Serial2的Tx Pin为16,所以这里将宏定义改为#defineRS485_DEFAULT_TX_PIN 16
将修改后的RS485.cpp和RS485.h两个文件保存后即ArduinoModbus库的硬件串口已修改为Serial2.
感谢分享 我想问一下,改了之后啊这个产生的一根使能线的端口是哪个?Modify the pins to used to communicate with the MAX3157. By default the library uses pin 14 for TX, pin A6 for drive output enable, and pin A5 for receiver output enable. 感谢分享
另外有没有SoftwareSerial的方法
页:
[1]