久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2592|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32溫濕度監(jiān)測程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:669804 發(fā)表于 2019-12-25 16:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. /**
  2.   ******************************************************************************
  3.   * @file    main.c
  4.   * @author  Supowang  any question please send mail to 512965803@qq.com
  5.   * @version V1.0
  6.   * @date    2016-12-07
  7.   * @brief   Huawei LiteOS第三方開發(fā)板移植DEMO
  8.   ******************************************************************************
  9.   *       
  10.         * 本例程僅供學(xué)習(xí)參考,Huawei LiteOS和所有驅(qū)動代碼版權(quán)由原作者享有。
  11.   ******************************************************************************
  12.   */
  13. /* Includes ------------------------------------------------------------------*/
  14. // Huawei LiteOS頭文件
  15. #include "stdio.h"
  16. #include "stdlib.h"
  17. #include "string.h"
  18. #include "los_base.h"
  19. #include "los_config.h"
  20. #include "los_typedef.h"
  21. #include "los_hwi.h"
  22. #include "los_task.ph"
  23. #include "los_sem.h"
  24. #include "los_event.h"
  25. #include "los_memory.h"
  26. #include "los_queue.ph"
  27. // STM32硬件相關(guān)頭文件
  28. #include "stm32f10x.h"
  29. #include "bsp_led.h"
  30. #include "bsp_usart.h"
  31. #include "bsp_lcd.h"
  32. #include "bsp_dht11.h"
  33. void Delay(__IO u32 nCount);
  34. #define SOFT_DELAY Delay(0x0FFFFF);
  35. UINT32 g_TestTskHandle;
  36. DHT11_Data_TypeDef  DHT11_Data;
  37. void Delay(__IO uint32_t nCount) //簡單延時
  38. {
  39.         for(; nCount != 0; nCount--);
  40. }
  41. void hardware_init(void)
  42. {
  43.                 LED_GPIO_Config();
  44.                 USART_Config();
  45.                 DHT11_Init();
  46.                 LCD_Init ();  
  47.                 ILI9341_GramScan ( 1 );
  48.                 ILI9341_Clear ( 0, 0, 240, 320, macWHITE);
  49.                 ILI9341_DispString_EN ( 0, 10, "  Welcome to Huawei LiteOS!", macWHITE, macRED );
  50.                 ILI9341_DispString_EN ( 10, 40, "Task1 Running Count is: ", macWHITE, macBLUE );
  51.                 ILI9341_DispString_EN ( 10, 60, "Task2 Running Count is: ", macWHITE, macBLUE );
  52.                 ILI9341_DispString_EN ( 45, 90, "Task3: DHT11 DEMO ", macWHITE, macBLUE );
  53.                 ILI9341_DispString_EN ( 30, 110, "Temperature is:", macWHITE, macBLACK );
  54.                 ILI9341_DispString_EN ( 30, 130, "Humidity is:", macWHITE, macBLACK );
  55. }
  56. VOID task1(void)
  57. {
  58.         UINT32 uwRet = LOS_OK;
  59.         UINT32 count=0;
  60.         char str[10];
  61.         while(1)
  62.         {
  63.                 count++;
  64.                 sprintf(str,"%d",count);
  65.                 ILI9341_DispString_EN ( 200, 40, str, macWHITE, macRED );
  66.                 printf("This is task 1,count is %d\r\n",count);
  67.                 LED1_TOGGLE;
  68.                 LED2_TOGGLE;
  69.                 uwRet = LOS_TaskDelay(1000);
  70.                 if(uwRet !=LOS_OK)
  71.                         return;
  72.         }
  73. }
  74. UINT32 creat_task1(void)
  75. {
  76.         UINT32 uwRet = LOS_OK;
  77.         TSK_INIT_PARAM_S task_init_param;
  78.         task_init_param.usTaskPrio = 1;
  79.         task_init_param.pcName = "task1";
  80.         task_init_param.pfnTaskEntry = (TSK_ENTRY_FUNC)task1;
  81.         task_init_param.uwStackSize = LOSCFG_BASE_CORE_TSK_DEFAULT_STACK_SIZE;
  82.         task_init_param.uwResved = LOS_TASK_STATUS_DETACHED;
  83.         uwRet = LOS_TaskCreate(&g_TestTskHandle,&task_init_param);
  84.         if(uwRet !=LOS_OK)
  85.         {
  86.                 return uwRet;
  87.         }
  88.         return uwRet;
  89. }

  90. VOID task2(void)
  91. {
  92.         UINT32 uwRet = LOS_OK;
  93.         UINT32 count=0;
  94.         char str[10];
  95.         while(1)
  96.         {
  97.                 count++;
  98.                 sprintf(str,"%d",count);
  99.                 ILI9341_DispString_EN ( 200, 60, str, macWHITE, macRED );
  100.                 printf("This is task 2,count is %d\r\n",count);
  101.                 LED2_TOGGLE;
  102.                 LED3_TOGGLE;
  103.                 uwRet = LOS_TaskDelay(2000);
  104.                 if(uwRet !=LOS_OK)
  105.                         return;
  106.         }
  107. }

  108. UINT32 creat_task2(void)
  109. {
  110.         UINT32 uwRet = LOS_OK;
  111.         TSK_INIT_PARAM_S task_init_param;
  112.         task_init_param.usTaskPrio = 1;
  113.         task_init_param.pcName = "task2";
  114.         task_init_param.pfnTaskEntry = (TSK_ENTRY_FUNC)task2;
  115.         task_init_param.uwStackSize = LOSCFG_BASE_CORE_TSK_DEFAULT_STACK_SIZE;
  116.         task_init_param.uwResved = LOS_TASK_STATUS_DETACHED;
  117.         uwRet = LOS_TaskCreate(&g_TestTskHandle,&task_init_param);
  118.         if(uwRet !=LOS_OK)
  119.         {
  120.                 return uwRet;
  121.         }
  122.         return uwRet;
  123. }


  124. VOID DHT11_task(void)
  125. {
  126.         UINT32 uwRet = LOS_OK;
  127.         char cStr1[10];
  128.         char cStr2[10];
  129.         while(1)
  130.         {
  131.                 if(DHT11_Read_TempAndHumidity(&DHT11_Data)==SUCCESS)
  132.                 {
  133.                         sprintf(cStr1,"%d.%d C",DHT11_Data.temp_int,DHT11_Data.temp_deci);
  134.                         sprintf(cStr2,"%d.%d %%RH",DHT11_Data.humi_int,DHT11_Data.humi_deci);
  135.                         ILI9341_DispString_EN ( 160, 110, cStr1, macWHITE, macRED );
  136.                         ILI9341_DispString_EN ( 140, 130, cStr2, macWHITE, macRED );
  137.                         printf("\r\n ??DHT11??,???%d.%d C,??? %d.%d %%RH",\
  138.                         DHT11_Data.temp_int,DHT11_Data.temp_deci,DHT11_Data.humi_int,DHT11_Data.humi_deci);
  139.                 }
  140.                 else
  141.                 {
  142.                         printf("DHT11 ERROR!\r\n");
  143.                 }
  144.                 uwRet = LOS_TaskDelay(2000);
  145.                 if(uwRet !=LOS_OK)
  146.                         return;
  147.         }
  148. }

  149. UINT32 creat_DHT11_task(void)
  150. {
  151.         UINT32 uwRet = LOS_OK;
  152.         TSK_INIT_PARAM_S task_init_param;
  153.         task_init_param.usTaskPrio = 0;
  154.         task_init_param.pcName = "DHT11_task";
  155.         task_init_param.pfnTaskEntry = (TSK_ENTRY_FUNC)DHT11_task;
  156.         task_init_param.uwStackSize = LOSCFG_BASE_CORE_TSK_DEFAULT_STACK_SIZE;
  157.         task_init_param.uwResved = LOS_TASK_STATUS_DETACHED;
  158.         uwRet = LOS_TaskCreate(&g_TestTskHandle,&task_init_param);
  159.         if(uwRet !=LOS_OK)
  160.         {
  161.                 return uwRet;
  162.         }
  163.         return uwRet;
  164. }

  165. UINT32 osAppInit(void)
  166. {
  167.         UINT32 uwRet = 0;
  168.         hardware_init();
  169.         LED1_ON;
  170.         SOFT_DELAY;
  171.         uwRet = creat_task1();
  172.         if(uwRet !=LOS_OK)
  173.         {
  174.                 return uwRet;
  175.         }
  176.         uwRet = creat_task2();
  177.         if(uwRet !=LOS_OK)
  178.         {
  179.                 return uwRet;
  180.         }
  181.         uwRet = creat_DHT11_task();
  182.         if(uwRet !=LOS_OK)
  183.         {
  184.                 return uwRet;
  185.         }
  186.         return LOS_OK;
  187. }
  188. /*********************************************END OF FILE**********************/
