0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于RT-Thread开发的BLE智能灯和门锁控制方案

嵌入式加油站 来源:谷动谷力 2023-06-15 09:29 次阅读

项目简介

本项目基于AB32VG1 BLE的SOC, 使用RT-Thread Rtos 完成智能家居灯门锁...通过蓝牙BLE用手机智能终端控制, 并有语音提示, 除了手机控制, 当然也可以用按键控制, 这只一个小案例, 除了灯门锁...还有其他的电器,比如插座窗帘'....

物尽其用,基本上这个MCU主要外设BLEDAC(做语音播放)都用上了,所以这个MCU带语音\BLE项目非常适合,用RT--Thread开发很方便,自己写的代码非常实现了这个功能.

硬件说明

本项目了 除了用执行元件, 都用AB32VG1开发板完成的, 得益于AB32VG1丰富的功能组件:

CPU:AB5301A;( LQFP48 封装,主频 120M,片上集成 RAM 192K, flash 8 Mbit, ADC, PWM, USBUART, IIC 等资源)

AB5301A内置蓝牙BLE SOC -- 本项目用此做手机远程控制

AB5301A内置 FM 模块 (本项目未使用)

一路 TF Card 接口 (本项目未使用)

一路 USB 接口 (本项目未使用)

一路 IIC 接口 (本项目未使用)

一路音频接口(美标 CTIA)-- 本项目用此做操作语音揭示及反馈

六路 ADC 输入引脚端子引出 (本项目未使用, 如需拓展温度光照检测应用, 可以用ADC)

六路 PWM 输出引脚端子引出(本项目未使用, 如需拓展调光应用, 可以用PWM)

一个全彩 LED 灯模块, 一个电源指示灯, 三个烧录指示灯本项目用此做指示

一个 IRDA(红外接收端口) (本项目未使用)

一个 Reset 按键, 三个功能按键(通用版为两个功能按键)

硬件架构

系统采用USB供电

USB转UART 下载程序及软件调试

DAC音频输出到喇叭, 操作语音揭示及反馈

GPIO输出控制LED灯和门锁

9983f05e-0a99-11ee-962d-dac502259ad0.jpg



软件说明

软件功能

手机通过BLE远程控制LED灯亮灭, 开门锁(锁门驱动模块会自动检测关门并锁门, 所以不考虑锁门)

板载按键远程控制LED灯亮灭, 开门锁



软件框图

99bb4cfc-0a99-11ee-962d-dac502259ad0.jpg
使用RT-Thread Studio, 创建工程,配置好组件软件包, 本项目应用组件或软件包:

RT-Thread 标准最新版

驱动:

Audio

串口

Pin(GPIO)

组件:

wavplayer播放器 播放器

ptparse --命令行参数解析器, wavplayer依赖它解析播放参数

DFS ---文件系统

Finsh命令

MultiButtion --- 按键框架

bluetrum SDK

以上都是通过RT-Thread Studio配置 获得,我需要写的代码, 非常少, 真的是低代码开发


我需要开发的
1、BLE(Gatt Server) 收到手机发来的数据和按键事件处理, 调用GPIO执行控制LED灯亮灭, 开门锁, 播放提示音
注: 提示音由mkromfs将音频文件制作成C语言数组的虚拟文件系统, 详细参阅//bbs.sunsili.com/thread-225776-1-1.html
2、BLE Gatt Service重写

代码已开源,请移步:
https://gitee.com/lojam/ab32vg1-ble_-smrthm/tree/master



操作说明

1、按键操作:
S2 按一下开锁
S3 按一下开灯, 再关灯, 如此循环
注:每个操作,都播放提示音

2、BLE 远程控制:
没写APP,用BLE调试助手
连接设备:Silicon_Smarthome

连接成功后, 选择Unkown Service (用户自定义, 一般没注册到蓝牙联盟的uuid,都这样显示)

Unkown (用户自定义)Charismatic 长度2BytesRead / Write ( 可读写)

Byte0 Byte1
灯控制 lock
1:开灯1: 开锁(锁驱动会自动检测关锁)

0:关灯0: 关


99d1b000-0a99-11ee-962d-dac502259ad0.jpg


Device Information Service 设备信息服务

Manufacturer Name String Charismatic read( 只读)读设备制造商信息字串类型

99e2a130-0a99-11ee-962d-dac502259ad0.jpg

Model Number String Charismatic read( 只读)获取设备型号字串类型

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17370

    浏览量

    352986
  • 接口
    +关注

    关注

    33

    文章

    8728

    浏览量

    152105
  • 开发板
    +关注

    关注

    25

    文章

    5144

    浏览量

    98436
  • BLE
    BLE
    +关注

    关注

    12

    文章

    671

    浏览量

    59655
  • RT-Thread
    +关注

    关注

    31

    文章

    1308

    浏览量

    40495

原文标题:用AB32VG1开发板基于RT-Thread开发的BLE智能灯和门锁控制并带语音提示演示方案

