摘 要

本设计为基于 32 单片机的 RGB 三色灯控制系统手机蓝牙 APP 控制设计。该系统主要由 STM32F103C8T6 单片机核心板、RGB 灯驱动、蓝牙模块以及按键组成。
STM32F103C8T6 单片机核心板在系统中起着关键的控制作用。它接收来自蓝牙模块和按键的信号,并根据这些信号对 RGB 灯驱动进行控制。RGB 灯驱动模块负责驱动 RGB 三色灯,实现不同颜色的灯光显示。通过精确的控制,可以调出各种丰富的色彩组合,为环境营造出独特的氛围。
蓝牙模块使得用户可以通过手机蓝牙 APP 对 RGB 三色灯进行远程控制。用户可以在手机上操作 APP,发送指令给蓝牙模块,进而由单片机核心板处理这些指令,实现对 RGB 灯的颜色、亮度、闪烁模式等进行调整。按键则提供了一种本地控制的方式,用户可以在没有手机的情况下,直接通过按键对 RGB 灯进行简单的控制操作。
这种设计具有很高的实用性和灵活性。无论是用于家庭装饰、舞台效果还是商业场所的氛围营造,都能发挥出色的作用。它为用户提供了便捷的控制方式,让用户可以根据自己的需求和喜好随时调整灯光效果。同时,该系统的稳定性和可靠性也较高,能够满足长期使用的要求。

关键词:RGB 三色灯、STM32 单片机、蓝牙控制、灯光氛围

3.硬件电路的设计

3.1 系统功能分析和硬件框图
本系统由STM32F103C8T6单片机核心板、RGB灯驱动、蓝牙模块、按键组成。
1、系统实时驱动RGB灯进行显示不同颜色,颜色调整可以通过三个按键或者蓝牙驱动。
2、三个按键分别对应RGB灯的RGB值,通过调节不同的R/G/B值可以对灯颜色进行变换。
3、蓝牙也可以对R/G/B值进行设置,显示不同的颜色。
通过蓝牙APP直接设置R/G/B值,滑块操作;也可以直接点击APP底部默认颜色方框直接设置成已有颜色。
图3-1是其系统框图:
在这里插入图片描述

图3-1系统框图

