/........................................................................../
QState Blinky_idle(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOff();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_off);
break;
}
default: {
status = Q_SUPER(&QHsm_top);
break;
}
}
return status;
}
/........................................................................../
QState Blinky_off(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOff();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_idle);
break;
}
case TIMEOUT_SIG: {
status = Q_TRAN(&Blinky_on);
break;
}
default: {
status = Q_SUPER(&Blinky_idle);
break;
}
}
return status;
}
/........................................................................../
QState Blinky_on(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOn();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_idle);
break;
}
case TIMEOUT_SIG: {
status = Q_TRAN(&Blinky_off);
break;
}
default: {
status = Q_SUPER(&Blinky_idle);
break;
}
}
return status;
}
/........................................................................../
QState Blinky_idle(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOff();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_off);
break;
}
default: {
status = Q_SUPER(&QHsm_top);
break;
}
}
return status;
}
/........................................................................../
QState Blinky_off(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOff();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_idle);
break;
}
case TIMEOUT_SIG: {
status = Q_TRAN(&Blinky_on);
break;
}
default: {
status = Q_SUPER(&Blinky_idle);
break;
}
}
return status;
}
/........................................................................../
QState Blinky_on(Blinky * const me, QEvt const * const e) {
QState status;
switch (e->sig) {
case Q_ENTRY_SIG: {
BSP_ledOn();
status = Q_HANDLED();
break;
}
case KEY_POWER_SIG: {
status = Q_TRAN(&Blinky_idle);
break;
}
case TIMEOUT_SIG: {
status = Q_TRAN(&Blinky_off);
break;
}
default: {
status = Q_SUPER(&Blinky_idle);
break;
}
}
return status;
}