文章出处:【微信号:嵌入式加油站,微信公众号:嵌入式加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    RT-Thread记录(一、版本开发环境及配合CubeMX)

    RT-Thread 学习记录的第一篇文章,RT-Thread记录(一、RT-Thread 版本、RT-Thread Studio开发环境 及
    的头像 发表于 06-20 00:28 5397次阅读
    <b class='flag-5'>RT-Thread</b>记录(一、版本<b class='flag-5'>开发</b>环境及配合CubeMX)

    RT-Thread的C语言编码规范

    这是一份 RT-Thread 开发人员的开发指引。RT-Thread 做为一份开源软件,它需要由不同的人采用合作的方式完成,这份文档是开发
    的头像 发表于 02-21 16:50 2554次阅读

    RT-Thread编程指南

    RT-Thread编程指南——RT-Thread开发组(2015-03-31)。RT-Thread做为国内有较大影响力的开源实时操作系统,本文是RT
    发表于 11-26 16:06 0次下载

    RT-Thread开发,如何有效学习RT-Thread的五个步骤

    RT-Thread推出RT-Thread Inside战略开放RT-Thread开发平台授权合作,与硬件十万个为什么合作首次推出第一款RT-
    的头像 发表于 09-25 09:55 3.5w次阅读
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>开发</b>,如何有效学习<b class='flag-5'>RT-Thread</b>的五个步骤

    RT-Thread软件包定义和使用

    RT-Thread软件包是运行于RT-Thread物联网操作系统平台上,面向不同应用领域的通用软件组件 。RT-Thread 同时提供了开放的软件包平台,为开发者提供了众多可重用软件包
    的头像 发表于 05-21 11:29 1.1w次阅读
    <b class='flag-5'>RT-Thread</b>软件包定义和使用

    嵌入式RT-Thread应用与开发

    嵌入式RT-Thread应用与开发说明。
    发表于 04-06 14:12 72次下载
    嵌入式<b class='flag-5'>RT-Thread</b>应用与<b class='flag-5'>开发</b>

    STM32WB55在RT-Thread系统上移植官方蓝牙BLE功能

    STM32WB55在RT-Thread系统上移植官方蓝牙BLE功能硬件环境:(1)开发板:ST官方的stm32wb55-st-nucleo开发板软件环境:(1)
    发表于 12-04 12:51 17次下载
    STM32WB55在<b class='flag-5'>RT-Thread</b>系统上移植官方蓝牙<b class='flag-5'>BLE</b>功能

    RT-Thread Studio驱动SD卡

    总结前言硬件平台:RT-Thread ART-Pi STM32H750XBH6开发板 H750开发开发软件:RT-Thread Studi
    发表于 12-27 19:13 20次下载
    <b class='flag-5'>RT-Thread</b> Studio驱动SD卡

    RT-Thread全球技术大会:使用RT-Thread开发大规模嵌入式软件带来的挑战与好处

    RT-Thread全球技术大会:使用RT-Thread开发大规模嵌入式软件带来的挑战与好处       审核编辑:彭静
    的头像 发表于 05-27 11:45 1575次阅读
    <b class='flag-5'>RT-Thread</b>全球技术大会:使用<b class='flag-5'>RT-Thread</b><b class='flag-5'>开发</b>大规模嵌入式软件带来的挑战与好处

    RT-Thread学习笔记 RT-Thread的架构概述

    的种种优越之处。RT-Thread 是一款完全由国内团队开发维护的嵌入式实时操作系统(RTOS),具有完全的自主知识产权。经过 16 个年头的沉淀,伴随着物联网的兴起,它正演变成一个功能强大、组件丰富的物
    的头像 发表于 07-09 11:27 4644次阅读
    <b class='flag-5'>RT-Thread</b>学习笔记 <b class='flag-5'>RT-Thread</b>的架构概述

    RT-Thread文档_RT-Thread 简介

    RT-Thread文档_RT-Thread 简介
    发表于 02-22 18:22 5次下载
    <b class='flag-5'>RT-Thread</b>文档_<b class='flag-5'>RT-Thread</b> 简介

    RT-Thread文档_RT-Thread 潘多拉 STM32L475 上手指南

    RT-Thread文档_RT-Thread 潘多拉 STM32L475 上手指南
    发表于 02-22 18:23 9次下载
    <b class='flag-5'>RT-Thread</b>文档_<b class='flag-5'>RT-Thread</b> 潘多拉 STM32L475 上手指南

    RT-Thread文档_RT-Thread SMP 介绍与移植

    RT-Thread文档_RT-Thread SMP 介绍与移植
    发表于 02-22 18:31 9次下载
    <b class='flag-5'>RT-Thread</b>文档_<b class='flag-5'>RT-Thread</b> SMP 介绍与移植

    基于RT-Thread Studio学习

    前期准备:从官网下载 RT-Thread Studio,弄个账号登陆,开启rt-thread学习之旅。
    的头像 发表于 05-15 11:00 4198次阅读
    基于<b class='flag-5'>RT-Thread</b> Studio学习

    使用RT-Thread Studio进行智能家居终端的设计

    本次方案基于星火一号开发开发,使用RT-Thread Studio进行工程创建,代码编辑,RT-Thread配置,调试配置,程序下载等功能
    的头像 发表于 07-28 16:41 2010次阅读
    使用<b class='flag-5'>RT-Thread</b> Studio进行<b class='flag-5'>智能</b>家居终端的设计