Frances Tsenn / Mbed 2 deprecated ECE4180PianoTutorial

Dependencies:   mbed 4DGL-uLCD-SE MCP23S17

Committer:
ftsenn
Date:
Tue Nov 21 19:46:36 2017 +0000
Revision:
2:2ccb5a604e77
Parent:
1:d182179e7c1b
Child:
3:bcf445c082ae
Child:
5:18a4d0822e89
BusIn for piano key presses.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ftsenn 0:5d8ef6969179 1 #include "mbed.h"
ftsenn 0:5d8ef6969179 2
ftsenn 1:d182179e7c1b 3 BusIn rKeys(p16, p17, p18, p19, p20);
ftsenn 1:d182179e7c1b 4 BusIn cKeys(p28, p27, p26, p25, p24, p23, p22, p21);
ftsenn 0:5d8ef6969179 5
ftsenn 2:2ccb5a604e77 6
ftsenn 0:5d8ef6969179 7 int main() {
ftsenn 1:d182179e7c1b 8 rKeys.mode(PullUp);
ftsenn 1:d182179e7c1b 9 cKeys.mode(PullUp);
ftsenn 1:d182179e7c1b 10
ftsenn 1:d182179e7c1b 11 int rNeeded = 0x0F;
ftsenn 1:d182179e7c1b 12 //options: 0001 1110 (0x1E), 0001 1101 (0x1D), 0001 1011 (0x1B), 0001 0111 (0x17), 0000 1111 (0x0F)
ftsenn 1:d182179e7c1b 13
ftsenn 1:d182179e7c1b 14 int cNeeded = 0xFE;
ftsenn 1:d182179e7c1b 15 //options: 1111 1110 (0xFE), 1111 1101 (0xFD), 1111 1011 (0xFB), 1111 0111 (0xF7),
ftsenn 1:d182179e7c1b 16 // 1110 1111 (0xEF), 1101 1111 (0xDF), 1011 1111 (0xBF), 0111 1111 (0x7F)
ftsenn 1:d182179e7c1b 17
ftsenn 0:5d8ef6969179 18 while(1) {
ftsenn 1:d182179e7c1b 19 //check if it's the correct key
ftsenn 1:d182179e7c1b 20 if ((rKeys == rNeeded) & (cKeys == cNeeded)) {
ftsenn 1:d182179e7c1b 21 //get next note
ftsenn 1:d182179e7c1b 22
ftsenn 1:d182179e7c1b 23 //modify uLCD
ftsenn 1:d182179e7c1b 24
ftsenn 1:d182179e7c1b 25 //turn on correct LED
ftsenn 1:d182179e7c1b 26 }
ftsenn 0:5d8ef6969179 27 }
ftsenn 0:5d8ef6969179 28 }