lab4

Dependencies:   mbed

Fork of FRA221_lab4 by Wasuthorn Ausrivong

Files at this revision

API Documentation at this revision

Comitter:
wonner163
Date:
Thu Nov 23 14:51:29 2017 +0000
Commit message:
lab4

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
diff -r 000000000000 -r 37c54bfab97b main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Nov 23 14:51:29 2017 +0000
@@ -0,0 +1,154 @@
+#include "mbed.h"
+
+//------------------------------------
+// Hyperterminal configuration
+// 9600 bauds, 8-bit data, no parity
+//------------------------------------
+
+Serial pc(D8,D2);
+BusOut myleds(D3,D4,D5,D6);
+AnalogIn analog_value(A1);
+
+
+int main()
+{
+
+    uint8_t state_menu=0;
+    uint8_t state_show=0;
+    uint8_t state_exit=0;
+    uint8_t data;
+    uint8_t num;
+    float analogread;
+
+
+    while(1) {
+        if(state_show == 0) {
+            pc.printf("************\n");
+            pc.printf("   Menu   \n");
+            pc.printf("************\n");
+            pc.printf("1.SHOW 7-SEGMENT \n");
+            pc.printf("2.READ VR \n");
+            state_show =1;
+        }
+        if(pc.readable()) {
+            data = pc.getc();
+            pc.printf("\n");
+            state_show =0;
+            state_exit =0;
+
+            switch(data) {
+                case '1':
+                    do {
+                            if(state_menu == 0) {
+                                pc.printf("SHOW 7-SEGMENT \n");
+                                pc.printf("a.TEST 7 SEGMENT \n");
+                                pc.printf("x.Exit\n");
+                                state_menu = 1;
+                            }
+                            
+                        if(pc.readable()) {
+                            data = pc.getc();
+                            pc.printf("\n");
+                            state_menu=0;
+
+                            switch(data) {
+                                case 'a':
+                                pc.printf("INSERT YOUR NUMBER(0-9) :  ");
+                                num = pc.getc();
+                                if(num==48){
+                                    num=0;
+                                    }
+                                if(num==49){
+                                    num=1;
+                                    }
+                                if(num==50){
+                                    num=2;
+                                    }
+                                if(num==51){
+                                    num=3;
+                                    }
+                                if(num==52){
+                                    num=4;
+                                    }
+                                if(num==53){
+                                    num=5;
+                                    }
+                                if(num==54){
+                                    num=6;
+                                    }
+                                if(num==55){
+                                    num=7;
+                                    }
+                                if(num==56){
+                                    num=8;
+                                    }
+                                if(num==57){
+                                    num=9;
+                                    }
+                                myleds = num;
+                                pc.printf("NUM = ");
+                                pc.printf("%d \n",num);                              
+                                    break;
+
+                                case 'x':
+                                    state_exit =1;                               
+                                    break;
+
+                                default:
+                                    pc.printf("plz select a or x\n");
+                                    pc.printf("\n\n");
+                                    break;
+                            }
+                        }
+                    } while(state_exit ==0);
+                    
+                    pc.printf("\n");
+                    break;
+
+                case '2':
+
+                    do {
+                        if(state_menu == 0) {
+                            pc.printf("Print Test\n");
+                            pc.printf("a.- Read VR -\n");
+                            pc.printf("x.Exit\n");
+                            state_menu = 1;
+                        }
+                        if(pc.readable()) {
+                            data = pc.getc();
+                            pc.printf("\n");
+                            state_menu=0;
+                            analogread = analog_value.read()* 3.30; // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range) 
+
+                            switch(data) {
+
+                                case 'a':
+                                    pc.printf("VR : ");
+                                    pc.printf("%0.2f\n",analogread);
+                                    pc.printf(" volt");
+                                    break;
+
+
+                                case 'x':
+                                    state_exit =1;    
+                                    break;
+
+                                default:
+                                    pc.printf("plz select a or s\n");
+                                    pc.printf("\n");
+                                    break;
+                            }
+                        }
+                    } while(state_exit ==0);
+                    pc.printf("\n");
+                    break;
+
+
+                default:
+                    pc.printf("plz select 1 or 2 only\n");
+                    pc.printf("\n");
+                    break;
+            }
+        }
+    }
+}
\ No newline at end of file
diff -r 000000000000 -r 37c54bfab97b mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Thu Nov 23 14:51:29 2017 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/fb8e0ae1cceb
\ No newline at end of file