3.2 STM32单片机核心电路设计
STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗,而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易,在医疗器械中应用广泛,具有很好的学习、实验研究价值。
STM32的主要优点:
(1)使用ARM最新的、先进架构的Cortex-M3内核
(2) 优异的实时性能
(3) 杰出的功耗控制
(4) 出众及创新的外设
(5) 最大程度的集成整合
(6) 易于开发,可使产品快速将进入市场
STM32—最佳的平台选项
对于使用同一平台进行多个项目开发而言,STM32是最佳的选择:
(1) 从仅需少量的存储空间和管脚应用到需要更多的存储空间和管脚的应用
(2) 从苛求性能的应用到电池供电的应用
(3) 从简单而成本敏感的应用到高端应用
(4) 全系列脚对脚、外设及软件的高度兼容性,给您带来全方位的灵活性。您可以在不必修改您原始框架及软件的条件下,将您的应用升级到需要更多存储空间或精简到使用更少存储空间/ 或改用不同的封装的规格。
单片机也就是我们经常说的单片小型计算机。经常用在控制领域中。是微型计算机的非常重要的一部分。在我们日常生活中经常用来进行控制。单片机主要是由内部单块集成电路构成。内部最为重要的就是包含了cpu处理芯片也就是中央处理器、IO口和存储器。我们只需要用相应的编译器烧写程序就可以实现对外围器件的控制。对单片机的选型设计是以STM32F103C8T6核心板。STM32单片机是一个低电压,高性能微处理和快速可擦除字节。它非常简单,方便,易于使用。在医疗机构和工业生产中广泛应用于实时控制、停车场、计算机外围设备和通信设备等各个领域。
想要实现系统功能,就必须完成单片机与电路或外部功能信息交流。这时就需要用到管脚将它们相连接达到通连的效果,同时我们也称管脚将单片机的外特性表现出来。科技的进步,单片机也更加注重体积和外观了,所以科学家想出了让很多引脚是双功能或多功能的。
STM32特点:
工作频率 (MHz) 48  
16-bit 定时器 8
32-bit 定时器 1
A/D 转换器 1x12-bit
D/A 转换器 1x12-bit
通信接口 1xSPI/I2S;1xSPI; 2xI2C;2xUSART;CEC
I/Os 39
电压 (V) 2 to 3.6
STM32F103是STM32f101的增强型单片机,在32位的MCU中性能最强;具有出众的控制和通讯,非常适合低电压/低功耗的应用场合。下图为STM32内核
STM32103基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。时钟频率达到72MHz,是同类产品中性能最高的产品;内置32K到128K的闪存,闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。STM32有4个P口;SPI-NSS片选,使能。
SPI-MISO数据输出;SPI-SCK时钟线;SPI-MOSI数据输入。
STM32单片机复位:复位电路的作用是为了是系统恢复到初始状态的,单片机的复位方式也是存在好几种的:上电复位,系统复位,备份区域复位。上电复位:其产生的条件是,当系统上电、掉电,以及系统从待机模式返回时,发生电源复位。电源复位能够复位除了备份区域寄存器之外的所有寄存器的状态。系统复位:以下任一事件发生时,均能产生一个系统复位:
1.NRST引脚上的低电平(外部复位)
2. 窗口看门狗计数终止(WWDG复位)
3. 独立看门狗计数终止(IWDG复位)
4. 软件复位(SW复位)
5. 低功耗管理复位
STM32单片机震荡电路:首先要明确的是STM32没有内部晶振,HSI是内部RC振荡器。HSI内部8MHz的RC振荡器的误差在1%左右,内部RC振荡器的精度通常比用HSE(外部晶振)要差上十倍以上。没所谓优缺点,最重要的是根据应用场合,对时钟要求不高时也是可以用HSI的,要注意的是当用HSI时,最高系统时钟的频率是达不到72MHz的。STM32的ISP就是用(HSI)内部RC振荡器。
STM32F103单片机是一款低功耗、高性能的微控制器。其作用是控制各种传感器和外设,自行计算处理得到的数据和信号,并进行相应的操作,在工业生产中起到大脑的作用。相比于日常生活中使用的电脑,单片机只能称得上微小电路集成系统,能起到的作用非常有限,只能处理一些简单的控制工作。单片机的应用非常广泛,绝大部分电器都是采用单片机进行控制,家里的大家电,比如冰箱、空调、洗衣机、电视机,小到遥控器、鼠标、键盘、闹钟。其里面都包含一个或者多个单片机。单片机广泛应用于仪表仪器,航空航天,家用电器和医用设备上。智能设备的发展也非常依赖单片机,多样化的传感器对单片机也提出了一定的要求,故此越来越多的高级的单片机成出现。
我们选择单片机是STM32F103C8T6单片机。此单片机和51系列相比多了很多功能,不但运行速度比51单片机要快很多,自带多个AD转换,方便我们在设计模拟量检测的时候免去了需要加外部ADC进行转换,非常方便;
STM32有着很强大的通信功能和控制功能。这一点是51单片机无法比拟的。因为51单片机只有1个串口进行通信,而32单片机具有3个串口进行通信,所以对一些要求用串口进行通信的模块而且就不需要通过CD4052等双串口模块来转换,所以这一点被市场上广泛的运用,32单片机因为本身可以进行多种不同的时钟模数来进行工作,所以在功耗要求比较严格的产品中占有一席之地。
STM32特点:
1.STM32F103C8T6系列的起振晶部分采用了RTC,低负载的方式,而没有像传统的比较廉价的圆柱晶振。
2.引脚个数为48个。
3.工作频率为72MHZ。
4.单片机具有3个普通定时器和1个高级定时器。
5.单片机具有2个2位/16通道的ADC模数转换。
6.使用了3.3V稳压芯片,可以保证最大输出300MA电流。
7.支持ST-LINK和JTAG调试下载。
8.存储资源为64kb byte FLASH和20byte Sram。
在这里插入图片描述

STM32F103C8T6单片机引脚图

3.3 按键电路设计
轻触按键是按键产品下属的一款分类产品,它其实相当于是一种电子开关,只要轻轻的按下按键就可以是开关接通,松开时是开关就断开连接,实现原理主要是通过轻触按键内部的金属弹片受力弹动来实现接通和断开的。在本系统中,按键作为系统的输入,起到了人机交互的枢纽作用。按键的单片机控制引脚默认为高电平,当按键按下后,单片机的相关引脚则变成低电平。进而实现对系统的手动输入。注意,按键个数可变。其电路原理图如下图所示。

