JGtoJR
Dependencies: MODSERIAL Watchdog
PC.h
00001 #ifndef _PC_H_ 00002 #define _PC_H_ 00003 00004 #include "mbed.h" 00005 #include "MODSERIAL.h" 00006 #include "GV.h" 00007 00008 #define PCTxBufferSize 250 00009 #define PCRxBufferSize 250 00010 #define PCMaxMailElements 10 00011 #define PCBaudRateDef 115200 00012 #define PCWaitByte_us (10000000/PCBaudRateDef) 00013 #define PCWaitMess_us PCWaitByte_us*10 00014 00015 #define Rate 1 00016 00017 extern "C" void mbed_reset(); 00018 00019 class PC : public MODSERIAL 00020 { 00021 00022 public: 00023 00024 00025 PC(GV * _pac, PinName _led, PinName tx, PinName rx); 00026 PC(GV * _pac, PinName _led, PinName tx, PinName rx, void (*iEventHandler)(int, char *)); 00027 ~PC(); 00028 00029 void LoadMail(char comm, char *mess); //para cargar mensajes de trabajo al proceso paralelo ComPC_thread_proc 00030 00031 void start(void); 00032 00033 bool LOG; 00034 bool SendStatus; 00035 int mode; 00036 00037 enum MyEventsLCD {eLOG}; 00038 00039 private: 00040 00041 GV *pgv; 00042 00043 void (*iEvent)(int, char *); 00044 00045 DigitalOut *led; 00046 char messageBufferIncoming[PCRxBufferSize]; 00047 char messageBufferOutgoing[PCTxBufferSize]; 00048 00049 Thread thread; 00050 00051 typedef struct { 00052 char command; /* command to execute */ 00053 char message[PCTxBufferSize]; /* arguments */ 00054 } mail_t; 00055 00056 Mail<mail_t, PCMaxMailElements> mails; 00057 int MailNum; 00058 00059 void TLogSTR(char *Tstr); 00060 int Com_Write(char *mess); //sólo para usarse en ComPC_thread_proc 00061 void messageFrom(MODSERIAL_IRQ_INFO *q); 00062 void Paralell_thread(); 00063 00064 Ticker TStatusToPC; 00065 void StatusToPC(void); 00066 }; 00067 00068 #endif /* _PC_H_ */ 00069 00070 00071
Generated on Wed Jul 13 2022 02:13:23 by 1.7.2