1/23 操舵 レシーバ
Dependencies: ADXL345_I2C INA226_ver1 mbed
Fork of RS485R_2 by
main.cpp
- Committer:
- taurin
- Date:
- 2015-12-04
- Revision:
- 0:fafac0045ad3
- Child:
- 1:563b7d0b896f
File content as of revision 0:fafac0045ad3:
//相互通信確認用 #include "mbed.h" #define BUFFER 30 Serial rs485(p9,p10); Serial pc(USBTX,USBRX); DigitalOut Receiver(p5); PwmOut servo1(p21); PwmOut servo2(p22); int counter = 0; int servo_deg1 = 0; int servo_deg2 = 0; void rs485_rx() { int rec_data = rs485.getc(); switch(rec_data){ case 'A': servo_deg1 = rs485.getc(); pc.printf("counter1:%d\n\r",servo_deg1); break; case 'B': servo_deg2 = rs485.getc(); pc.printf("counter2:%d\n\r",servo_deg2); break; case 'C': Receiver = 1; wait_ms(1); rs485.putc(counter++); wait_ms(1); Receiver = 0; break; default: wait_us(5); pc.printf("%d\n\r",rec_data); } } int main() { Receiver = 0; pc.printf("Receiver\n\r"); rs485.baud(38400); servo1.period_ms(20); servo2.period_ms(20); rs485.attach(rs485_rx, Serial::RxIrq); while(1){ servo1.pulsewidth(0.00093 + (servo_deg1 / 180.0) * (0.00235 - 0.00077)); servo2.pulsewidth(0.00093 + (servo_deg2 / 180.0) * (0.00235 - 0.00077)); } }