![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
2019NHK_A_sensor board
Dependencies: SerialMultiByte QEI TFmini IRsensor
main.cpp
- Committer:
- ec30109b
- Date:
- 2019-09-05
- Revision:
- 2:4466f57c9e43
- Parent:
- 1:6ae7ff29d054
File content as of revision 2:4466f57c9e43:
#include "mbed.h" #include "IRsensor.h" #include "TFmini.h" #include "QEI.h" #include "SerialMultiByte.h" #include "pinconfig.h" union UnionBytes{ uint8_t bytes[28]; float IRdistance[7]; //0~1 int32_t TFdistance[7]; //2~3 int32_t pulses[7]; //4~6 }; IRsensor ir[] = { IRsensor(IR_0), IRsensor(IR_1) }; TFmini tf[] = { TFmini(TF0_TX, TF0_RX), TFmini(TF1_TX, TF1_RX) }; QEI loli[] = { QEI(encoder_1A, encoder_1B, NC, 100, QEI::X4_ENCODING), QEI(encoder_4A, encoder_4B, NC, 100, QEI::X4_ENCODING), QEI(encoder_3A, encoder_3B, NC, 100, QEI::X4_ENCODING) }; SerialMultiByte serial(mainTX, mainRX); Serial pc(USBTX, USBRX, 115200); int main() { //pc.printf("hello\r\n"); UnionBytes bytedata; uint8_t sendbytes[28]; for(int i=0; i<28; i++){ bytedata.bytes[i] = 0; } for(int i=0; i<2; i++){ ir[i].startAveraging(10); } while (1) { for(int i=0; i<2; i++){ bytedata.IRdistance[i] = ir[i].get_Averagingdistance(); pc.printf("%f ", bytedata.IRdistance[i]); } for(int i=0; i<2; i++){ bytedata.TFdistance[i+2] = (int32_t)tf[i].getDistance(); pc.printf("%d ", bytedata.TFdistance[i+2]); } for(int i=0; i<3; i++){ bytedata.pulses[i+4] = (int32_t)loli[i].getPulses(); pc.printf("%d ", bytedata.pulses[i+4]); } for(int i=0; i<28; i++){ sendbytes[i] = bytedata.bytes[i]; } serial.sendData(sendbytes, 28); pc.printf("a\r\n"); } }