34 volatile uint8_t               __esos_comm_tx_buff[ESOS_SERIAL_IN_EP_SIZE];
    35 volatile uint8_t               __esos_comm_rx_buff[ESOS_SERIAL_OUT_EP_SIZE];
    37 volatile struct    stTask    __stChildTaskTx, __stChildTaskRx;
    42 void __esos_InitCommSystem(
void) {
    44   __st_TxBuffer.pau8_Data = &__esos_comm_tx_buff[0];
    45   __st_TxBuffer.u16_Head = 0;
    46   __st_TxBuffer.u16_Tail = 0;
    47   __st_TxBuffer.u16_Length = ESOS_SERIAL_IN_EP_SIZE;
    48   __st_RxBuffer.pau8_Data = __esos_comm_rx_buff;
    49   __st_RxBuffer.u16_Head = 0;
    50   __st_RxBuffer.u16_Tail = 0;
    51   __st_RxBuffer.u16_Length = ESOS_SERIAL_OUT_EP_SIZE;
    53   __esos_hw_InitCommSystem();
    60   u8_c = (u8_x>>4)& 0xf;
    61   if (u8_c > 9) 
return(
'A'+u8_c-10);
    62   else return(
'0'+u8_c);
    69   if (u8_c > 9) 
return(
'A'+u8_c-10);
    70   else return(
'0'+u8_c);
    75   static uint16_t       u16_tmp;
    81   __ESOS_COMM_TXFIFO_PREP();
    84   __ESOS_COMM_WRITE_TXFIFO( u8_TempChar );
    85   __esos_hw_signal_start_tx();
    94   static uint16_t       u16_tmp;
    99   au8_String[2] = __esos_u8_GetMSBHexCharFromUint8(u8_x);
   100   au8_String[3] = __esos_u8_GetLSBHexCharFromUint8(u8_x);
   105     __ESOS_COMM_TXFIFO_PREP();
   107     __ESOS_COMM_WRITE_TXFIFO( au8_String[u8_c++] ); 
   108     __esos_hw_signal_start_tx();
   119   static uint16_t     u16_tmp;
   124     au8_String[u8_digit++] = 
'0' + u8_x / 100;
   126     au8_String[u8_digit++] = 
'0' + (u8_x % 100) / 10;
   127   au8_String[u8_digit++] = 
'0' + (u8_x % 10);
   128   au8_String[u8_digit] = 0;
   130   while (u8_c < u8_digit) {
   131     __ESOS_COMM_TXFIFO_PREP();
   133     __ESOS_COMM_WRITE_TXFIFO( au8_String[u8_c++] ); 
   134     __esos_hw_signal_start_tx();
   142   static uint16_t       u16_tmp;
   147   u8_c = (u32_x >> 24);
   148   au8_String[2] = __esos_u8_GetMSBHexCharFromUint8(u8_c);
   149   au8_String[3] = __esos_u8_GetLSBHexCharFromUint8(u8_c);
   150   u8_c = (u32_x >> 16);
   151   au8_String[4] = __esos_u8_GetMSBHexCharFromUint8(u8_c);
   152   au8_String[5] = __esos_u8_GetLSBHexCharFromUint8(u8_c);
   154   au8_String[6] = __esos_u8_GetMSBHexCharFromUint8(u8_c);
   155   au8_String[7] = __esos_u8_GetLSBHexCharFromUint8(u8_c);
   157   au8_String[8] = __esos_u8_GetMSBHexCharFromUint8(u8_c);
   158   au8_String[9] = __esos_u8_GetLSBHexCharFromUint8(u8_c);
   163     __ESOS_COMM_TXFIFO_PREP();
   165     __ESOS_COMM_WRITE_TXFIFO( au8_String[u8_c++] ); 
   166     __esos_hw_signal_start_tx();
   174   static uint16_t       u16_tmp;
   180   u8_StoreLen = u8_len;
   181   pu8_StorePtr = pu8_out;
   183   while (u8_StoreLen) {
   184     __ESOS_COMM_TXFIFO_PREP();
   186     __ESOS_COMM_WRITE_TXFIFO( pu8_StorePtr[u8_i++] ); 
   187     __esos_hw_signal_start_tx();
   200   u8_LocalSize = u8_size;
   201   pau8_LocalPtr = pau8_buff;
   203   for (u8_i=0; u8_i<u8_size; u8_i++) {
   207     __st_RxBuffer.u16_Tail++;
   208     if (__st_RxBuffer.u16_Tail == ESOS_SERIAL_OUT_EP_SIZE) __st_RxBuffer.u16_Tail=0; 
   210     pau8_buff[u8_i] = __st_RxBuffer.pau8_Data[__st_RxBuffer.u16_Tail];
   220   for (u8_i=0; u8_i<(ESOS_SERIAL_OUT_EP_SIZE-1); u8_i++) {
   224     __st_RxBuffer.u16_Tail++;
   225     if (__st_RxBuffer.u16_Tail == ESOS_SERIAL_OUT_EP_SIZE) __st_RxBuffer.u16_Tail=0; 
   227     pau8_buff[u8_i] = __st_RxBuffer.pau8_Data[__st_RxBuffer.u16_Tail];
   228     if ((pau8_buff[u8_i] == 
'\n') || (pau8_buff[u8_i] == 
'\r') || (pau8_buff[u8_i] == 0)) 
break;
   235   static uint16_t       u16_tmp;
   236   static char*        psz_local;
   240   while ( *psz_local ) {
   241     __ESOS_COMM_TXFIFO_PREP();
   243     __ESOS_COMM_WRITE_TXFIFO( *psz_local++ ); 
   244     __esos_hw_signal_start_tx();
   259 void __esos_unsafe_PutUint8(
uint8_t u8_c) {
   262   __ESOS_COMM_TXFIFO_PREP();
   264   while (u16_tmp == __st_TxBuffer.u16_Tail);
   265   __ESOS_COMM_WRITE_TXFIFO( u8_c );
   266   __esos_hw_signal_start_tx();
   270 void __esos_unsafe_PutString(
char* psz_in) {
   274     __ESOS_COMM_TXFIFO_PREP();
   276     while (u16_tmp == __st_TxBuffer.u16_Tail);
   277     __ESOS_COMM_WRITE_TXFIFO( *psz_in++ );
   278     __esos_hw_signal_start_tx();
   283 uint8_t __esos_unsafe_GetUint8(
void) {
   285   while (__st_RxBuffer.u16_Head == __st_RxBuffer.u16_Tail);
   286   __st_RxBuffer.u16_Tail++;
   287   if (__st_RxBuffer.u16_Tail == ESOS_SERIAL_OUT_EP_SIZE) __st_RxBuffer.u16_Tail=0; 
   288   return __st_RxBuffer.pau8_Data[__st_RxBuffer.u16_Tail];  
 #define ESOS_CHILD_TASK(taskname,...)
#define ESOS_TASK_WAIT_WHILE(cond)
#define ESOS_TASK_BEGIN()
unsigned char uint8_t
An abbreviation for an 8-bit unsigned integer.