资源简介
基于STC89c52 的环境数据采集 DHT11+BH1750+LCD1602 通过串口打印调试信息 LCD显示实时数据
代码片段和文件信息
///******************** NG.Respate(C) **********************************
//* 产品名称: Respate 科技
//* 程序作者: 雷帕特公司(南宫子萍)
//* 程序版本: V1.1
//* 编制日期: 2019/1/29
//* 功能描述: BH1750驱动
//* QQ: 2085827949
//**********************************************************************/
#include “BH1750.h“
#if 1 //适用于系统频率较低 不能产生精确的微秒级单片机 //@11.0592MHz 50us
/*******************************************************************************
* 函数名 : delay_5us
* 函数功能 : 延时5微秒(STC90C52RC @11.0592M) 不同的工作环境需要调整此函数
* 输入 : None.
* 返回 : None.
*******************************************************************************/
static void delay_5us(u8 i)
{
i=0;
_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
}
/*******************************************************************************
* 函数名 : BH1750_Start
* 函数功能 : 给BH1750发送 起始信号
* 输入 : None.
* 返回 : None.
*******************************************************************************/
void BH1750_Start(void)
{
BH1750_SDA = 1; //拉高数据线
BH1750_SCL = 1; //拉高时钟线
delay_5us(5); //延时
BH1750_SDA = 0; //产生下降沿
delay_5us(5); //延时
BH1750_SCL = 0; //拉低时钟线
}
/*******************************************************************************
* 函数名 : BH1750_Stop
* 函数功能 : 给BH1750发送 停止信号
* 输入 : None.
* 返回 : None.
*******************************************************************************/
void BH1750_Stop(void)
{
BH1750_SDA = 0; //拉低数据线
BH1750_SCL = 1; //拉高时钟线
delay_5us(5); //延时
BH1750_SDA = 1; //产生上升沿
delay_5us(5); //延时
}
/*******************************************************************************
* 函数名 : BH1750_TxACK
* 函数功能 : 给BH1750发送 应答信号
* 输入 : Ack:应答信号 (0:ACK 1:NAK)
* 返回 : None.
*******************************************************************************/
void BH1750_TxACK(u8 Ack)
{
BH1750_SDA = Ack; //写应答信号
BH1750_SCL = 1; //拉高时钟线
delay_5us(5); //延时
BH1750_SCL = 0; //拉低时钟线
delay_5us(5); //延时
}
/*******************************************************************************
* 函数名 : BH1750_RxACK
* 函数功能 : 主机接收 应答信号
* 输入 : None.
* 返回 : Ack:应答信号 (0:ACK 1:NAK)
*******************************************************************************/
u8 BH1750_RxACK(void)
{
u8 Ack = 0;
BH1750_SCL = 1; //拉高时钟线
delay_5us(5); //延时
Ack= BH1750_SDA;//读应答信号
BH1750_SCL = 0; //拉低时钟线
delay_5us(5); //延时
return Ack;
}
#else //适用于能精确产生微秒的51单片机
/*******************************************************************************
* 函数名 : BH1750_Start
* 函数功能 : 给BH1750发送 起始信号
* 输入 : None.
* 返回 : None.
*******************************************************************************/
void BH1750_Start(void)
{
BH1750_SDA = 1; //拉高数据线
BH1750_SCL = 1; //拉高时钟线
delay_us(5);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-03 21:04 Hardware\
目录 0 2019-04-03 21:03 Hardware\BH1750\
文件 8204 2019-04-03 20:22 Hardware\BH1750\BH1750.c
文件 2802 2019-04-03 20:09 Hardware\BH1750\BH1750.h
目录 0 2019-04-03 21:03 Hardware\DHT11\
文件 7229 2019-04-03 20:30 Hardware\DHT11\DHT11.c
文件 776 2019-04-01 23:48 Hardware\DHT11\DHT11.h
目录 0 2019-04-03 21:03 Hardware\SCM1602\
文件 2319 2019-04-03 20:02 Hardware\SCM1602\SCM1602.c
文件 1177 2019-04-03 20:02 Hardware\SCM1602\SCM1602.h
目录 0 2019-04-03 21:03 ob
文件 16945 2019-04-03 20:22 ob
文件 10491 2019-04-03 20:22 ob
文件 390 2019-04-03 20:22 ob
文件 5762 2019-04-03 20:21 ob
文件 1880 2019-04-03 20:21 ob
文件 14826 2019-04-03 20:30 ob
文件 6575 2019-04-03 20:30 ob
文件 386 2019-04-03 20:30 ob
文件 9419 2019-04-01 16:36 ob
文件 7183 2019-04-01 16:36 ob
文件 341 2019-04-01 16:36 ob
文件 42511 2019-04-03 20:30 ob
文件 1335 2019-04-03 20:30 ob
文件 10306 2019-04-03 20:30 ob
文件 236 2019-04-03 20:30 ob
文件 7368 2019-04-03 20:30 ob
文件 35919 2019-04-03 20:30 ob
文件 11803 2019-04-03 20:30 ob
文件 365 2019-04-03 20:30 ob
文件 14304 2019-04-01 16:36 ob
............此处省略29个文件信息
相关资源
- LCD 1602 显示屏 数据手册 PDF 英文
- 一些常用的c51单片常用类库有1602,键
- LCD1602程序 for MSP430F449
- lCD1602万年日历温度显示程序仿真.zi
- DS18B20+lcd1602显示+LED数码管显示
- 基于51单片机和LCD1602的计算器
- DHT11串口传输
- 利用DS1302实现单片机控制的电子万年
- arduino 读取温湿度dht11
- PCF8574LCD模块链接1602单片机51例程
- 51单片机DHT11温湿度
- 基于VHDL的1602LCD液晶显示
- STM32 硬件IIC读取BH1750
- STC89C52+LCD1602+DS1302电子时钟
- VHDL LCD1602显示程序
- 基于STC12C5A60S2的DS18B20温度显示工程
- 基于89C51的等精度频率计LCD1602显示1
- 单片机课设--数字万用表protues仿真+汇
- C51+1602液晶+矩阵键盘+三相步进电机
- 基于msp430单片机的红外线遥控解码L
- LCD1602液晶显示的计算器加减乘除
- 基于TQ2440和DHT11的温湿度监控系统源码
- 基于51单片机DHT11温湿度检测和串口通
- 解析GPS数据并用LCD1602显示
- 51单片机步进电机正反转调速1602显示
- 基于STC12C5616AD单片机的AD采集程序LC
- DS1302实时时钟,LCD1602显示,可调时间
- AD0809驱动 用LCD1602显示采集的模拟电压
- 温湿度传感器DHT11数字(附1602显示程
- linux平台 DHT11驱动程序
评论
共有 条评论