20190816
Dependencies: LCD_DISCO_F429ZI TS_DISCO_F429ZI BSP_DISCO_F429ZI
main.cpp
- Committer:
- VASKO
- Date:
- 2019-08-16
- Revision:
- 0:81007dc65bac
File content as of revision 0:81007dc65bac:
#include "PrjDefs.h" int main() { MsgType _msg; RxMsgThrd.start(RxMsgThrdFunc); RxMsgThrd.set_priority(osPriorityHigh); TouchScreenThrd.start(TouchScreenThrdFunc); TouchScreenThrd.set_priority(osPriorityAboveNormal); InitLCDandTS(); InitRects(); while(1){ osEvent evt = MsgMail.get(0); if (evt.status == osEventMail) { MsgType *mail = (MsgType*)evt.value.p; switch ( mail->cmd ){ case Cmd_cT:{ float _f = mail->pars.f[0]; // sprintf((char*)TempR_Rect.s, "T= 3.1fC"); sprintf((char*)TempR_Rect.s, "Tcr=%3.0fC", mail->pars.f[0]); // if( _f >= 100) sprintf((char*)TempR_Rect.s, "T=%3.1fC", cT); // else sprintf((char*)TempR_Rect.s, "T= %2.1fC", cT); R_T(&TempR_Rect); break;} case cT_Selected:{ float _f = mail->pars.f[0]; sprintf((char*)TempR_Rect.s, "Tcr=%3.0fC", mail->pars.f[0]); // if( _f >= 100) sprintf((char*)TempR_Rect.s, "T=%3.1fC", _f); // else sprintf((char*)TempR_Rect.s, "T= %2.1fC", _f); TempR_Rect.cr = DefaultRectColor; TempR_Rect.ct = DefaultTextColor; R_T(&TempR_Rect); break;}//cT_Selected case dT_Selected:{ float _f = mail->pars.f[0]; if(_f < 0) _f = -_f; if(_f>=100) sprintf((char*)TempR_Rect.s, "dT=%+3.f", mail->pars.f[0]); else if(_f>=10) sprintf((char*)TempR_Rect.s, "dT=%+2.1f", mail->pars.f[0]); else sprintf((char*)TempR_Rect.s, "dT=%+1.2f", mail->pars.f[0]); TempR_Rect.cr = LCD_COLOR_LIGHTBLUE; TempR_Rect.ct = ChangingTextColor; R_T(&TempR_Rect); break;}//dT_Selected case CmdStart:{ if(mail->pars.ui8[0])Start_Rect.cr = LCD_COLOR_RED; else Start_Rect.cr = LCD_COLOR_GREEN; R_T(&Start_Rect); break;} case CmdPWM:{ sprintf((char*)dTdt_Rect.s, "P=%1.3f", mail->pars.f[0]); R_T(&dTdt_Rect); break;} case KP_Changing:{ sprintf((char*)Extra_Rect.s, "KP=%1.3f", mail->pars.f[0]); Extra_Rect.cr = ChangingRectColor; Extra_Rect.ct = ChangingTextColor; R_T(&Extra_Rect); break;}//case KP_Changing case KI_Changing:{ sprintf((char*)Extra_Rect.s, "KI=%1.3f", mail->pars.f[0]); Extra_Rect.cr = ChangingRectColor; Extra_Rect.ct = ChangingTextColor; R_T(&Extra_Rect); break;}//case KI_Changing case KD_Changing:{ sprintf((char*)Extra_Rect.s, "KD=%1.3f", mail->pars.f[0]); Extra_Rect.cr = ChangingRectColor; Extra_Rect.ct = ChangingTextColor; R_T(&Extra_Rect); break;}//case KD_Changing case PWM_Changing:{ sprintf((char*)Extra_Rect.s, "PL=%1.3f", mail->pars.f[0]); Extra_Rect.cr = ChangingRectColor; Extra_Rect.ct = ChangingTextColor; R_T(&Extra_Rect); break;}//case PWM_Changing case KP_Selected:{ sprintf((char*)Extra_Rect.s, "KP=%1.3f", mail->pars.f[0]); Extra_Rect.cr = DefaultRectColor; Extra_Rect.ct = DefaultTextColor; R_T(&Extra_Rect); break;}//case KP_Selected case KI_Selected:{ sprintf((char*)Extra_Rect.s, "KI=%1.3f", mail->pars.f[0]); Extra_Rect.cr = DefaultRectColor; Extra_Rect.ct = DefaultTextColor; R_T(&Extra_Rect); break;}//case KI_Selected case KD_Selected:{ sprintf((char*)Extra_Rect.s, "KD=%1.3f", mail->pars.f[0]); Extra_Rect.cr = DefaultRectColor; Extra_Rect.ct = DefaultTextColor; R_T(&Extra_Rect); break;}//case KD_Selected case PWM_Selected:{ sprintf((char*)Extra_Rect.s, "PL=%1.3f", mail->pars.f[0]); Extra_Rect.cr = DefaultRectColor; Extra_Rect.ct = DefaultTextColor; R_T(&Extra_Rect); break;}//case PWM_Selected case TempS_Changing:{ TempS_Rect.cr = ChangingRectColor; TempS_Rect.ct = ChangingTextColor; sprintf((char*)TempS_Rect.s, "Ttg=%3.0fC", mail->pars.f[0]); R_T(&TempS_Rect); break;}//case TempS_Changing case TempS_Selected:{ TempS_Rect.cr = DefaultRectColor; TempS_Rect.ct = DefaultTextColor; sprintf((char*)TempS_Rect.s, "Ttg=%3.0fC", mail->pars.f[0]); R_T(&TempS_Rect); break;}//case TempS_Selected case dTdt_Changing:{ dTdt_Rect.cr = ChangingRectColor; dTdt_Rect.ct = ChangingTextColor; sprintf((char*)dTdt_Rect.s, "dTdt%1.2f", dTdt); R_T(&dTdt_Rect); break;}//dTdt_Changing case dTdt_Selected:{ dTdt_Rect.cr = DefaultRectColor; dTdt_Rect.ct = DefaultTextColor; sprintf((char*)dTdt_Rect.s, "dTdt%1.2f", dTdt); R_T(&dTdt_Rect); break;}//dTdt_Selected default: break; }//switch MsgMail.free(mail); }//if (evt.status == osEventMail) // ThisThread::sleep_for(1); }//while(1) }//main /* DigitalOut xx(PG_13);//зеленый светодиод LD3 DISCO lcd.FillTriangle(45,45,80,142,177,157); */