Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


This post shown by 700 users. but there is no any reply even yes or no.. very disappointed.

France

Hello,

For lwIP, the board you mention does not have any problem; there is an RJ45 connector on the board.

For Modbus-RTU, the problem is that there is no RS485 interface on this board; moreover teh only serial interface signals that can eb accessed on the extension connectors (Arduino-v3 compatible) are Rx/Tx from USART6, but without any modem control signals. So the only possibility is to get an RS485 Arduino shield (like this oneQuestion that will provide such an interface.

Then you will have to look at the various libraries that may allow to implement Modbus-RTU on an STM32 (or on an Arduino, but there will obviously be more adaptations to do); Anyway you will have to tailor them as you will have to use GPIOs to emulate the modem control signals of the USART (needed to drive the RS485 line drivers) that are not available on the Arduino interface.

Hope this helps,

Bernard (Ac6)

I though lwip is for TCP/IP connections only, not modbus RTU.

When you found a RS485 inferface for your board you can have a look at the modbus software implementation.

Modbus RTU is a really simple protocol. I wrote my own modbus stack at work. Have a look at

http://modbus.org/docs/Modbus_over_serial_line_V1_02.pdfQuestion
and
http://modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdfQuestion

Modbus is well documented. :-)
I does take some time though to get the timing right.

Hello Bernard,

First of all thank you very much for your answer. I have MAX485 moduleQuestion and hope to use it with STM32F746 board to implement Modbus-RTU. is it possible to use MAX485 module to implement Modbus-RTU on STM32F7?

Also I have not any idea about how to write program for LwIP and Modbus using STM32. Because of I’m totally beginner for STM. So I really appreciated you if you can provide some sample program for HTTP POST request and Modbus-RTU.

Thanks,
Dilanka.

France

Hi Dilanka,

Yes you can implement Modbus-RTU on the STM32F7 discovery board you have using the Max485; They both communicate using 3V signaling. The connections you will have to do is connecting RO to the Rx for USART6, DO to Tx of USART6 and both RE/ and DE to the same GPIO, choosing one available on the same Arduino connector, like PB4 (selected as TIM3_CH1 on the Arduino pinout, but you can change it to be a GPIO).

It is even possible that one of the Modbus master stacks available (like the one cited by JuliusCaesar) may support this chip or a compatible one. In all cases what you need is just a stack supporting the STM32 USARTs and using a GPIO to control the transceivers.

If you need to save as much power as possible, you will need to use two GPIOs to command RE/ and DE independently, disabling both the receiver and transmitter when the bus is inactive (this is possible as, being the master of the bus, you know when a slave can talk on the bus).

HTH

Bernard (Ac6)