⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 app_ird1s.c

📁 嵌入式的tcpip协议栈
💻 C
字号:
#include <includes.h>

extern CPU_INT08U DateTimeOption; 
extern CPU_INT08U TempMetricType;
extern CPU_INT08U TempInputType;
extern CPU_INT08U DisableMainMenu;
extern OS_EVENT   *DispUpdadteSem;  

extern void  NetNIC_Link_Handler (void);

    CPU_INT32U  ret;
    CPU_INT16U  sec;
    CPU_INT16U  min;
    CPU_INT16U  hour;
    CPU_INT16U  day;
    CPU_INT16U  month;
    CPU_INT16U  year;

    CPU_INT32U  ctime0;
    CPU_INT32U  ctime1;
    


/*********************************************************************************************************
*                                             DispRefresh()
*
* Description : Writes to the VFD the first three rows.
*
* Argument(s) : none.
*
* Return(s)   : none.
*********************************************************************************************************
*/    
void DispRefresh (void)
{
    CPU_INT08S   temp_int;
    CPU_INT08U   temp_dec;
    CPU_INT16U   temp_dec_16;
    CPU_INT08U   tempbuf[30];
    FP32 TempF,TempC;
     
    ctime0 = CTIME0;
    ctime1 = CTIME1;

    sec     = ((ctime0      ) & 0x003F);
    min     = ((ctime0 >>  8) & 0x003F);
    hour    = ((ctime0 >> 16) & 0x001F);
    day     = ((ctime1      ) & 0x001F);
    month   = ((ctime1 >>  8) & 0x000F);
    year    = ((ctime1 >> 16) & 0x0FFF);

    ret     = sec / 2 + (min   << 5) + (hour  << 11);
    ret    |= (day + (month << 5) + (year  <<  9)) << 16;
   
    DispStr(0,0,"NXP Semiconductors");
    DispStr(2,0,"INDUSTRIAL PLATFORM");
    
    if(TempInputType == 0){
      Temperature_Reading(&temp_int,&temp_dec,INTERNAL);
    }else{
      Temperature_Reading(&temp_int,&temp_dec,EXTERNAL);
    }
    if(DateTimeOption == 0){
      sprintf((char *)tempbuf,"%02d-%02d-%04d",month,day,year);
    }else{
      sprintf((char *)tempbuf,"%02d:%02d:%02d  ",hour,min,sec);
    }
    if(TempMetricType == 0){
      TempC = temp_int + (temp_dec * .125) ;
      TempF = 1.8 * TempC + 32;
      sprintf((char *)tempbuf+10," %+4.01f%cF ",TempF,248);
      DispStr(1,0,tempbuf);
    }else{
      temp_dec_16 = ((temp_dec * 250) /2)/100 ;
      sprintf((char *)tempbuf+10," %+3d.%d%cC ",temp_int,temp_dec_16,248);
      DispStr(1,0,tempbuf);
    }
  
   


}


/*********************************************************************************************************
*                                             AppIRD1s()
*
* Description : This task is called every second.
*
* Argument(s) : none.
*
* Return(s)   : none.
*********************************************************************************************************
*/
void AppIRD1s(void *p_arg)
{ 
    (void)p_arg;
    CPU_INT08U   err;
    DispStr(3,0,IRD_SOFTWARE);
   
    while (DEF_TRUE) { 
      NetNIC_Link_Handler();
      OSSemPend(DispUpdadteSem, 0, &err);            /* Obtain exclusive access to the display                  */
      if(DisableMainMenu ==0){
          DispRefresh();
      }
      OSSemPost(DispUpdadteSem);            /* Obtain exclusive access to the display                  */
      PiezoDurationHandler();
      OSTimeDlyHMSM(0, 0, 1, 0);
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -