uint8_t型とunsigned char型に対応した多バイトシリアル通信用ライブラリ
Dependents: multiserial_test serial_check_controller receiverA receiver_transmitter ... more
Diff: MultiSerial.cpp
- Revision:
- 23:8209d99397b8
- Parent:
- 21:f8802a69c1af
- Child:
- 24:0ca02e8c37e5
diff -r 549436141003 -r 8209d99397b8 MultiSerial.cpp --- a/MultiSerial.cpp Tue Oct 14 12:00:22 2014 +0000 +++ b/MultiSerial.cpp Tue Oct 14 12:16:15 2014 +0000 @@ -11,22 +11,13 @@ void MultiSerial::start_write(){ - __stop_write = 0; __serial__.attach(this,&MultiSerial::TX,RawSerial::TxIrq); __serial__.putc(1); } - - void MultiSerial::stop_write(){ - - __stop_write = 1; - - } - - + void MultiSerial::start_read(){ - - __stop_read = 0; + __serial__.attach(this,&MultiSerial::RX,RawSerial::RxIrq); uint8_t k = __serial__.getc(); @@ -34,11 +25,6 @@ } - void MultiSerial::stop_read(){ - - __stop_read = 1; - - } void MultiSerial::read_data(uint8_t* readData,uint8_t readKey){ @@ -58,16 +44,14 @@ void MultiSerial::TX(void){ - if(__stop_write == 1){return;} - - static uint8_t tx=__writeSize+2, i; + static uint8_t tx = __writeSize+2, i; static uint8_t txData[MAX_DATA_NUM] = {__writeKey}; - static uint8_t tx_checkcode=0; + static uint8_t tx_checkcode = 0; if(tx >= __writeSize+2){ txData[KEY] = __writeKey; - for(int k=1;k<=__writeSize;k++){ + for(int k = 1;k <= __writeSize;k++){ txData[k] = __writeData[k-1]; } @@ -83,8 +67,7 @@ } void MultiSerial::RX(void){ - - if(__stop_read == 1){return;} + static uint8_t rx = 0, i; static uint8_t rxData[MAX_DATA_NUM] = {__readKey}; @@ -122,11 +105,6 @@ return __serial__.readable(); } - - uint8_t MultiSerial::re_first_bit(){ - - return __first_bit; - } void MultiSerial::check_rx_wait(){