send RS485 for testing Delta Sevro

Dependencies:   mbed

Fork of RS4851121R by albatross

main.cpp

Committer:
WeberYang
Date:
2018-04-13
Revision:
4:ee9afe2292fd
Parent:
2:bbb217e1219e

File content as of revision 4:ee9afe2292fd:

//相互通信確認用
#include "mbed.h"
#define BUFFER 30

Serial rs485(PA_9,PA_10);//,115200);//(p9,p10);
Serial pc(USBTX,USBRX);
DigitalOut Receiver(D7);//(p5);
#define LENG 31   //0x42 + 31 bytes equal to 32 bytes
char buf[LENG];
//attributes - program variables
char stringOverSerialBuffer[41];    // buffer to store received string over pc
int newCommandFlag = 0;             // flag for ISR
int i;
char data[BUFFER];
int num1,num2;
int idx;
int len = 0;
bool flagrec = false;
void pc_rx(){
    //pc.putc(rs485.getc()); 
    
    Receiver = 0;
    for(idx= 0; rs485.readable(); idx++){
        data[idx]= rs485.getc();
        buf[len] = data[idx];
        len++;
    }
    if (len>8) flagrec = true;
            
}

int main()
{
    rs485.baud(115200);
    pc.baud(115200);
    Receiver=0;
    rs485.attach(pc_rx, Serial::RxIrq);
    while(1){
        wait_ms(10);
        if (flagrec){
            flagrec = false;
            
            for(i= 0; i<len; i++){
                pc.putc(buf[i]);
            }
        len = 0;
        }
    }
}