按键电路原理图
3.4 JDY-31蓝牙模块电路设计
蓝牙模块是指集成蓝牙功能的芯片基本电路集合,用于无线网络通讯。本蓝牙模块就是为了只能无线数据传输而专门打造的,本模块支持串行接口,支持SP蓝牙串口协议,具有成本低、体积小、收发灵敏性高等特点,只需配备少许的外围元件就能实现大功能。
一、模块特点
(1)支持蓝牙 SPP 串口协议
(2)内置 PCB 天线
(3)支持 UART 接口
(4)蓝牙 Class 2
(5)数据传输比 BLE 蓝牙快、可达到 8K 每秒以上的速率
(6)支持与 SPP 主蓝牙模块连接通信(JDY-30 为从 SPP 蓝牙模块)
(7)支持与电脑 SPP 蓝牙通信
(8)支持 Android 手机 SPP 通信
二、产品应用范围
(1) POS 机
(2)蓝牙打印机
(3)蓝牙玩具
(4)蓝牙高速数据传输产品应用
(5)小家电
(6)汽车电子
三、模块技术参数
(1)工作电压:3.3V-6V
(2)工作温度:-40℃-85℃
(3)天线:PCB板载天线
(4)功耗:19mA
四、模块接口说明
(1)RXD 串口输入,电平为TTL电平
(2)TXD 串口输出,电平为TTL电平
(3)GND 接GND
(4)VCC 接3.3V-6V
蓝牙模块接口电路图如下图所示。
在这里插入图片描述

蓝牙模块电路原理图
蓝牙模块实物图如下图所示。
在这里插入图片描述

蓝牙模块实物图

5.系统调试

5.1 电路焊接
手工焊接是常用原始的焊接方法,目前大量工厂焊接的生产基本上不采用原始方法了,但是普通元器件的修理、系统测试中经常使用原始的手工焊接。重要的是如焊接本质上出现问题,则会影响到整个控制系统的,可以这么说,焊接的会导致这个控制系统可不可以用的。手工焊接主要有如下四步组成的:
第一步开始焊接:
需要把需要焊接的地方打扫干净,主要去处油迹和灰尘,然后把需要焊接的元器件的两个角向一定的方向掰一掰,注意不能把元器件的脚相交在一起了,这样会影响焊接的。接下来让电烙铁头碰到需要焊接的元器件脚下,放上焊锡丝。此处需要注意的是,不能让烙铁头碰到其它元器件的脚了,要不然会把两个元器件焊接在一起了。
第二步给焊接升温:
当在完成第一步以后,接下来就是加热焊锡丝了,主要是将烧热的电烙铁放在器件管脚旁边,慢慢融化焊锡丝,需要注意电洛铁的温度和加热时间,若时间过长,很有可能焊坏面包板焊盘的,一般建议电洛铁温度调整在400。C左右,加热2秒钟左右,例外也要根据器件种类作出具体区别的。在焊接过程中,当需要把焊接好的元器件卸下来,则也需要给焊接处进行加热的,主要操作是首先在焊接处补好焊锡丝,使焊点是圆润的,然后用电洛铁在焊接处进行加热,在加热的过程中就可以直接把元器件卸下来了,此时一定要主要时间,要不然也会损坏焊盘的
第三部清理焊接面:
当在完成第二步时,有的时候会观察到焊接的不完美或者担心出现虚焊情况,这时候需要进行修改的。主要是两种情况的,第一种是焊锡不够,焊接点不圆润,这时需要给焊接处补焊锡,此时需要注意的是焊锡量不能补多,要不然容易连接到其它期间的引脚的。第二种是焊锡过多,这时候可以用电洛铁放在焊接处来回的滑动,会把多余的焊锡带走的,若不行,只能使用吸锡器了。
第四部检查焊点:
当完成以上三步了,最后就需要整体观察了,主要是观看焊接点是不是圆满、亮度好、紧固,有没有与其它管脚相连在一起了。
5.2 系统调试
整体系统上电调试前,大概观察下焊接的系统还存在问题,例如还有很显眼的断裂,正负极接反以及相连、虚焊、等问题,然后用万用表检测一下,电源正负极之间是否短路等严重的电源问题,最终保证系统没有问题。
5.2.1 系统程序调试
(1)在Keil软件中先创建一个工程:单击菜单栏中的“工程”,输入新建工程名,并保存。
(2)新建用户源文件:在新建的空白文本中编写程序源代码,编码完成保存文件并文件拓展名“***.c”,新文件创建完成。
(3)程序编译和调试:单击编译按钮,系统会对文件进行运行,在输出窗口中可看到提示信息,如过窗口显示有error信息,则按提示找出错误并改正,直到提示没有错误提示为止。
(4)程序编译无错误后,进入程序调试状态,可查看单片机资源状态,进行断点等方式调试。
5.2.2硬件测试
最后一步就是硬件整体测试了,主要运用万用表、直流电源和示波器对焊接好的板子进行整体调试,主要检查每一个器件是不是都正常工作了,主要分为两个环节动态调试和静态调试。其中静态调试主要分为以下四种:
1、肉眼观察。主要观看焊接点是否饱满,以及相连器件之间是否相连或者器件管脚没有焊接好,出现短路现象。
2、使用万用表调试。首先查看电源是否短路,然后测量管脚是否连接正确,有没有接线错误。
3、上电检查。在完成第一步和第二步都没有问题,接下来就可以上电了,上电以后观看每个器件是否正常工作,然后在逐一测试功能。

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