IDD hw2

Dependencies:   DebounceIn QEI mbed

Fork of idd_hw2_dpcinci_etchatext by Dominic Cincione

Files at this revision

API Documentation at this revision

Comitter:
dpcinci
Date:
Sun Sep 21 22:18:36 2014 +0000
Commit message:
published on sunday?

Changed in this revision

DebounceIn.lib Show annotated file Show diff for this revision Revisions of this file
QEI.lib Show annotated file Show diff for this revision Revisions of this file
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 4005151fa9b1 DebounceIn.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DebounceIn.lib	Sun Sep 21 22:18:36 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/AjK/code/DebounceIn/#31ae5cfb44a4
diff -r 000000000000 -r 4005151fa9b1 QEI.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/QEI.lib	Sun Sep 21 22:18:36 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/aberk/code/QEI/#5c2ad81551aa
diff -r 000000000000 -r 4005151fa9b1 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sun Sep 21 22:18:36 2014 +0000
@@ -0,0 +1,507 @@
+#include "QEI.h"
+#include "mbed.h"
+#include "DebounceIn.h"
+ 
+Serial pc(USBTX, USBRX);
+//Use X4 encoding.
+//QEI wheel(p29, p30, NC, 624, QEI::X4_ENCODING);
+//Use X2 encoding by default.
+
+DebounceIn RButton(D6);
+DebounceIn LButton(D5);
+
+DigitalOut cLight1(D7);
+DigitalOut cLight2(D8);
+DigitalOut cLight3(D9);
+DigitalOut cLight4(D10);
+DigitalOut cLight5(D11);
+DigitalOut cLight6(D12);
+DigitalOut cLight7(D13);
+DigitalOut cLight8(D14);
+DigitalOut cLight9(D15);
+
+DigitalOut rLight1(A0);
+DigitalOut rLight2(A1);
+DigitalOut rLight3(A2);
+DigitalOut rLight4(A3);
+
+ QEI xWheel (D0, D2, NC, 624);
+ QEI yWheel (D3, D4, NC, 624);
+ 
+ int yPos;
+ int RowNum;
+ int RowEps = 3;
+ bool Rpress; 
+  
+ int xPos;
+ int ColNum = 5;
+ int ColEps = 3;
+ bool Lpress;
+ 
+ char *letter;
+ 
+ 
+int main() {
+ 
+    RButton.mode(PullUp); 
+    LButton.mode(PullUp);
+ 
+    while(1){
+        yPos = yWheel.getPulses();
+        xPos = xWheel.getPulses();
+        
+        
+        Rpress = !RButton.read();
+        Lpress = !LButton.read();
+        
+        //Get Column position
+        if(yPos < 2*RowEps){
+            RowNum = 1;
+            }
+        if(yPos > 2*RowEps && yPos < 4*RowEps){
+            RowNum = 2;
+            }
+        if(yPos > 4*RowEps && yPos < 6*RowEps){
+            RowNum = 3;
+            }
+        if(yPos > 6*RowEps){
+            RowNum = 4;
+            }
+            
+            
+        //Get Column position
+        
+        if(xPos < -7*ColEps){
+            ColNum = 1;
+            }
+        if(xPos > -7*ColEps && xPos < -5*ColEps){
+            ColNum = 2;
+            }
+        if(xPos > -5*ColEps && xPos < -3*ColEps){
+            ColNum = 3;
+            }
+        if(xPos > -3*ColEps && xPos < -ColEps){
+            ColNum = 4;
+            }
+        if(xPos > -ColEps && xPos < ColEps){
+            ColNum = 5;
+            }    
+        if(xPos > ColEps && xPos < 3*ColEps){
+            ColNum = 6;
+            }
+        if(xPos > 3*ColEps && xPos < 5*ColEps){
+            ColNum = 7;
+            }    
+        if(xPos > 5*ColEps && xPos < 7*ColEps){
+            ColNum = 8;
+            }    
+        if(xPos > 7*ColEps){
+            ColNum = 9;
+            }
+        
+        
+        
+        
+        //Set row LEDs
+        
+        if(RowNum ==1){
+            rLight1 = 1;
+            rLight2 = 0;
+            rLight3 = 0;
+            rLight4 = 0;      
+            }
+        
+        if(RowNum ==2){
+            rLight1 = 0;
+            rLight2 = 1;
+            rLight3 = 0;
+            rLight4 = 0;      
+            }
+        
+        if(RowNum ==3){
+            rLight1 = 0;
+            rLight2 = 0;
+            rLight3 = 1;
+            rLight4 = 0;      
+            }
+        
+        if(RowNum ==4){
+            rLight1 = 0;
+            rLight2 = 0;
+            rLight3 = 0;
+            rLight4 = 1;      
+            }
+        //set column leds
+        
+        if(ColNum ==1){
+            cLight1 = 1;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            }
+        
+        if(ColNum ==2){
+            cLight1 = 0;
+            cLight2 = 1;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 0;
+            }  
+              
+        if(ColNum ==3){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 1;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 0;
+            }
+            
+        if(ColNum ==4){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 1;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 0;
+            }
+            
+        if(ColNum ==5){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 1;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 0;
+            
+            }
+            
+        if(ColNum ==6){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 1;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 0;
+            
+            }
+            
+        if(ColNum ==7){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 1;
+            cLight8 = 0;
+            cLight9 = 0;
+                        
+            } 
+            
+        if(ColNum ==8){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 1;
+            cLight9 = 0;
+                        
+            } 
+            
+        if(ColNum ==9){
+            cLight1 = 0;
+            cLight2 = 0;
+            cLight3 = 0;
+            cLight4 = 0;
+            cLight5 = 0;
+            cLight6 = 0;
+            cLight7 = 0;
+            cLight8 = 0;
+            cLight9 = 1;
+            
+            } 
+                
+                
+        // Set letter:
+        
+        
+    if(LButton){
+        if(RowNum == 1){
+            if(ColNum == 1){
+                letter = "q";
+                }
+            if(ColNum == 2){
+                letter = "z";
+                }
+            if(ColNum == 3){
+                letter = "x";
+                }
+            if(ColNum == 4){
+                letter = "c";
+                }
+            if(ColNum == 5){
+                letter = "v";
+                }
+            if(ColNum == 6){
+                letter = "b";
+                }
+            if(ColNum == 7){
+                letter = "n";
+                }
+            if(ColNum == 8){
+                letter = "m";
+                }
+            if(ColNum == 9){
+                letter = " ";
+                }
+            }
+        
+        if(RowNum == 2){
+            if(ColNum == 1){
+                letter = "a";
+                }
+            if(ColNum == 2){
+                letter = "s";
+                }
+            if(ColNum == 3){
+                letter = "d";
+                }
+            if(ColNum == 4){
+                letter = "f";
+                }
+            if(ColNum == 5){
+                letter = "g";
+                }
+            if(ColNum == 6){
+                letter = "h";
+                }
+            if(ColNum == 7){
+                letter = "j";
+                }
+            if(ColNum == 8){
+                letter = "k";
+                }
+            if(ColNum == 9){
+                letter = "l";
+                }
+            }
+        
+        
+        if(RowNum == 3){
+            if(ColNum == 1){
+                letter = "w";
+                }
+            if(ColNum == 2){
+                letter = "e";
+                }
+            if(ColNum == 3){
+                letter = "r";
+                }
+            if(ColNum == 4){
+                letter = "t";
+                }
+            if(ColNum == 5){
+                letter = "y";
+                }
+            if(ColNum == 6){
+                letter = "u";
+                }
+            if(ColNum == 7){
+                letter = "i";
+                }
+            if(ColNum == 8){
+                letter = "o";
+                }
+            if(ColNum == 9){
+                letter = "p";
+                }
+            }
+        
+        if(RowNum == 4){
+            if(ColNum == 1){
+                letter = "1";
+                }
+            if(ColNum == 2){
+                letter = "2";
+                }
+            if(ColNum == 3){
+                letter = "3";
+                }
+            if(ColNum == 4){
+                letter = "!";
+                }
+            if(ColNum == 5){
+                letter = "?";
+                }
+            if(ColNum == 6){
+                letter = ".";
+                }
+            if(ColNum == 7){
+                letter = "+";
+                }
+            if(ColNum == 8){
+                letter = "-";
+                }
+            if(ColNum == 9){
+                letter = "=";
+                }
+            }
+        }
+        
+        
+    if(!LButton){
+        if(RowNum == 1){
+            if(ColNum == 1){
+                letter = "Q";
+                }
+            if(ColNum == 2){
+                letter = "Z";
+                }
+            if(ColNum == 3){
+                letter = "X";
+                }
+            if(ColNum == 4){
+                letter = "C";
+                }
+            if(ColNum == 5){
+                letter = "V";
+                }
+            if(ColNum == 6){
+                letter = "B";
+                }
+            if(ColNum == 7){
+                letter = "N";
+                }
+            if(ColNum == 8){
+                letter = "M";
+                }
+            if(ColNum == 9){
+                letter = " ";
+                }
+            }
+        
+        if(RowNum == 2){
+            if(ColNum == 1){
+                letter = "A";
+                }
+            if(ColNum == 2){
+                letter = "S";
+                }
+            if(ColNum == 3){
+                letter = "D";
+                }
+            if(ColNum == 4){
+                letter = "F";
+                }
+            if(ColNum == 5){
+                letter = "G";
+                }
+            if(ColNum == 6){
+                letter = "H";
+                }
+            if(ColNum == 7){
+                letter = "J";
+                }
+            if(ColNum == 8){
+                letter = "K";
+                }
+            if(ColNum == 9){
+                letter = "L";
+                }
+            }
+        
+        
+        if(RowNum == 3){
+            if(ColNum == 1){
+                letter = "W";
+                }
+            if(ColNum == 2){
+                letter = "E";
+                }
+            if(ColNum == 3){
+                letter = "R";
+                }
+            if(ColNum == 4){
+                letter = "T";
+                }
+            if(ColNum == 5){
+                letter = "Y";
+                }
+            if(ColNum == 6){
+                letter = "U";
+                }
+            if(ColNum == 7){
+                letter = "I";
+                }
+            if(ColNum == 8){
+                letter = "C";
+                }
+            if(ColNum == 9){
+                letter = "P";
+                }
+            }
+        
+        if(RowNum == 4){
+            if(ColNum == 1){
+                letter = "1";
+                }
+            if(ColNum == 2){
+                letter = "2";
+                }
+            if(ColNum == 3){
+                letter = "3";
+                }
+            if(ColNum == 4){
+                letter = "!";
+                }
+            if(ColNum == 5){
+                letter = "?";
+                }
+            if(ColNum == 6){
+                letter = ".";
+                }
+            if(ColNum == 7){
+                letter = "+";
+                }
+            if(ColNum == 8){
+                letter = "-";
+                }
+            if(ColNum == 9){
+                letter = "=";
+                }
+            }
+        }
+        
+                
+        if(!RButton){
+            pc.printf("%s",letter);
+            wait(0.3);
+            }
+                
+        wait(0.001);
+        }
+ 
+}
diff -r 000000000000 -r 4005151fa9b1 mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Sun Sep 21 22:18:36 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/552587b429a1
\ No newline at end of file