エレキジャックweb mbed入門 mbed RMCS鉄道模型自動制御システム 課題3です。ボリューム1により列車の速度制御を行います。

Dependencies:   mbed

Revision:
0:e39148d73af0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Jan 19 00:50:19 2012 +0000
@@ -0,0 +1,64 @@
+// mRMCS03 Vr1 control
+// mbed RailModelContorolSystem
+
+#include "mbed.h"
+#include "TextLCD0420.h"
+
+#define ON 1
+#define OFF 0
+#define XON 0
+#define XOFF 1
+
+DigitalOut mled1(LED1);
+DigitalOut mled2(LED2);
+DigitalOut mled3(LED3);
+DigitalOut mled4(LED4);
+AnalogIn vr1_adc(p15);
+AnalogIn vr2_adc(p16);
+DigitalIn sens1(p17);
+DigitalIn sens2(p18);
+DigitalIn sens3(p19);
+PwmOut r1_pwm(p22);
+PwmOut r2_pwm(p23);
+DigitalOut po10(p5);
+DigitalOut po11(p6);
+DigitalOut po20(p7);
+DigitalOut po21(p8);
+
+TextLCD lcd(p24, p25, p26, p27, p28, p29, p30,20,4); // rs, rw, e, d0, d1, d2, d3
+
+float pduty,pduty_slow;
+
+void notch(float duty){
+  r1_pwm.write(duty);
+  r2_pwm.write(0);
+}
+
+void r_notch(float duty){
+  r1_pwm.write(0);
+  r2_pwm.write(duty);
+}
+
+int main() {      
+  int i;
+  float pduty;
+  r1_pwm.pulsewidth(0.000001);//1us=0.000001
+  r1_pwm.period(0.00001);//1ms=0.001s
+  r2_pwm.pulsewidth(0.000001);//1us=0.000001
+  r2_pwm.period(0.00001);//1ms=0.001s
+
+  
+  lcd.cls();
+  lcd.locate(0,0);
+  lcd.printf("** mbed RMCS03 **");
+  
+  
+  while(1){
+    pduty=vr1_adc.read();
+    notch(pduty);
+    lcd.locate(0,1);
+    lcd.printf("%3f",pduty);
+    wait(1.0);
+  }//while
+     
+}//main