66 lines
901 B
C
66 lines
901 B
C
![]() |
#ifndef _LED_H
|
||
|
#define _LED_H
|
||
|
|
||
|
#include "stdafx.h"
|
||
|
|
||
|
class Led : public IO_Module
|
||
|
{
|
||
|
public:
|
||
|
Led()
|
||
|
{
|
||
|
this->enabled = false;
|
||
|
this->parent = NULL;
|
||
|
this->moduleId = 0;
|
||
|
this->hardwarePort = NULL;
|
||
|
this->pinPower = 0;
|
||
|
}
|
||
|
|
||
|
Led(uint32 ledId)
|
||
|
{
|
||
|
this->enabled = false;
|
||
|
this->parent = NULL;
|
||
|
this->moduleId = ledId;
|
||
|
|
||
|
switch(ledId)
|
||
|
{
|
||
|
case IO_LED_MAIN:
|
||
|
this->hardwarePort = &PORTB;
|
||
|
this->pinPower = (1 << 1);
|
||
|
break;
|
||
|
default:
|
||
|
this->hardwarePort = NULL;
|
||
|
this->pinPower = 0;
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
protected:
|
||
|
bool enabled;
|
||
|
|
||
|
//Hardware
|
||
|
volatile uint8* hardwarePort;
|
||
|
uint8 pinPower;
|
||
|
|
||
|
public:
|
||
|
bool GetEnabled()
|
||
|
{
|
||
|
return enabled;
|
||
|
}
|
||
|
|
||
|
void SetEnabled(bool newStatus)
|
||
|
{
|
||
|
enabled = newStatus;
|
||
|
|
||
|
if(enabled)
|
||
|
{
|
||
|
*hardwarePort &= ~pinPower;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
*hardwarePort |= pinPower;
|
||
|
}
|
||
|
}
|
||
|
};
|
||
|
|
||
|
#endif
|