TEST 485

Dependencies:   mbed RS485

Committer:
belloula
Date:
Thu Mar 05 10:28:10 2020 +0000
Revision:
0:84c281baac9c
TEST UART 485

Who changed what in which revision?

UserRevisionLine numberNew contents of line
belloula 0:84c281baac9c 1 #include "mbed.h"
belloula 0:84c281baac9c 2 #include <RS485.h>
belloula 0:84c281baac9c 3 Serial pc(USBTX, USBRX);
belloula 0:84c281baac9c 4 RS485 RS485(p13,p14,p15); // Tx, Rx , !RE and DE MAX485 pin
belloula 0:84c281baac9c 5
belloula 0:84c281baac9c 6 DigitalOut ho(p15); // this pin should be connected to !RE and DE
belloula 0:84c281baac9c 7 typedef uint8_t byte;
belloula 0:84c281baac9c 8
belloula 0:84c281baac9c 9 byte regvalue[9];
belloula 0:84c281baac9c 10 //byte data[9] = {0x01,0x04,0x00,0x48,0x00,0x02,0xf1,0xdd};//your data
belloula 0:84c281baac9c 11 byte data[9] = {0x02,0x05,0x01,0x49,0x01,0x03,0xf2,0xde};//your data
belloula 0:84c281baac9c 12 int main()
belloula 0:84c281baac9c 13 {
belloula 0:84c281baac9c 14 pc.baud(115200);
belloula 0:84c281baac9c 15 pc.printf("main\n");
belloula 0:84c281baac9c 16 while(1) {
belloula 0:84c281baac9c 17 pc.printf("Starting\n");
belloula 0:84c281baac9c 18 ho = 1; // Enable sending on MAX485
belloula 0:84c281baac9c 19 RS485.sendMsg(data,sizeof(data));
belloula 0:84c281baac9c 20 wait_ms(600); // Must wait for all the data to be sent
belloula 0:84c281baac9c 21 ho = 0; // Enable receiving on MAX485
belloula 0:84c281baac9c 22 pc.printf("Getting data\n");
belloula 0:84c281baac9c 23 if(RS485.readable() >0){
belloula 0:84c281baac9c 24 memset(regvalue,0,sizeof(regvalue));
belloula 0:84c281baac9c 25 wait_ms(200);
belloula 0:84c281baac9c 26 RS485.recvMsg(regvalue,sizeof(data),500);
belloula 0:84c281baac9c 27 wait_ms(200);
belloula 0:84c281baac9c 28 for (int count = 0; count < 9; count++) {
belloula 0:84c281baac9c 29 pc.printf("%X - ", regvalue[count]);
belloula 0:84c281baac9c 30 }
belloula 0:84c281baac9c 31 }else printf("No Data\n");
belloula 0:84c281baac9c 32 printf("Done\n");
belloula 0:84c281baac9c 33 wait_ms(1000);
belloula 0:84c281baac9c 34 }
belloula 0:84c281baac9c 35 }