bh1750c语言程序,BH1750FVI数字光线强度传感器 51单片机源程序

2023-11-14

a6868fd7648b9d7e8dfc5270b7cb55f6.png

//***************************************

// BH1750FVI IIC测试程序

// 使用单片机STC89C51

// 晶振:11.0592M

// 显示:LCD1602

// 编译环境 Keil uVision2

// 参考宏晶网站24c04通信程序

// 时间:2011年4月20日

//****************************************

#include  

#include      //Keil library

#include     //Keil library

#include  

#define   uchar unsigned char

#define   uint unsigned int

#define   DataPort P0         //LCD1602数据端口

sbit          SCL=P1^0;      //IIC时钟引脚定义

sbit            SDA=P1^1;      //IIC数据引脚定义

sbit      LCM_RS=P2^0;   //LCD1602命令端口

sbit      LCM_RW=P2^1;   //LCD1602命令端口

sbit      LCM_EN=P2^2;   //LCD1602命令端口

#define          SlaveAddress   0x46 //定义器件在IIC总线中的从地址,根据ALT  ADDRESS地址引脚不同修改

//ALT  ADDRESS引脚接地时地址为0x46,接电源时地址为0xB8

typedef   unsigned char BYTE;

typedef   unsigned short WORD;

BYTE    BUF[8];                         //接收数据缓存区

uchar   ge,shi,bai,qian,wan;            //显示变量

int     dis_data;                       //变量

void delay_nms(unsigned int k);

void InitLcd();

void Init_BH1750(void);

void WriteDataLCM(uchar dataW);

void WriteCommandLCM(uchar CMD,uchar Attribc);

void DisplayOneChar(uchar X,uchar Y,uchar DData);

void conversion(uint temp_data);

void  Single_Write_BH1750(uchar REG_Address);               //单个写入数据

uchar Single_Read_BH1750(uchar REG_Address);                //单个读取内部寄存器数据

void  Multiple_Read_BH1750();                               //连续的读取内部寄存器数据

//------------------------------------

void Delay5us();

void Delay5ms();

void BH1750_Start();                    //起始信号

void BH1750_Stop();                     //停止信号

void BH1750_SendACK(bit ack);           //应答ACK

bit  BH1750_RecvACK();                  //读ack

void BH1750_SendByte(BYTE dat);         //IIC单个字节写

BYTE BH1750_RecvByte();         

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

