very preliminary code, pins clearly havent been chosen yet!

Dependencies:   TextLCD mbed

Committer:
gcme93
Date:
Tue Jul 02 09:16:17 2013 +0000
Revision:
0:438bb4b2ba51
Child:
1:0404e9aa397f
Full Code (threetime, doubletime, enable, screen output); NO fill; NO alternate; NO user input

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gcme93 0:438bb4b2ba51 1 #include "mbed.h"
gcme93 0:438bb4b2ba51 2 #include "TextLCD.h"
gcme93 0:438bb4b2ba51 3 #include "readknobs.h"
gcme93 0:438bb4b2ba51 4
gcme93 0:438bb4b2ba51 5 extern int tempo;
gcme93 0:438bb4b2ba51 6 extern int swing;
gcme93 0:438bb4b2ba51 7 extern int mintempo;
gcme93 0:438bb4b2ba51 8 extern int maxtempo;
gcme93 0:438bb4b2ba51 9 int k;
gcme93 0:438bb4b2ba51 10
gcme93 0:438bb4b2ba51 11
gcme93 0:438bb4b2ba51 12 TextLCD lcd(PTA1, PTA2, PTA4, PTA5, PTC8, PTC9, TextLCD::LCD20x4); // rs, e, d4-d7
gcme93 0:438bb4b2ba51 13
gcme93 0:438bb4b2ba51 14
gcme93 0:438bb4b2ba51 15 void readknobs()
gcme93 0:438bb4b2ba51 16 {
gcme93 0:438bb4b2ba51 17
gcme93 0:438bb4b2ba51 18 // SWING CALCULATION
gcme93 0:438bb4b2ba51 19
gcme93 0:438bb4b2ba51 20 int a = sw.read() * 10;
gcme93 0:438bb4b2ba51 21
gcme93 0:438bb4b2ba51 22 switch (a)
gcme93 0:438bb4b2ba51 23 {
gcme93 0:438bb4b2ba51 24 case 0: swing = -150;
gcme93 0:438bb4b2ba51 25 case 1: swing = -150;
gcme93 0:438bb4b2ba51 26 case 2: swing = -100;
gcme93 0:438bb4b2ba51 27 case 3: swing = -60;
gcme93 0:438bb4b2ba51 28 case 4:
gcme93 0:438bb4b2ba51 29 case 5:
gcme93 0:438bb4b2ba51 30 case 6: swing = 0;
gcme93 0:438bb4b2ba51 31 case 7: swing = 60;
gcme93 0:438bb4b2ba51 32 case 8: swing = 100;
gcme93 0:438bb4b2ba51 33 case 9: swing = 100;
gcme93 0:438bb4b2ba51 34 case 10: swing = 150;
gcme93 0:438bb4b2ba51 35 }
gcme93 0:438bb4b2ba51 36
gcme93 0:438bb4b2ba51 37 // TEMPO CALCULATION
gcme93 0:438bb4b2ba51 38
gcme93 0:438bb4b2ba51 39 tempo = mintempo + (maxtempo-mintempo)*tmp.read_u16() / 65535;
gcme93 0:438bb4b2ba51 40
gcme93 0:438bb4b2ba51 41 tempo = (doubletime) ? 2*tempo : tempo;
gcme93 0:438bb4b2ba51 42
gcme93 0:438bb4b2ba51 43 // DISPLAY INFO
gcme93 0:438bb4b2ba51 44 char signature = (k==1) ? 3/4 : 4/4;
gcme93 0:438bb4b2ba51 45 char percentage = 37;
gcme93 0:438bb4b2ba51 46
gcme93 0:438bb4b2ba51 47 lcd.cls();
gcme93 0:438bb4b2ba51 48 lcd.locate(0,0);
gcme93 0:438bb4b2ba51 49 lcd.printf("%d bpm", tempo);
gcme93 0:438bb4b2ba51 50 lcd.locate(1,0);
gcme93 0:438bb4b2ba51 51 lcd.printf("Swing: %d %c", swing, percentage);
gcme93 0:438bb4b2ba51 52 lcd.locate(2,0);
gcme93 0:438bb4b2ba51 53 lcd.printf("TimeSig: %s", signature);
gcme93 0:438bb4b2ba51 54 }