嵌入式学习小组
直播中

蔡晨史

8年用户 160经验值
私信 关注

如何更新指定的TEXT窗口显示DHT11温湿度?

求教怎样编写自定义emWin 中断系统消息来更新窗口显示DHT11温湿度

回帖(6)

杨秀兰

2019-10-11 07:37:43
创建窗口后使用WM_CreateTimer()创建窗口定时器,在回调函数中响应WM_TIMER事件,响应后注意使用WM_RestartTimer()重启定时器。
举报

石利军

2019-10-11 07:55:14
  像我这样写   怎么显示不出来    ??
case WM_TIMER:
   if(t%50==0)//每100ms读取一次
  {           
   DHT11_Read_Data(&temperature,&humidity);  //读取温湿度值  
     GUIA1_hWin = WM_GetDialogItem(pMsg->hWin, ID_TEXT_4);/* 获取text句柄 */   
  sprintf(bufferac,"%02d温度 %02d湿度",temperature,humidity);/* 转换成字符串 */   
   TEXT_SetText(ID_TEXT_4,bufferac);/* 输出温湿度值 */  
  }        
   WM_RestartTimer(pMsg->Data.v, 250);
   break;
void MainTask(void) {
  GUIA1_hWin = GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);
hTa = WM_CreateTimer(WM_GetClientWindow(GUIA1_hWin), 0, 100, 0);
while (1)
{  
GUI_Delay(500);
  }
}
1 举报

潘佼佼

2019-10-11 08:08:15
确定是否响应WM_TIMER事件了吗?另外变量t是怎么处理的?
举报

姚秋月

2019-10-11 08:15:44
请问一下,这个问题你解决了吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分