/*${components::aoGrinder::SM::grinding} ...................................*/ static QState aoGrinder_grinding(aoGrinder * const me) { QState status_; switch (Q_SIG(me)) { /* ${components::aoGrinder::SM::grinding} */ case Q_ENTRY_SIG: { BSP_println("Start grinding."); BSP_ledOn(); QActive_postISR((QActive *)&AO_Scale, SCALE_START_SIG, 0); QActive_postISR((QActive *)&AO_Display, DISPLAY_WEIGHT_SIG, 0); status_ = Q_HANDLED(); break; } /* ${components::aoGrinder::SM::grinding} */ case Q_EXIT_SIG: { BSP_println("Stop grinding."); BSP_ledOff(); status_ = Q_HANDLED(); break; } /* ${components::aoGrinder::SM::grinding::THRESHOLD_REACHED} */ case THRESHOLD_REACHED_SIG: { status_ = Q_TRAN(&aoGrinder_settling); break; } default: { status_ = Q_SUPER(&QHsm_top); break; } } return status_; }
/*${AOs::Blink::SM::ON} ....................................................*/ static QState Blink_ON(Blink * const me) { QState status_; switch (Q_SIG(me)) { /* ${AOs::Blink::SM::ON} */ case Q_ENTRY_SIG: { BSP_ledOn(); QActive_arm((QActive *)me, BLINK_TOUT); status_ = Q_HANDLED(); break; } /* ${AOs::Blink::SM::ON} */ case Q_EXIT_SIG: { QActive_disarm((QActive *)me); status_ = Q_HANDLED(); break; } /* ${AOs::Blink::SM::ON::Q_TIMEOUT} */ case Q_TIMEOUT_SIG: { status_ = Q_TRAN(&Blink_OFF); break; } default: { status_ = Q_SUPER(&QHsm_top); break; } } return status_; }
/*${AOs::Blinky::SM::on} ...................................................*/ static QState Blinky_on(Blinky * const me) { QState status_; switch (Q_SIG(me)) { /*${AOs::Blinky::SM::on} */ case Q_ENTRY_SIG: { BSP_ledOn(); status_ = Q_HANDLED(); break; } /*${AOs::Blinky::SM::on::Q_TIMEOUT} */ case Q_TIMEOUT_SIG: { status_ = Q_TRAN(&Blinky_off); break; } default: { status_ = Q_SUPER(&QHsm_top); break; } } return status_; }
/* @(/1/0/1/2) .............................................................*/ static QState Blinky_on(Blinky * const me, QEvt const * const e) { QState status_; switch (e->sig) { /* @(/1/0/1/2) */ case Q_ENTRY_SIG: { BSP_ledOn(); status_ = Q_HANDLED(); break; } /* @(/1/0/1/2/0) */ case TIMEOUT_SIG: { status_ = Q_TRAN(&Blinky_off); break; } default: { status_ = Q_SUPER(&QHsm_top); break; } } return status_; }
/* @(/1/0/0/2) .............................................................*/ static QState Blinky_on(Blinky * const me) { QState status_; switch (Q_SIG(me)) { /* @(/1/0/0/2) */ case Q_ENTRY_SIG: { QActive_arm((QActive *)me, BSP_TICKS_PER_SEC/2); /* 1/2 sec */ BSP_ledOn(); status_ = Q_HANDLED(); break; } /* @(/1/0/0/2/0) */ case Q_TIMEOUT_SIG: { status_ = Q_TRAN(&Blinky_off); break; } default: { status_ = Q_SUPER(&QHsm_top); break; } } return status_; }