当前位置: 首页 > news >正文

测量温湿度通过蓝牙和串口发送数据显示在LCD1602屏上

同时通过温度和蓝牙来控制风扇

实验器材:
51开发板、DHT11模块、蓝牙模块、LCD1602、马达、小风扇、杜邦线

源码仅供参考:
#include <REGX52.H>
#include “intrins.h”
#define databuffer P0 //定义8位数据线,Po端口组
sfr AUXR = 0x8E;
sbit LED1 = P3^7;
sbit DHT = P3^3;
sbit RS = P1^0;
sbit RW = P1^1;
sbit EN = P1^4;
sbit JDQ = P1^6; //继电器
char dates[5]; //8位为一个数据
char temp[8]; //字符有7个,但是\0占一个字符
char Hema[8];
void Delay30ms(void) //@11.0592MHz
{
unsigned char data i, j;

i = 54;
j = 199;
do
{while (--j);
} while (--i);

}
void Delay40us(void) //@11.0592MHz
{
unsigned char data i;

_nop_();
i = 15;
while (--i);

}
void Delay60us(void) //@11.0592MHz
{
unsigned char data i;

i = 25;
while (--i);

}
void Delay15ms() //@11.0592MHz
{
unsigned char i, j;

i = 27;
j = 226;
do
{while (--j);
} while (--i);

}
void Delay5ms() //@11.0592MHz
{
unsigned char i, j;

i = 9;
j = 244;
do
{while (--j);
} while (--i);

}

void Delay1000ms(void) //@11.0592MHz
{
unsigned char data i, j, k;

_nop_();
i = 8;
j = 1;
k = 243;
do
{do{while (--k);} while (--j);
} while (--i);

}

串口初始化以及发送数据
``

`c
void Uart1_Init()					//串口初始化
{	AUXR = 0x01;					//让波特率更加稳定,防止掉帧SCON = 0x50;                    //配置串口工作模式,REN为1则接收数据TMOD &= 0x0F;TMOD |= 0x20;					//配置定时器为8位自动重装模式TL1 = 0xFD;TH1 = 0xFD;						//8位自动重装模式TH1存放的值自动存入TL1TR1 = 1;							//启动定时器
}
``
void senddate(char date)				//串口发出一个个数据函数
{SBUF = date;while(!TI);								//直到等于1时发送成功,TI为0时变1发送成功;为1变0时不循环TI = 0;									//无时差											
}
void sendstring(char* str)    //传入字符串
{while(*str != '\0'){senddate(*str);					//将字符串打印出来str++;									//地址偏移}}

DHT11湿温度传感器时序信号和读数据

void check_DHT_start()							//DHT信号
{DHT = 1;DHT = 0;Delay30ms();DHT = 1;Delay60us();while(DHT);									//D

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 紫辉创投开启Destiny of Gods首轮投资,伯乐与千里马的故事仍在继续
  • 2024杭电多校01——1003树
  • SpringBoot Mysql->达梦8 activiti6.0.0 项目迁移
  • JLink烧录失败
  • 免费发送邮件两种接口方式:SMTP和邮件API
  • “链动+消费增值:用户留存复购新引擎“
  • CSS3 scale 适配
  • zeppline 连接flink 1.17报错
  • WordPress 后台开发技巧:向文章发布页右侧添加自定义菜单项
  • react中的useState和Hook、副作用
  • 小白也能轻松学的计算机网络零基础入门(附学习路线 + 计算机网络教程)
  • CSS实现图片边框酷炫效果
  • PHP时间相关函数
  • 过滤和筛选树形结构数据
  • 关于Redis持久化和集群模式(主从,哨兵,去中心化)使用和介绍
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • Android 控件背景颜色处理
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • CSS 三角实现
  • Java反射-动态类加载和重新加载
  • Median of Two Sorted Arrays
  • Redis在Web项目中的应用与实践
  • SSH 免密登录
  • 如何选择开源的机器学习框架?
  • 三栏布局总结
  • 微信小程序:实现悬浮返回和分享按钮
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • 进程与线程(三)——进程/线程间通信
  • 如何在招聘中考核.NET架构师
  • # Apache SeaTunnel 究竟是什么?
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (4) PIVOT 和 UPIVOT 的使用
  • (el-Date-Picker)操作(不使用 ts):Element-plus 中 DatePicker 组件的使用及输出想要日期格式需求的解决过程
  • (pytorch进阶之路)扩散概率模型
  • (Ruby)Ubuntu12.04安装Rails环境
  • (八)Flask之app.route装饰器函数的参数
  • (一)基于IDEA的JAVA基础12
  • (杂交版)植物大战僵尸
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .NET : 在VS2008中计算代码度量值
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .NET MAUI Sqlite数据库操作(二)异步初始化方法
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • .Net小白的大学四年,内含面经
  • .net中应用SQL缓存(实例使用)
  • 。Net下Windows服务程序开发疑惑
  • [18] Opencv_CUDA应用之 基于颜色的对象检测与跟踪
  • [AIGC] MySQL存储引擎详解
  • [BZOJ1877][SDOI2009]晨跑[最大流+费用流]
  • [C++]STL之map
  • [G-CS-MR.PS02] 機巧之形2: Ruler Circle