bh1750c语言程序,BH1750FVI数字光线强度传感器 51单片机源程序 的相关文章

  • aix卷组故障维护

    author skatetime 2009 04 24 故障描述 4 20日早晨 发现日报没有正常发送 登录数据库备机查看原因 查看系统的log命令 errpt more 没有发现什么异常 不过发现有如下错误 F3931284 041005
  • 《动手学深度学习》(七) -- 边界框和锚框

    1 边界框 在目标检测中 我们通常使用边界框 bounding box 来描述对象的空间位置 边界框是矩形的 由矩形左上角的以及右下角的 x x x和 y y y坐标决定 另一种常用的边界框表示方法是边界框中心的
  • 在js中 String 转json

    第一种方式 使用js函数eval testJson eval testJson 是错误的转换方式 正确的转换方式需要加 testJson eval testJson eval 的速度非常快 但是他可以编译以及执行任何JavaScript程序
  • 人脸识别技术也被应用到了移动支付领域

    随着智能手机及互联网的发展 移动支付已经成为了目前我国增速最快的支付方式 在移动支付发展过程中 各种新型的支付方式层出不穷 如二维码支付 NFC支付等 近年来 伴随着人工智能 机器学习及传感器的逐步发展 生物识别技术也被应用到了移动支付领域
  • python提取邮件的附件,以excel为例

    配置邮箱 读取基本的邮件内容请参考 python读取并解析邮箱邮件 读取邮件主题 内容 时间 以excel为例 获取邮件 email value config imap server imap exmail qq com username
  • 变量的作用域和生命周期

    目录 作用域 局部变量的作用域 局部变量的生命周期 生命周期 全局变量的作用域 全局变量的生命周期 作用域 作用域是程序设计概念 一段程序代码中所用到的名字并不总是有效 可用的 而限定这个名字的可用性的范围就是其作用域 通俗来说就是它在哪里
  • 通用定时器part1:相关原理介绍

    2018 4 18 stm32 1 介绍 1 对于STM32f103rc而言 一共存在着8个定时器 有着4个16位通用定时器 2个16位高级定时器 2个16位基本定时器 2 1 高级定时器 1 16位 可以采用向上 向下或向上 下计数器模式
  • Shader的属性和语义

    属性 Shader 属性property就是Unity面板和shader的连接器 Properties Numbers and Sliders ExampleName Integer display name Integer 1 Examp
  • Redis学习:Redis缓存穿透和雪崩

    缓存穿透和雪崩 大规模的缓存击穿 两者的区别就是 缓存穿透是一个key缓存没数据 数据库也没有数据 请求全部打到数据库层面上 数据库也没数数据 无能为力 缓存层和数据库层都没有 真的是透了 雪崩先理解缓存击穿 就是很多请求一个key 这个k
  • obsidian配合hugo的使用,让markdown本地编辑软件与在线化无缝衔接

    下载安装 点击打开obsidian官方网站 下载并安装 安装地址为 C Users 当前账号 AppData Local Obsidian C Users 当前账号 AppData Local obsidian updater 创建新库 起
  • Elasticsearch 之 数据索引

    对于提供全文检索的工具来说 索引时一个关键的过程 只有通过索引操作 才能对数据进行分析存储 创建倒排索引 从而让使用者查询到相关的信息 本篇就ES的数据索引操作相关的内容展开 更多内容参考 Elasticsearch资料汇总 索引操作 最简
  • Are you running in a Servlet container that supports JSR-356

    最近使用websocke出现以下问题 No javax websocket server ServerContainer ServletContext attribute Are you running in a Servlet conta
  • Docker-compose安装mysql

    介绍 本系列文章主要介绍使用docker compose部署mysql nginx redis等中间件 前后分离微服务项目部署流程 不介绍docker安装以及基础命令 话不多说首先进入mysql安装教学 操作 首先创建个目录用来存放dock
  • unity让一个物体从上到下消失_Unity3D中隐藏与显示物体的一些操作

    在使用unity3d开发游戏的过程中 我们常常会遇到需要隐藏或者显示的操作 针对这一点 下面做了一些总结 一 设置Renderer状态 在游戏的开发中 所有能够被渲染的物体都包含有一个Renderer组件 使用它可以将物体渲染到屏幕上 那么
  • linux shell脚本无法执行,报错syntax error near unexpected token `$'\r''解决方法

    最近一直忙于项目上的要求 在编写各种自动化安装的脚本 正好有一个需求是在之前的项目上编写过的 目前只需要拿来修改下即可 之前的shell脚本是在服务器上编写的 后来又已复制的方式存在在了电脑上 以txt文件的形式存放的 于是复制到了编辑工具
  • Spring知识点总结

    一 Spring框架介绍 Spring 是分层的 Java SE EE 应用 full stack 轻量级开源框架 以 IoC Inverse Of Control 反转控制 和 AOP Aspect Oriented Programmin
  • mybatis-mate相关配置

    Mybatis Mate 配置 mybatis mate cert grant 请添加微信wx153666购买授权 不白嫖从我做起 license SM hy2HGmqRZIw7NE5i1vKIiHOQLGXGymokyRCkR TYuNZ
  • html+jQuery自定义报告单

    html jQuery实现自定义报告单 功能 用户按需求自定义拼接生成报告单 支持打印功能 支持导出HTML CSS代码 截图 源码地址 customize report
  • java中byte和Byte详解

    写程序时 误把byte写作Byte 调试了许久 便将二者的区别及用法详细理解一遍 1 byte标题和Byte详解 byte是java的基本数据类型 存储整型数据 占据1个字节 8 bits 能够存储的数据范围是 128 127 Byte是j

随机推荐

  • Windows环境下ARM集成开发环境的搭建与使用

    Windows环境下能够使用Eclipse IDE for C C Developers来搭建ARM开发环境 本文地址 http blog csdn net u011833609 article details 30290655 安装过程例
  • 继续教育自动听课软件_2017继续教育挂机软件下载

    继续教育自动挂机软件2017是一款帮助用户挂机学习的辅助工具 有了它你就不用一直呆在电脑前了 它可以自动更新学习时间 自动换课计时 安全无病毒 方便快捷 省时省力省心 全国中小教师继续教育网的各种远程培训学习 全国各省份都能使用 使用教程
  • Valid注解在嵌套对象中校验失效

    接收对象声明 import lombok Data import javax validation constraints NotBlank import javax validation constraints NotNull impor
  • 数学的幽默打油诗

    1 常微分学常没分 数理方程没天理 实变函数学十遍 泛函分析心犯寒 微分拓扑躲不脱 随机过程随机过 微机原理闹危机 汇编语言不会编 量子力学量力学 机械制图机械制 2 高数 拉格朗日 傅立叶旁 我凝视你凹函数般的脸庞 微分了忧伤 积分了希望
  • 宁波到西塘可以坐火车去吗?

    宁波 嘉善 西塘宁波 嘉善火车 N406 N407 空调快速宁波15 10出发嘉善19 27到达4小时17分270公里硬座 42元硬卧 93元然后从嘉善打车到西塘 9公里 15元左右 坐快客3元也可以乘坐T794 空调特快宁波 10 41出
  • python 实现自动批量下载腾讯在线excel

    python 批量下载腾讯在线文档 如需要源代码供参考 可以留言邮箱 看到的话就发一下 pthon自动批量下载腾讯在线文档 对于大量实时更新维护的在线文档 可以随时轻松自动化批量下载在线文档 无需耗费人工下载 腾讯在线文档标签有时候会随版本
  • BP神经网络算法基本原理,BP神经网络算法流程图

    伤寒 副伤寒流行预测模型 BP神经网络 的建立 由于目前研究的各种数学模型或多或少存在使用条件的局限性 或使用方法的复杂性等问题 预测效果均不十分理想 距离实际应用仍有较大差距 NNT是Matlab中较为重要的一个工具箱 在实际应用中 BP
  • 爬虫中有关验证码的问题处理

    在爬虫中 经常要处理登陆的相关事宜 有时候登陆界面会需要提交验证码 如何处理验证码 解决办法 若是自己编写模块 需要涉及深度学习 这就是另一块大的内容了 在这里简单调用已经封装好的模块来实现获取验证码 本文以超级鹰为例 网址 http ww
  • PADS 原理图如何自动编号

    PADS原理图如何自动编号 PADS 原理图工具 PowerLogic exe 不支持元件位号重名 原生不提供自动编号功能 虽然 PowerPCB exe 可以支持元件位号自动编号功能再同步到原理图 但是其局限性太大没啥实际意义 另外 PA
  • YUV格式学习:YUYV、YVYU、UYVY、VYUY格式转换成RGB

    YUYV YVYU UYVY VYUY格式 它们都是YUV422的打包格式 即在内存中 Y U V都是挨着排序的 它们的名称就表示了Y U V的顺序 像YUYV 就是Y U Y V Y U Y V 在做转换时 就显得很容易 简单了 因为极其
  • 【卷积核设计】10、Scaling Up Your Kernels to 31x31

    文章目录 一 背景 二 方法 三 RepKLNet a Large Kernel Architecture 3 1 结构 3 2 尽可能的让卷积核变大 3 3 图像分类 3 4 语义分割 3 5 目标检测 四 分析 五 限制 六 结论 论文
  • 【笔试强训选择题】Day43.习题(错题)解析

    作者简介 大家好 我是未央 博客首页 未央 303 系列专栏 笔试强训选择题 每日一句 人的一生 可以有所作为的时机只有一次 那就是现在 文章目录 前言 一 Day43习题 错题 解析 总结 前言 一 Day43习题 错题 解析 1 解析
  • Elasticsearch笔记4 基础入门

    执行分布式检索 一个查询操作 在ES分布式环境中分为两步 查询与合并 查询阶段 ES集群向所有分片传递查询语句 分片接收到请求后 执行搜索并建立一个长度为top n的优先队列 存储结果 top n 的大小取决于分页参数 top n from
  • 链表c语言stl,C++STL之List容器

    1 再谈链表 List链表的概念再度出现了 作为线性表的一员 C 的STL提供了快速进行构建的方法 为此 在前文的基础上通过STL进行直接使用 这对于程序设计中快速构建原型是相当有必要的 这里的STL链表是单链表的形式 2 头文件 头文件
  • Vue3+Vite项目配置Eslint+Prettier+Husky+Lint-Staged+Commitlint

    Eslint 配置 ESLint 是一个插件化并且可配置的 JavaScript 语法规则和代码风格的检查工具 ESLint 能够帮你轻松写出高质量的 JavaScript 代码 1 建议 vscode 安装 Eslint 的插件 这个插件
  • 用JAVASCRIPT从弹出的窗口中获取值

    设三个页面 Father aspx SubOpen aspx SubModalDialog aspx 在Father aspx中
  • Excel构建决策分析模型

    特点 探讨使用 Excel 构建决策模型的价值和重要性 以及对 Excel 复杂性的非常详细和深入的解释 使用 Excel 的图形功能来有效地呈现定量数据 比率和间隔 来通知和影响目标对象 利用 Excel 的内置数据可视化和操作功能准备数
  • kubernetes session保持等设置

    session保持 如何在service内部实现session保持呢 当然是在service的yaml里进行设置啦 在service的yaml的sepc里加入以下代码 sessionAffinity ClientIP sessionAffi
  • matplotlib怎么在一张图上画多条曲线?

    问题 多个plot画不到一张图上 解决方法 多个plot用一个plt show 即可 一次plt show 就会有一次输出 如何让函数画在同一张画布上 for i in range 1 15 3 train score test score
  • bh1750c语言程序,BH1750FVI数字光线强度传感器 51单片机源程序

    BH1750FVI IIC测试程序 使用单片机STC89C51 晶振 11 0592M 显示 LCD1602 编译环境 Keil uVision2 参考宏晶网站24c04通信程序 时间 2011年4月20日 include include