Alberto Terrazas / Mbed 2 deprecated Lupe

Dependencies:   mbed

Committer:
papaco
Date:
Mon Feb 11 15:28:07 2019 +0000
Revision:
0:b47aaa131075
Child:
1:4fb1de70cd4d
lad

Who changed what in which revision?

UserRevisionLine numberNew contents of line
papaco 0:b47aaa131075 1 #include "mbed.h"
papaco 0:b47aaa131075 2 #include "INTERFACE.h"
papaco 0:b47aaa131075 3
papaco 0:b47aaa131075 4 INTERFACE::INTERFACE(PinName Button,PinName Red,PinName Green,PinName Blue,PinName TortillaPin,PinName TempReady):
papaco 0:b47aaa131075 5 Start(Button,PullUp),
papaco 0:b47aaa131075 6 StartRED(Red,0),
papaco 0:b47aaa131075 7 StartGREEN(Green,0),
papaco 0:b47aaa131075 8 StartBLUE(Blue,0),
papaco 0:b47aaa131075 9 Tortilla(TortillaPin),
papaco 0:b47aaa131075 10 TempLED(TempReady,0),
papaco 0:b47aaa131075 11 NXP_LED1(LED1,0),
papaco 0:b47aaa131075 12 NXP_LED2(LED2,0),
papaco 0:b47aaa131075 13 NXP_LED3(LED3,0),
papaco 0:b47aaa131075 14 NXP_LED4(LED4,0){
papaco 0:b47aaa131075 15 //Led Memory
papaco 0:b47aaa131075 16 redState=0;
papaco 0:b47aaa131075 17 greenState=0;
papaco 0:b47aaa131075 18 blueState=0;
papaco 0:b47aaa131075 19 //Flasher control
papaco 0:b47aaa131075 20 FlashTimer=0;
papaco 0:b47aaa131075 21 Flash=true;
papaco 0:b47aaa131075 22 StartLatch=Start.read();
papaco 0:b47aaa131075 23 //Start Button
papaco 0:b47aaa131075 24 StartTimer=0;
papaco 0:b47aaa131075 25 return;
papaco 0:b47aaa131075 26 }//Constructor
papaco 0:b47aaa131075 27
papaco 0:b47aaa131075 28 void INTERFACE::Init(){
papaco 0:b47aaa131075 29 setLED(1,1,0);
papaco 0:b47aaa131075 30 TempLED=0;
papaco 0:b47aaa131075 31 FlashTimer=0;
papaco 0:b47aaa131075 32 Flash=true;
papaco 0:b47aaa131075 33 return;
papaco 0:b47aaa131075 34 }//Init
papaco 0:b47aaa131075 35
papaco 0:b47aaa131075 36 void INTERFACE::Home(){
papaco 0:b47aaa131075 37 setLED(1,1,0);
papaco 0:b47aaa131075 38 TempLED=0;
papaco 0:b47aaa131075 39 FlashTimer=0;
papaco 0:b47aaa131075 40 Flash=true;
papaco 0:b47aaa131075 41 return;
papaco 0:b47aaa131075 42 }//Home
papaco 0:b47aaa131075 43
papaco 0:b47aaa131075 44 bool INTERFACE::getStart(void){
papaco 0:b47aaa131075 45 if(StartLatch!=Start.read())
papaco 0:b47aaa131075 46 return true;
papaco 0:b47aaa131075 47 else
papaco 0:b47aaa131075 48 return false;
papaco 0:b47aaa131075 49 }//getStart
papaco 0:b47aaa131075 50
papaco 0:b47aaa131075 51 int INTERFACE::getFlashTimer(){
papaco 0:b47aaa131075 52 return FlashTimer;
papaco 0:b47aaa131075 53 }//getTimer
papaco 0:b47aaa131075 54
papaco 0:b47aaa131075 55 void INTERFACE::setFlashTimer(int t){
papaco 0:b47aaa131075 56 FlashTimer=t;
papaco 0:b47aaa131075 57 return;
papaco 0:b47aaa131075 58 }//setTimer
papaco 0:b47aaa131075 59
papaco 0:b47aaa131075 60 bool INTERFACE::getFlash(void){
papaco 0:b47aaa131075 61 return Flash;
papaco 0:b47aaa131075 62 }//getFlash
papaco 0:b47aaa131075 63
papaco 0:b47aaa131075 64 void INTERFACE::setFlash(bool state){
papaco 0:b47aaa131075 65 Flash=state;
papaco 0:b47aaa131075 66 FlashTimer=0;
papaco 0:b47aaa131075 67 return;
papaco 0:b47aaa131075 68 }//setFlash
papaco 0:b47aaa131075 69
papaco 0:b47aaa131075 70 void INTERFACE::setLED(int r,int g,int b){
papaco 0:b47aaa131075 71 StartRED=0;
papaco 0:b47aaa131075 72 StartGREEN=0;
papaco 0:b47aaa131075 73 StartBLUE=0;
papaco 0:b47aaa131075 74 if(r>0)
papaco 0:b47aaa131075 75 StartRED=1;
papaco 0:b47aaa131075 76 if(g>0)
papaco 0:b47aaa131075 77 StartGREEN=1;
papaco 0:b47aaa131075 78 if(b>0)
papaco 0:b47aaa131075 79 StartBLUE=1;
papaco 0:b47aaa131075 80 redState=StartRED;
papaco 0:b47aaa131075 81 greenState=StartGREEN;
papaco 0:b47aaa131075 82 blueState=StartBLUE;
papaco 0:b47aaa131075 83 return;
papaco 0:b47aaa131075 84 }//setLED
papaco 0:b47aaa131075 85
papaco 0:b47aaa131075 86 void INTERFACE::flash(){
papaco 0:b47aaa131075 87 if((FlashTimer==FLASH_TIME)&&Flash){
papaco 0:b47aaa131075 88 FlashTimer=0;
papaco 0:b47aaa131075 89 if(redState)
papaco 0:b47aaa131075 90 StartRED=!StartRED;
papaco 0:b47aaa131075 91 if(greenState)
papaco 0:b47aaa131075 92 StartGREEN=!StartGREEN;
papaco 0:b47aaa131075 93 if(blueState)
papaco 0:b47aaa131075 94 StartBLUE=!StartBLUE;
papaco 0:b47aaa131075 95 }else
papaco 0:b47aaa131075 96 FlashTimer++;
papaco 0:b47aaa131075 97 NXP_LED1=StartRED;
papaco 0:b47aaa131075 98 NXP_LED2=StartGREEN;
papaco 0:b47aaa131075 99 NXP_LED3=StartBLUE;
papaco 0:b47aaa131075 100 return;
papaco 0:b47aaa131075 101 }//flash
papaco 0:b47aaa131075 102
papaco 0:b47aaa131075 103 void INTERFACE::check(void){
papaco 0:b47aaa131075 104 flash();
papaco 0:b47aaa131075 105 if(StartTimer<200)
papaco 0:b47aaa131075 106 StartTimer++;
papaco 0:b47aaa131075 107 else{
papaco 0:b47aaa131075 108 StartTimer=0;
papaco 0:b47aaa131075 109 StartLatch=Start.read();
papaco 0:b47aaa131075 110 }//else
papaco 0:b47aaa131075 111 }//check
papaco 0:b47aaa131075 112
papaco 0:b47aaa131075 113 float INTERFACE::getTortilla(){
papaco 0:b47aaa131075 114 return Tortilla.read();
papaco 0:b47aaa131075 115 }//getTimer