玩高级代码是不是有点腻了呢,这回来个返璞归真的打开方式,重拾童真,真正感受编程的快乐,暂时忘却那些代码屎山。
图形化编程 -- 驱动scd41 环境传感器
MicroBlocks 在线编辑器是推荐的优先编程方式,其核心优势在于可自动保持软件与硬件固件的最新状态,无需手动下载更新,能确保编程功能与硬件兼容性始终处于最优水平;要进入在线编辑器,首先需要选择浏览器,这里强烈推荐使用 Chrome 浏览器,因为它兼容性最佳,可避免运行异常,接着打开 Chrome 后点击顶部地址栏,输入官方网址 https://microblocksfun.cn/run/,输入完成后按下键盘 “Enter” 键,即可加载并进入在线编辑器界面;进入编辑器后,默认显示为英文界面,此时需要点击页面左上角的图标(这是语言设置入口),点击后会弹出下拉菜单,在菜单中找到并选择 “简体中文”,界面语言将立即切换为中文。
https://microblocksfun.cn/run/microblocks.html
步骤一:烧录固件,根据自己的所使用的板卡来选择,我这里选用了一个m5stack的一款古早产品。
步骤二:连设备,电脑有蓝牙可以用无线连接,不然只能有线。
步骤三:添加必要的积木库,这里必须选上我们的传感器,因为没有专门scd41的库,我们选scd40就可以,因为他们驱动没有区别,区别在于硬件产品的性能参数,所以可以直接使用。
步骤四:然后就可以开始快乐的编程了,完整项目如下:
项目主要流程说明
1. 1.
启动流程 :
- 项目启动后执行 whenStarted 脚本
- 尝试连接WiFi(注释表明此功能暂时未使用)
- 初始化TFT显示屏并清除屏幕
- 为MQTT工作做准备(连接MQTT服务器)
- 初始化SCD40传感器
- 发送"go!"广播启动数据采集流程
2. 2.
数据采集与显示流程 :
- 接收"go!"广播后进入主循环
- 每秒(1000毫秒)从SCD40传感器读取一次数据
- 读取的数据包括CO2浓度、温度和湿度
- 调用 drawData 函数在TFT屏幕上显示这些数据
- 清除旧数据显示区域并绘制新数据
3. 3.
SCD40传感器交互 :
- 初始化时检查传感器连接状态
- 执行工厂重置并启动连续测量模式
- 读取数据时先检查数据是否准备就绪
- 使用I2C协议与传感器通信
主要功能是通过SCD40传感器实时监测环境中的CO2浓度、温度和湿度,并在M5Stack的TFT显示屏上可视化展示这些数据。虽然代码中包含了WiFi和MQTT相关功能的准备工作,但根据注释,这些功能目前并未实际使用。
项目成果:这里由于传感器的数据线线序比较奇特(不是奇葩),所以为了优雅,我这里还自制了一万能接线器,可以无痛连接dfrobot,M5stack公司的传感器,还有通通的杜邦线接口。
是不是一点都不卷了呀!