一 需求分析
通过RSL10实现一个蓝牙通信的可燃气体报警器,当检测到环境甲烷浓度达到一定值时触发蓝牙模块对外报警,所需硬件资源及用途以表格形式列出
序号 | 需求项 | 需求说明 | 解决方案 |
1 | 供电 | 外部电源 | 5V |
2 | 天然气采样 | 采用MQ-4来检测环境中天然气成份(甲烷) | RSL10 - CM3 - DIO3 |
3 | 指示灯 | 复用评估版上的LED0用于指示MQ-4信号 | RSL10 - CM3 - DIO6 |
4 | 通信 | 无线BLE通信 有线串口TTL通信(*) | RSL10 - Bluetooth 5 RSL10 - CM3 - UART(DIO5,4) |
二 系统框图和外设传感器接线图
三 设计实现
3.1 集成开发环境:ON Semiconductor IDE(折腾了一会IAR工程,太费劲,最终用的官方工具)
3.2 开发包:ONSemiconductor.RSL10.3.5.285.pack
3.3 示例代码:peripheral_server_uart
3.4 整合:
- 删除BASS服务;
- 删除部分自定义服务属性和特征;
+ 修改蓝牙设备描述等;
+ 增加IO中断和ADC采样部分代码;
+ 增加蓝牙连接成功后当有报警事件时对外发送数据。
---------------------------------------------------------
+ 增加IO中断的Debounce时延;
+ 修复ADC采样不触发的问题, 例程调用Sys_RFFE_SetTXPower(OUTPUT_POWER_DBM)后关闭了ADC,参考链接:http://bbs.eeworld.com.cn/thread-1170319-1-1.html
3.5 工程代码
gas_detector.zip
(660.92 KB, 下载次数: 0)
全部回复 0
暂无评论,快来抢沙发吧