]> granicus.if.org Git - esp-idf/commit
examples: freemodbus port slave basic implementation
authorAlex Lisitsyn <aleks@espressif.com>
Thu, 28 Jun 2018 15:45:41 +0000 (17:45 +0200)
committerAlex Lisitsyn <aleks@espressif.com>
Wed, 17 Oct 2018 10:47:12 +0000 (12:47 +0200)
commitf0eb9985b9258e6b197d1eb674e674eeac3d2cfa
tree3cc3609c060b8b05114504b2f936318dd71b5bd9
parent5b7b64b9464b76d1fcbf0338360c63531416497e
examples: freemodbus port slave basic implementation

This example adds functionality to support basic communication in RS485 networks using Modbus protocol.
This example uses FreeModbus stack and regular UART driver API to communicate in RS485 half duplex mode.
Added initial support of modbus controller pure C api to access device parameters over Modbus transport.
Move freemodbus stack and port files into components folder
Move the modbus_controller interface into components idf folder
Source files updated after review.
Add modbus interface documentation docs/en/api-reference/protocols/modbus.rst
porttimer.c: fix bug with timer1 selected in the Kconfig
Add support of cmake system (added cmake files)

Closes https://github.com/espressif/esp-idf/issues/858
46 files changed:
.gitlab-ci.yml
components/freemodbus/CMakeLists.txt [new file with mode: 0644]
components/freemodbus/Kconfig [new file with mode: 0644]
components/freemodbus/component.mk [new file with mode: 0644]
components/freemodbus/modbus/ascii/mbascii.c [new file with mode: 0644]
components/freemodbus/modbus/ascii/mbascii.h [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfunccoils.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfuncdiag.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfuncdisc.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfuncholding.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfuncinput.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbfuncother.c [new file with mode: 0644]
components/freemodbus/modbus/functions/mbutils.c [new file with mode: 0644]
components/freemodbus/modbus/include/mb.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbconfig.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbframe.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbfunc.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbport.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbproto.h [new file with mode: 0644]
components/freemodbus/modbus/include/mbutils.h [new file with mode: 0644]
components/freemodbus/modbus/mb.c [new file with mode: 0644]
components/freemodbus/modbus/rtu/mbcrc.c [new file with mode: 0644]
components/freemodbus/modbus/rtu/mbcrc.h [new file with mode: 0644]
components/freemodbus/modbus/rtu/mbrtu.c [new file with mode: 0644]
components/freemodbus/modbus/rtu/mbrtu.h [new file with mode: 0644]
components/freemodbus/modbus/tcp/mbtcp.c [new file with mode: 0644]
components/freemodbus/modbus/tcp/mbtcp.h [new file with mode: 0644]
components/freemodbus/modbus_controller/mbcontroller.c [new file with mode: 0644]
components/freemodbus/modbus_controller/mbcontroller.h [new file with mode: 0644]
components/freemodbus/port/port.h [new file with mode: 0644]
components/freemodbus/port/portevent.c [new file with mode: 0644]
components/freemodbus/port/portother.c [new file with mode: 0644]
components/freemodbus/port/portserial.c [new file with mode: 0644]
components/freemodbus/port/porttimer.c [new file with mode: 0644]
docs/Doxyfile
docs/en/api-reference/protocols/index.rst
docs/en/api-reference/protocols/modbus.rst [new file with mode: 0644]
docs/zh_CN/api-reference/protocols/modbus.rst [new file with mode: 0644]
examples/protocols/modbus_slave/CMakeLists.txt [new file with mode: 0644]
examples/protocols/modbus_slave/Makefile [new file with mode: 0644]
examples/protocols/modbus_slave/README.md [new file with mode: 0644]
examples/protocols/modbus_slave/main/CMakeLists.txt [new file with mode: 0644]
examples/protocols/modbus_slave/main/component.mk [new file with mode: 0644]
examples/protocols/modbus_slave/main/deviceparams.c [new file with mode: 0644]
examples/protocols/modbus_slave/main/deviceparams.h [new file with mode: 0644]
examples/protocols/modbus_slave/main/freemodbus.c [new file with mode: 0644]