復(fù)制代碼


溫濕度檢測.7z

257.04 KB, 下載次數(shù): 23, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 黄a在线观看| 国产免费一区二区 | 国产资源一区二区三区 | 欧美综合一区二区 | 在线三级网址 | 99婷婷 | 成人欧美一区二区三区黑人孕妇 | 日韩喷潮 | 9999久久 | 中文字幕爱爱视频 | 午夜精品久久久 | 久草新在线 | 一区二区在线视频 | 欧美日韩国产在线 | 国产精品久久久久9999鸭 | avhd101在线成人播放 | 国产在线观看一区二区三区 | 夜久久 | 亚洲成人国产精品 | 亚洲毛片 | 免费国产视频 | 亚洲日本欧美日韩高观看 | av一区二区三区四区 | 亚洲高清一区二区三区 | 精品一区二区三区日本 | 在线91| www操操 | 欧美成人免费在线 | 亚洲欧美成人影院 | 极品销魂美女一区二区 | 波多野吉衣久久 | 久久国产欧美日韩精品 | 中文字幕av在线一二三区 | 日韩精品| 一区二区三区在线播放 | 国产精品国产精品国产专区不片 | 亚洲一区二区三区在线观看免费 | 亚洲 一区 | 91在线精品播放 | 黄网站在线播放 | 日本精品一区二区三区视频 |