Schoolproject, Emulates a QT1070 from a touchberry

Dependencies:   mbed

Committer:
Perijah
Date:
Fri Nov 11 11:57:40 2016 +0000
Revision:
1:f4caacc4df1b
Parent:
0:b7b55b8a4d2b
Correct keysstates

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Perijah 0:b7b55b8a4d2b 1 #include "mbed.h"
Perijah 0:b7b55b8a4d2b 2 #include "QT1070.h"
Perijah 0:b7b55b8a4d2b 3 DigitalIn btnUp(p15); //28
Perijah 0:b7b55b8a4d2b 4 DigitalIn btnRight(p16); //30
Perijah 0:b7b55b8a4d2b 5 DigitalIn btnDown(p12); // 31
Perijah 0:b7b55b8a4d2b 6 DigitalIn btnLeft(p13); // 22
Perijah 0:b7b55b8a4d2b 7 DigitalIn btnCenter(p14); //14
Perijah 0:b7b55b8a4d2b 8 extern "C" void mbed_reset();
Perijah 0:b7b55b8a4d2b 9
Perijah 0:b7b55b8a4d2b 10 namespace QT1070touchemulator
Perijah 0:b7b55b8a4d2b 11 {
Perijah 1:f4caacc4df1b 12 //constructor
Perijah 1:f4caacc4df1b 13 QT1070::QT1070()
Perijah 1:f4caacc4df1b 14 {
Perijah 1:f4caacc4df1b 15 id_firmware = 0x00;
Perijah 1:f4caacc4df1b 16 id_chip = 0x01;
Perijah 1:f4caacc4df1b 17 }
Perijah 1:f4caacc4df1b 18
Perijah 1:f4caacc4df1b 19 char QT1070::getFirmware()
Perijah 1:f4caacc4df1b 20 {
Perijah 1:f4caacc4df1b 21 return id_firmware;
Perijah 1:f4caacc4df1b 22 }
Perijah 1:f4caacc4df1b 23
Perijah 1:f4caacc4df1b 24 char QT1070::getChipID()
Perijah 1:f4caacc4df1b 25 {
Perijah 1:f4caacc4df1b 26 return id_chip;
Perijah 0:b7b55b8a4d2b 27 }
Perijah 1:f4caacc4df1b 28
Perijah 1:f4caacc4df1b 29 int QT1070::getKeystate()
Perijah 1:f4caacc4df1b 30 {
Perijah 1:f4caacc4df1b 31 char createdData = 0x00;
Perijah 1:f4caacc4df1b 32 if (btnDown==1) {
Perijah 1:f4caacc4df1b 33 createdData = createdData | 0x01;
Perijah 1:f4caacc4df1b 34 } else {
Perijah 1:f4caacc4df1b 35 createdData= createdData & ~ 0x01;
Perijah 1:f4caacc4df1b 36 }
Perijah 1:f4caacc4df1b 37
Perijah 1:f4caacc4df1b 38 if (btnUp) {
Perijah 1:f4caacc4df1b 39 createdData = createdData | 0x02;
Perijah 1:f4caacc4df1b 40 } else {
Perijah 1:f4caacc4df1b 41 createdData= createdData & ~ 0x02;
Perijah 1:f4caacc4df1b 42 }
Perijah 1:f4caacc4df1b 43
Perijah 1:f4caacc4df1b 44 if (btnRight) {
Perijah 1:f4caacc4df1b 45 createdData = createdData | 0x04;
Perijah 1:f4caacc4df1b 46 } else {
Perijah 1:f4caacc4df1b 47 createdData= createdData & ~ 0x04;
Perijah 1:f4caacc4df1b 48 }
Perijah 1:f4caacc4df1b 49
Perijah 1:f4caacc4df1b 50 if (btnLeft) {
Perijah 1:f4caacc4df1b 51 createdData = createdData | 0x08;
Perijah 1:f4caacc4df1b 52 } else {
Perijah 1:f4caacc4df1b 53 createdData= createdData & ~ 0x08;
Perijah 1:f4caacc4df1b 54 }
Perijah 1:f4caacc4df1b 55
Perijah 1:f4caacc4df1b 56 if (btnCenter) {
Perijah 1:f4caacc4df1b 57 createdData = createdData | 0x10;
Perijah 1:f4caacc4df1b 58 } else {
Perijah 1:f4caacc4df1b 59 createdData= createdData & ~ 0x10;
Perijah 1:f4caacc4df1b 60 }
Perijah 1:f4caacc4df1b 61
Perijah 1:f4caacc4df1b 62 return createdData;
Perijah 1:f4caacc4df1b 63
Perijah 0:b7b55b8a4d2b 64 }
Perijah 1:f4caacc4df1b 65
Perijah 1:f4caacc4df1b 66 void QT1070::resetMbed()
Perijah 1:f4caacc4df1b 67 {
Perijah 1:f4caacc4df1b 68 mbed_reset();
Perijah 0:b7b55b8a4d2b 69 }
Perijah 0:b7b55b8a4d2b 70
Perijah 0:b7b55b8a4d2b 71 };