通过蓝牙控制智能LED调光器 (蓝牙控制智能小车)
整理分享通过蓝牙控制智能LED调光器 (蓝牙控制智能小车),希望有所帮助,仅作参考,欢迎阅读内容。
内容相关其他词:通过蓝牙控制智能手表,蓝牙控制智能灯的app,蓝牙控制智能窗帘设计思路,蓝牙控制智能小车毕业设计,通过蓝牙控制智能家居,通过蓝牙控制智能家居,通过蓝牙控制智能手机,通过蓝牙控制智能家居,内容如对您有帮助,希望把内容链接给更多的朋友!
图1:调光器框图该GreenPAK设计由4个主要功能块组成。第一个是UART*,它从蓝牙模块接收数据,提取命令,并将它们发送到控制单元。第二个功能块是一个控制单元,它接收来自UART*或外部按钮的命令。控制单元决定所需的*作(打开/关闭、调亮、调暗、启用睡眠模式)。该单元使用LUT实现。第三个功能块是时钟(CLK)发生器。在此项目中,采用了一个FSM计数器来控制PWM。FSM的值将根据3个频率(高、中和低)给出的命令而变化(升高、降低)。在这个部分中,将生成三个频率,所需的时钟信号根据要求的顺序传输给FSM;在打开/关闭*作时,高频信号传输到FSM来进行软启动/停止。在调光期间,中频信号通过。低频信号在睡眠模式通过,从而更慢速地降低FSM值。然后,灯光亮度也会缓慢下降。第四个功能块是PWM单元,它向外部LED生成脉冲。GreenPAK设计使用GreenPAK创建调光器设计的最佳方法是使用8bitFSM和一个PWM。在SLG中,FSM1包含8bits,可与PWM1和PWM2一起使用。必须连接蓝牙模块,这意味着必须使用SPI并行输出。SPI并行输出bits0到7连接与DCMP1、DMCP2和LFOSCCLK、OUT1、OUT0OSC输出复用。PWM0从FSM0(bits)获得其输出。FSM0不会停在;它可以增加到。为了将计数器值*在8bits,增加了另一个FSM;FSM1用来指示计数器何时达到0或。FSM0用于生成PWM脉冲。由于必须同时更改两个FSM的值来确保它们具有相同的值,因此设计变得有点复杂,两个FSM都具有预定义的、有限的、可选CLK。使用CNT1和CNT3作为介体将时钟信号传送到两个FSM。设计包含以下部分:1.UART*首先,我们需要设置HC蓝牙模块。HC使用UART协议进行通信。UART代表通用异步*/发射器。UART可以在并行和串行格式之间来回转换数据。它包括一个串行到并行*和一个并行到串行转换器,它们的时钟是分开的。HC中接收到的数据将传输到我们的GreenPAK器件。引脚的空闲状态为HIGH。发送的每串数据都以逻辑低启动位,随后是可配置数量的数据位,以及一个或多个逻辑高停止位。HC发送1个起始位、8个数据位和一个停止位。它的默认波特率是。我们将从HC发送数据字节到GreenPAKSLGV的SPI模块。由于SilegoSPI模块没有起始位或停止位控制,因此这些位用于使能和禁用SPI时钟信号(SCLK)。当引脚变为LOW时,IC已经接收到一个起始位,所以我们使用PDLY下降沿*来识别通信的开始。该下降沿*为DFF0提供时钟,使SCLK信号能够为SPI模块提供时钟。我们的波特率为每秒位,所以我们的SCLK周期是1/=µs。因此,我们将OSC频率设置为2MHz,并使用CNT0作为分频器。2MHz-1=0.5µs(µs/0.5µs)-1=因此,我们希望CNT0计数器值为。为确保不丢失数据,在SPI时钟上增加半个时钟周期延迟,从而SPI功能块在正确的时间进行计时。这是通过使用CNT6、2-bitLUT1和OSC模块的外部时钟来实现的。CNT6的输出在DFF0计时µs后才会变高,这恰好是我们SCLK周期µs的一半。当它变高时,2-bitLUT1与门允许2MHzOSC信号进入EXT.CLK0输入,其输出连接到CNT0。图2:UART*2.控制单元在这部分中,将根据UART*接收的字节或根据来自外部按钮的信号执行命令。引脚、、、被初始化为输入,并连接到外部按钮。每个引脚内部连接到OR门输入,门的第二个输入端通过蓝牙连接来自智能定位器的相应信号,该信号将出现在SPI并行输出上。DFF6用于激活睡眠模式,其输出变为高,上升沿来自2-bitLUT4,而DFF用于维持照明状态,其输出从低变为高,当每个上升沿来自3-bitLUT输出时反之亦然。FSM1是一个8-bit计数器;当它的值达到0或时,它在输出上给出一个高脉冲。因此,它用于防止FSM0(-bit)的值超过,它的输出复位DFF,并且它将DFF状态从开启变为关闭。如果照明由按钮+和-控制,并且已达到最大/最小值,亦是这样。连接到FSM1输入的信号keep、up将通过P和P到达FSM0,以保持同步,在两个计数器上保持相同的值。图3:控制单元设计3.时钟发生器和复用器在这部分中,将生成三个频率,但只有一个频率将在任一时候为FSM计时。第一个频率是RCOSC,它从矩阵0到P0取出。第二频率是LFOSC,它也从矩阵0到P1取出。第三个频率是CNT7输出。根据3-bitLUT输出,3-bitLUT9和3-bitLUT允许一个频率通过。之后,所选择的时钟通过CNT1和CNT3发送到FSM0和FSM1。图4:时钟发生器设计4.PWM最后,FSM0值转换为PWM信号,通过引脚出现,引脚初始化为输出,并连接到外部LED。图5:PWM功能块安卓app安卓app具有类似于真实界面的虚拟控制界面。它有五个按钮:ON/OFF、UP、DOWN、睡眠模式和连接。该安卓应用程序将按钮按动*作转换为命令,并将命令发送到蓝牙模块来执行。这个app是用MITAppInventor制作的,不需要任何编程经验。AppInventor允许开发人员使用网页浏览器连接编程模块来为安卓OS设备创建应用程序。您可以将我们的App导入MITAppInventor,具体步骤为:单击我的计算机上的项目->导入项目(.aia),然后选择此AppNote中包含的.aia文件。要创建安卓应用程序,必须启动新项目。需要五个按钮:一个是蓝牙设备的列表选择器,其他是控制按钮。我们还需要添加蓝牙客户端。图6是我们的安卓app用户界面的截屏。添加按钮后,我们将为每个按钮分配软件功能。我们将使用4bits来代表按钮的状态。每个按钮一个bit,因此,当您按下按钮时,一个特定的数字将通过蓝牙发送到实际电路。图6:按钮的编程模块这些数字如表1所示:表1:指令-Bit表示图7:按钮编程模块图8:电路原理图图9:原型界面总结本应用笔记介绍了一种可以通过两种方式(安卓app和实体按钮)控制的智能调光器。介绍了GreenPAKSLGV内部四个*的功能块,用于控制增加或减少灯光PWM的工作流程。此外,还介绍了睡眠模式功能,作为该应用中可选的额外调制的示例,该示例是低电压的,也可以更改成高电压的功能。免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用*、图片、文字如涉及作品版权问题,请联系小编进行处理。推荐阅读:通过示波器测试SPC协议*功率分析仪在IEC谐波的测试应用如何减少Wi-Fi搭载设备内的噪声问题?高速电路PCB布线需要注意哪些问题?现代功率因数PFC补偿技术