lab4

Dependencies:   mbed

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
--- /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
--- /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