Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
INTERFACE/INTERFACE.cpp
- Committer:
- papaco
- Date:
- 2019-02-11
- Revision:
- 0:b47aaa131075
- Child:
- 1:4fb1de70cd4d
File content as of revision 0:b47aaa131075:
#include "mbed.h"
#include "INTERFACE.h"
INTERFACE::INTERFACE(PinName Button,PinName Red,PinName Green,PinName Blue,PinName TortillaPin,PinName TempReady):
Start(Button,PullUp),
StartRED(Red,0),
StartGREEN(Green,0),
StartBLUE(Blue,0),
Tortilla(TortillaPin),
TempLED(TempReady,0),
NXP_LED1(LED1,0),
NXP_LED2(LED2,0),
NXP_LED3(LED3,0),
NXP_LED4(LED4,0){
//Led Memory
redState=0;
greenState=0;
blueState=0;
//Flasher control
FlashTimer=0;
Flash=true;
StartLatch=Start.read();
//Start Button
StartTimer=0;
return;
}//Constructor
void INTERFACE::Init(){
setLED(1,1,0);
TempLED=0;
FlashTimer=0;
Flash=true;
return;
}//Init
void INTERFACE::Home(){
setLED(1,1,0);
TempLED=0;
FlashTimer=0;
Flash=true;
return;
}//Home
bool INTERFACE::getStart(void){
if(StartLatch!=Start.read())
return true;
else
return false;
}//getStart
int INTERFACE::getFlashTimer(){
return FlashTimer;
}//getTimer
void INTERFACE::setFlashTimer(int t){
FlashTimer=t;
return;
}//setTimer
bool INTERFACE::getFlash(void){
return Flash;
}//getFlash
void INTERFACE::setFlash(bool state){
Flash=state;
FlashTimer=0;
return;
}//setFlash
void INTERFACE::setLED(int r,int g,int b){
StartRED=0;
StartGREEN=0;
StartBLUE=0;
if(r>0)
StartRED=1;
if(g>0)
StartGREEN=1;
if(b>0)
StartBLUE=1;
redState=StartRED;
greenState=StartGREEN;
blueState=StartBLUE;
return;
}//setLED
void INTERFACE::flash(){
if((FlashTimer==FLASH_TIME)&&Flash){
FlashTimer=0;
if(redState)
StartRED=!StartRED;
if(greenState)
StartGREEN=!StartGREEN;
if(blueState)
StartBLUE=!StartBLUE;
}else
FlashTimer++;
NXP_LED1=StartRED;
NXP_LED2=StartGREEN;
NXP_LED3=StartBLUE;
return;
}//flash
void INTERFACE::check(void){
flash();
if(StartTimer<200)
StartTimer++;
else{
StartTimer=0;
StartLatch=Start.read();
}//else
}//check
float INTERFACE::getTortilla(){
return Tortilla.read();
}//getTimer