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

外贸网站设计注意事项黄冈网站推广软件视频下载

外贸网站设计注意事项,黄冈网站推广软件视频下载,徐州建站程序,云端智能建站系统简介 使用BearPi IOT Std开发板及其扩展板E53_SC1, SC1上有I2C1 的光照强度传感器BH1750 和 EEPROM AT24C02, 本次主要就是读取光照强度; 主板: 主芯片: STM32L431RCT6LED : PC13 \ 推挽输出\ 高电平点亮串口: Usart1I2C使用 : I2C1E53_SC1扩展板 : LE…

简介

使用BearPi IOT Std开发板及其扩展板E53_SC1, SC1上有I2C1 的光照强度传感器BH1750 和 EEPROM  AT24C02, 本次主要就是读取光照强度;
主板: 主芯片: STM32L431RCT6LED : PC13 \ 推挽输出\ 高电平点亮串口: Usart1I2C使用 : I2C1E53_SC1扩展板 : LED : PB9 \ 推挽输出 \ 高电平点亮光照强度传感器:BH1750EEPROM芯片 : AT24C02

步骤

  1. 创建项目
    参考 BearPi IOT Std板 RT-Thread 工程创建
  2. 开启rt-thread i2c支持
    rtconfig.h 文件中添加
/* rt-thread 开启i2c支持 */
#define RT_USING_I2C // RT-Thread开启I2C
#define RT_USING_I2C_BITOPS // RT-Thread 启用 I2C 位操作功能/* 注册i2c1设备 */
#define BSP_USING_I2C1 // 开启I2C1, 启用该块代码
#define BSP_I2C1_SCL_PIN 22 // i2c1初始化的时候使用
#define BSP_I2C1_SDA_PIN 23 // i2c1初始化的时候使用
  1. env + 指令 scons --target=mdk5 -s 更新支持模块到Keil工程文件中

  2. 编译烧录
    list device # 可以看到i2c1 设备了
    在这里插入图片描述

  3. 添加使用代码

#include <board.h>
#include <rtthread.h>
#include <drv_gpio.h>
#ifndef RT_USING_NANO
#include <rtdevice.h>
#endif /* RT_USING_NANO */int main(void)
{struct rt_i2c_bus_device *i2c_bus;      /* I2C总线设备句柄 */float lux = 0.0;uint8_t temp[2];uint8_t cmd = 0x11;rt_kprintf("---Welcome use BearPi---\n");
i2c_bus = (struct rt_i2c_bus_device *)rt_device_find("i2c1"); // 获取注册i2c1设备if (i2c_bus != RT_NULL){rt_kprintf("init succeed!\n");rt_kprintf("send result: %d\n", rt_i2c_master_send(i2c_bus, 0x23, RT_I2C_WR, &cmd, 1)); // 发送连续读H分辨率模式到BH1750rt_thread_mdelay(180); // 延时180msrt_kprintf("recv result: %d\n", rt_i2c_master_recv(i2c_bus, 0x23, RT_I2C_RD, temp, 2)); //  读取BH1750传来的光照强度数据/* 计算光照强度数据 */lux = (float)((temp[0]<<8)|temp[1]);lux /= (float)(1.2);rt_kprintf("LUX : %f\n", lux);}
}
  1. 编译烧录
  2. 串口打开, 复位查看
    在这里插入图片描述

前言后说

  1. 读取BH1750地址差异
    裸机API
    HAL_I2C_Master_Transmit , DeviceAddress 是 0x46(写)
    HAL_I2C_Master_Receive, DeviceAddress 是 0x47(读)
    RT-Thread API
    rt_i2c_master_send, Address 是 0x23
    rt_i2c_master_recv, Address 是 0x23
    两者的差异主要是裸机API中的设备地址包含了读/写位
    0100011 0(包含写/读位) -> 0x46(写)
    0100011 1(包含写/读位) -> 0x47(读)
    0100011(不包含写/读位) -> 0x23

  2. 使用 rt_kprintf 打印不了浮点数
    将 rt-thread/src/kservice.c 里面 rt_kprintf 实现函数中的
    length = rt_vsnprintf(rt_log_buf, sizeof(rt_log_buf) - 1, fmt, args);
    改为
    length = vsnprintf(rt_log_buf, sizeof(rt_log_buf) - 1, fmt, args);
    记得加上头文件和Keil中设置Micro Lib库支持

项目代码

参考

RT-Thread I2C总线设备
BearPi IOT Std板 RT-Thread 工程创建
BearPi Std 板从入门到放弃 - 先天神魂篇(2)(RT-Thread LED PWM驱动)

http://www.rdtb.cn/news/12875.html

相关文章:

  • 做设计任务的网站推广产品最好的方式
  • 电商网站建设流程图关键词查找的方法有以下几种
  • 重庆网站域名备案地址毛戈平化妆培训学校官网
  • 区块链开发与应用专业seo推广怎么做
  • 网站建设最新技术今日十大热点新闻
  • 网站开发之ios知识扩展全网seo是什么意思
  • wordpress建个人博客cpu优化软件
  • 国内html5网站经典软文案例
  • 如何知道一个网站是用什么做的无锡网站优化
  • 自己做网站可以挣钱吗浅议网络营销论文
  • 网站建设除了中企动力做一个网站需要多少钱
  • 全国建设工程信息网站广点通
  • 品牌网站建设有哪些重庆高端品牌网站建设
  • 网站开发需要大学吗百度账户托管
  • 南京市建设监理协会网站seo是搜索引擎吗
  • 福州建设银行社会招聘网站怎么做网站排名
  • 制作网站素材广告联盟接单赚钱平台
  • 网站建设发布教程视频网络广告投放渠道有哪些
  • 电商网站模版百度推广开户费
  • 品牌推广软文200字网站排名优化手机
  • 中山网站制作专业网站推广和优化的原因
  • 小程序注册页面商丘seo排名
  • 网站建设公司客户开发手册长沙做网站推广
  • 专业的常州做网站刷百度关键词排名
  • 网站建设与管理专业的行业发展网站seo快速
  • b2b 贸易网站公司域名查询官网
  • 公司做网站建设seo推广是什么意思呢
  • 自己服务器做网站服务器备案域名注册要多少钱
  • 门户网站建设工作汇报如何优化seo关键词
  • 服务器怎么限制ip访问网站吗企业怎么做好网站优化