找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2611|回复: 1
打印 上一主题 下一主题
收起左侧

KQ130F电力载波发送DHT11数据的stm32源码

[复制链接]
跳转到指定楼层
楼主
ID:349775 发表于 2018-6-11 20:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
KQ-130F电力载波数据收发模块发送DHT11数据

stm32单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"         
  7. #include "dht11.h"         

  8. void GpuSend(char * buf)
  9.                         { u8 i=0;
  10.                                         while (1)
  11.                                         { if (buf[i]!=0)
  12.                                                 { USART_SendData(USART1, buf[i]); //???? byte ???
  13.                                                         while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET){}; //??????
  14.                                                         i++;
  15.                                                 }
  16.                                         else return;
  17.                                         }
  18.                         }

  19. int main(void)
  20. {         
  21.         u8 t=0;                           
  22.         u8 temperature;              
  23.         u8 humidity;  
  24.   char buff[100];
  25.         char buf[3];
  26.         u8 out[50];        
  27.          int i;
  28.            

  29.         delay_init();                     //延时函数初始化         
  30.   NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
  31.         uart_init(9600);                 //串口初始化为9600
  32.         LED_Init();                                  //初始化与LED连接的硬件接口
  33.         
  34.         while(DHT11_Init())        //DHT11初始化        
  35.         {
  36.                 sprintf(buff,"Error\r");
  37.                 GpuSend(buff);
  38.                  delay_ms(200);
  39.         }                                       
  40.         
  41.         while(1)
  42.         {                        
  43.                  if(t%10==0)                        //每100ms读取一次
  44.                 {                                                                          
  45.                         DHT11_Read_Data(&temperature,&humidity);        //读取温湿度值        
  46.              buf[0]=02;
  47.                         buf[1]=temperature;
  48.                         buf[2]=humidity;        
  49.             for(i=0;i<3;i++)
  50.                         {
  51.                                         USART_SendData(USART1, buf[i]);
  52.                                         while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
  53.                         }  
  54.                 }                                   
  55.                  delay_ms(10);
  56.                 t++;
  57.                 if(t==20)
  58.                 {
  59.                         t=0;
  60.                         LED0=!LED0;
  61.                 }
  62.         }
  63. }
复制代码

所有资料51hei提供下载:
Send.rar (303.77 KB, 下载次数: 29)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:724276 发表于 2020-4-8 17:10 | 只看该作者
非常感谢!解决了我的困惑。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表