Takeuchi Kouichi
/
2bk0817_servo_test04
エレキジャックweb mbed入門 サーボを動かそう 課題4です。サーボの動きに合わせて'*'を左右に動かします。
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 //Servo test04 Vr_control 00002 // * level meter 00003 #include "mbed.h" 00004 #include "TextLCD0420.h" 00005 00006 #define ON 1 00007 #define OFF 0 00008 00009 DigitalOut mled0(LED1); 00010 DigitalOut mled1(LED2); 00011 AnalogIn vr_adc(p15); 00012 PwmOut servo1(p21); 00013 00014 TextLCD lcd(p24, p25, p26, p27, p28, p29, p30,20,4); // rs, rw, e, d0, d1, d2, d3 00015 00016 int main() { 00017 int i; 00018 float pwidth,vr_data; 00019 lcd.cls(); 00020 lcd.locate(0,0); 00021 lcd.printf("*** Servo test ****\n"); 00022 servo1.period_ms(20); 00023 00024 while(1){ 00025 vr_data=vr_adc.read()/1000; 00026 pwidth=vr_data+0.001; 00027 servo1.pulsewidth(pwidth); 00028 i=vr_data*10000-1; 00029 if(i<0){ 00030 i=0; 00031 } 00032 lcd.locate(0,1); 00033 lcd.printf("----+----:%2.2f%ms",pwidth*1000); 00034 lcd.locate(0,2); 00035 lcd.printf(" "); 00036 lcd.locate(i,2); 00037 lcd.printf("*"); 00038 }//while 00039 }//main 00040
Generated on Fri Jul 22 2022 09:32:50 by 1.7.2