1/24 操舵 中央 can receivedata++;

Dependencies:   mbed

Fork of Control_Main_CANver1 by albatross

main.cpp

Committer:
taurin
Date:
2016-02-05
Revision:
1:21010e775c79
Parent:
0:efd2956da873

File content as of revision 1:21010e775c79:

//中央can program

#include "mbed.h"
#define WAIT_LOOP_TIME 0.25
#define YOKUTAN_DATAS_NUM 5
#define IMPUT_DATAS_NUM 2
#define SEND_DATAS_CAN_ID 100

CAN can(p9,p10);
CANMessage recmsg;
Serial toKeikiSerial(p28,p27);
Serial pc(USBTX,USBRX);
DigitalIn eruron(p5);
DigitalIn drug(p6);

signed char yokutanDatas[YOKUTAN_DATAS_NUM];
char inputDatas[IMPUT_DATAS_NUM];

void InputAndSentControlValues(){
    //inputDatas[0] = eruron;
    inputDatas[0] = 1;
    //inputDatas[0] = drug;
    inputDatas[1] = 0;
    if(can.write(CANMessage(SEND_DATAS_CAN_ID, inputDatas, IMPUT_DATAS_NUM))){
            pc.printf("send successed!\n\r");
    }
}

void SendDarasToKeiki(){
    for(int i = 0; i < YOKUTAN_DATAS_NUM; i++){
        toKeikiSerial.putc(yokutanDatas[i]);
    }
}

void toString(){
    for(int i = 0; i < YOKUTAN_DATAS_NUM; i++){
        pc.printf("%i:",yokutanDatas[i]);
    }
    pc.printf("\n\r");
    for(int i = 0; i < IMPUT_DATAS_NUM; i++){
        pc.printf("%d:",inputDatas[i]);
    }
    pc.printf("\n\r");
    
}

void init(){
}

void receiveDatas(){
    if(can.read(recmsg)){
        for(int i = 0; i < recmsg.len; i++){
            yokutanDatas[i] = recmsg.data[i];
        }
    }
}

int main(){
    init();
    while(1){
        InputAndSentControlValues();
        wait_ms(10);
        receiveDatas();
        toString();
        wait(WAIT_LOOP_TIME);
    }
}