LPC1768でのサーボモータのホーン位置調整プログラム
Dependencies: mbed
main.cpp@2:2d79bad46611, 2018-09-01 (annotated)
- Committer:
- oichan
- Date:
- Sat Sep 01 02:28:50 2018 +0000
- Revision:
- 2:2d79bad46611
- Parent:
- 1:9aa0d40e58ac
fix message
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
oichan | 0:89bba5c3dc7e | 1 | |
oichan | 2:2d79bad46611 | 2 | /* LPC1768でのサーボモータのホーン位置調整用プログラム * |
oichan | 2:2d79bad46611 | 3 | * タクトスイッチの使用を想定 */ |
oichan | 0:89bba5c3dc7e | 4 | |
oichan | 0:89bba5c3dc7e | 5 | #include "mbed.h" |
oichan | 0:89bba5c3dc7e | 6 | |
oichan | 0:89bba5c3dc7e | 7 | #define RIGHT 0.0005 |
oichan | 0:89bba5c3dc7e | 8 | #define LEFT 0.0024 |
oichan | 0:89bba5c3dc7e | 9 | #define CENTER 0.00145 |
oichan | 0:89bba5c3dc7e | 10 | #define MORISHIN 0.5 //首都大学東京システムデザイン学部システムデザイン学科航空宇宙システム工学コース 兵庫県(淡路島)出身 |
oichan | 0:89bba5c3dc7e | 11 | |
oichan | 0:89bba5c3dc7e | 12 | PwmOut servo(p21); |
oichan | 0:89bba5c3dc7e | 13 | DigitalIn push(p20); |
oichan | 0:89bba5c3dc7e | 14 | Timer t; |
oichan | 0:89bba5c3dc7e | 15 | Serial pc(USBTX,USBRX); |
oichan | 0:89bba5c3dc7e | 16 | |
oichan | 0:89bba5c3dc7e | 17 | int main() { |
oichan | 0:89bba5c3dc7e | 18 | bool Judge; |
oichan | 0:89bba5c3dc7e | 19 | pc.printf("Hello, Happy World!"); //ハロハピ |
oichan | 0:89bba5c3dc7e | 20 | servo.period_ms(20); |
oichan | 0:89bba5c3dc7e | 21 | while(1){ |
oichan | 0:89bba5c3dc7e | 22 | if(push){ |
oichan | 0:89bba5c3dc7e | 23 | t.start(); |
oichan | 0:89bba5c3dc7e | 24 | while(push){ |
oichan | 0:89bba5c3dc7e | 25 | if(t.read()>=MORISHIN){ //MORISHIN[s]長押しすると中立位置になる |
oichan | 0:89bba5c3dc7e | 26 | servo.pulsewidth(CENTER); |
oichan | 0:89bba5c3dc7e | 27 | pc.printf("MORISHIN"); |
oichan | 0:89bba5c3dc7e | 28 | } |
oichan | 0:89bba5c3dc7e | 29 | } |
oichan | 0:89bba5c3dc7e | 30 | if(t.read()<MORISHIN){ |
oichan | 0:89bba5c3dc7e | 31 | if(Judge){ |
oichan | 0:89bba5c3dc7e | 32 | servo.pulsewidth(RIGHT); |
oichan | 0:89bba5c3dc7e | 33 | Judge = false; |
oichan | 0:89bba5c3dc7e | 34 | }else{ |
oichan | 0:89bba5c3dc7e | 35 | servo.pulsewidth(LEFT); |
oichan | 0:89bba5c3dc7e | 36 | Judge = true; |
oichan | 0:89bba5c3dc7e | 37 | } |
oichan | 0:89bba5c3dc7e | 38 | } |
oichan | 0:89bba5c3dc7e | 39 | t.stop(); |
oichan | 0:89bba5c3dc7e | 40 | t.reset(); |
oichan | 0:89bba5c3dc7e | 41 | wait(0.5); |
oichan | 0:89bba5c3dc7e | 42 | } |
oichan | 0:89bba5c3dc7e | 43 | } |
oichan | 0:89bba5c3dc7e | 44 | } |