相互通信動くやつ、レシーバー
Dependencies: mbed ADXL345_I2C
Revision 0:fafac0045ad3, committed 2015-12-04
- Comitter:
- taurin
- Date:
- Fri Dec 04 22:42:20 2015 +0000
- Child:
- 1:563b7d0b896f
- Commit message:
- ??????????????;
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
| mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Fri Dec 04 22:42:20 2015 +0000
@@ -0,0 +1,52 @@
+//相互通信確認用
+#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));
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Fri Dec 04 22:42:20 2015 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/165afa46840b \ No newline at end of file