新聞中心

EEPW首頁 > 光電顯示 > 設計应用 > 瑞彩祥云

瑞彩祥云

作者:時間:2019-07-31來源:電子産品世界收藏

術語和定義

本文引用地址:/article/201907/403283.htm

CMIC:可配置混合信号IC(Configurable Mixed-Signal Integrated Circuits)

UART:通用异步收发器(Universal asynchronous receiver-transmitter)

LED:发光二极管(Light-emitting diode)

SPI:串行外设接口(Serial Peripheral Interface)

PWM:脉冲宽度调制(Pulse-width modulation)

FSM:有限状态机(Finite-state machine)

LUT:查找表(Look-up table)

DFF:D触发器(D-type flip-flop)

引言

本应用笔记介绍了如何使用Dialog GreenPAK? SLG46620V创建智能数字调光器設計。调光器是住宅、酒店和许多建筑中常用的照明开关。较旧版本的调光开关是手动的,一般包含一个旋转开关(电位计)或多个按钮来控制照明水平。本应用笔记介绍了如何创建可以通过两种方法(智能手机和物理按钮)控制照明亮度的数字调光器。这两种模式可以无缝地协同工作,用户可以通过按钮或智能手机来调高或调低照明亮度。该项目采用了SLG46620V 可配置混合信号IC(CMIC)、HC-06藍牙模块、按钮和LED。

我们将使用SLG46620V CMIC,它有助于将分立器件数量降到最少。GreenPAK IC体积小,含有多用途组件,有助于設計人员减少产品設計的元件数量和增加新功能。此外,项目的成本也随之降低。SLG46620V这颗小巧的芯片中包含一个SPI连接接口、多个PWM模块、有限状态机(FSM)以及很多有用的附加模块。这些组件有助于設計工程师创建可以通过藍牙设备或墙壁按钮进行控制的实用智能调光器,支持延时调光,并提供额外的可选功能,而无需使用微控制器或昂贵的元件。

項目特點:

1.兩種控制方法:移動app和實體按鈕

2.平滑的燈光開關過渡。這對消費者來說更健康,也給人一種更豪華的感覺,這對酒店和其他服務行業很有吸引力。

3.睡眠模式功能。這是此應用的一項附加價值,當用戶開啓這個模式時,燈光亮度會在10分鍾內逐漸降低。這有助于患有失眠症的人,它也適用于兒童臥室和零售店(關閉時)。

項目界面

该項目界面有四个按钮,作为GreenPAK输入:

開/關:打開和關閉燈光(軟啓動/關閉)

調亮:調高燈光亮度

調暗:調低燈光亮度

睡眠模式:開啓睡眠模式時,燈光亮度會在10分鍾內逐漸降低。這給用戶睡前一些時間,並確保燈光不會整夜都亮著。

系統將輸出一個PWM信號,該信號將傳送到外部LED和睡眠模式LED指示燈。

GreenPAK芯片

1564564302167940.png

圖1:調光器框圖

该GreenPAK設計由4个主要功能块组成。第一个是UART接收器,它从藍牙模块接收数据,提取命令,并将它们发送到控制单元。第二个功能块是一个控制单元,它接收来自UART接收器或外部按钮的命令。控制单元决定所需的操作(打开/關閉、调亮、调暗、启用睡眠模式)。该单元使用LUT实现。

第三個功能塊是時鍾(CLK)發生器。在此項目中,采用了一個FSM計數器來控制PWM。FSM的值將根據3個頻率(高、中和低)給出的命令而變化(升高、降低)。在這個部分中,將生成三個頻率,所需的時鍾信號根據要求的順序傳輸給FSM;在打開/關閉操作時,高頻信號傳輸到FSM來進行軟啓動/停止。在調光期間,中頻信號通過。低頻信號在睡眠模式通過,從而更慢速地降低FSM值。然後,燈光亮度也會緩慢下降。第四個功能塊是PWM單元,它向外部LED生成脈沖。

GreenPAK設計

使用GreenPAK创建调光器設計的最佳方法是使用8 bit FSM和一个PWM。在SLG46620中,FSM1包含8 bits,可与PWM1和PWM2一起使用。必须连接藍牙模块,这意味着必须使用SPI并行输出。SPI并行输出bits 0到7连接与DCMP1、DMCP2和LF OSC CLK、OUT1、OUT0 OSC输出复用。PWM0从FSM0(16 bits)获得其输出。FSM0不会停在255;它可以增加到16383。为了将计数器值限制在8 bits,增加了另一个FSM;FSM1用来指示计数器何时达到0或255。FSM0用于生成PWM脉冲。由于必须同时更改两个FSM的值来确保它们具有相同的值,因此設計变得有点复杂,两个FSM都具有预定义的、有限的、可选CLK。使用CNT1和CNT3作为介体将时钟信号传送到两个FSM。

設計包含以下部分:

1.UART接收器

首先,我們需要設置HC06藍牙模塊。HC06使用UART協議進行通信。UART代表通用異步接收器/發射器。UART可以在並行和串行格式之間來回轉換數據。它包括一個串行到並行接收器和一個並行到串行轉換器,它們的時鍾是分開的。HC06中接收到的數據將傳輸到我們的GreenPAK器件。引腳10的空閑狀態爲HIGH。發送的每串數據都以邏輯低啓動位,隨後是可配置數量的數據位,以及一個或多個邏輯高停止位。

HC06发送1个起始位、8个数据位和一个停止位。它的默认波特率是9600。我们将从HC06发送数据字节到GreenPAK SLG46620V的SPI模块。

由于Silego SPI模块没有起始位或停止位控制,因此这些位用于使能和禁用SPI时钟信号(SCLK)。当引脚10变为LOW时,IC已经接收到一个起始位,所以我们使用PDLY下降沿检测器来识别通信的开始。该下降沿检测器为DFF0提供时钟,使SCLK信号能够为SPI模块提供时钟。

我们的波特率为每秒9600位,所以我们的SCLK周期是1/9600 = 104 ?s。因此,我们将OSC频率设置为2 MHz,并使用CNT0作为分频器。

2 MHz-1 = 0.5 ?s

(104 ?s / 0.5 ?s) - 1 = 207

因此,我们希望CNT0计数器值为207。为确保不丢失数据,在SPI时钟上增加半个时钟周期延迟,从而SPI功能块在正确的时间进行计时。这是通过使用CNT6、2-bit LUT1和OSC模块的外部时钟来实现的。CNT6的输出在DFF0计时52 ?s后才会变高,这恰好是我们SCLK周期104 ?s的一半。当它变高时,2-bit LUT1 与门允许2 MHz OSC信号进入EXT. CLK0输入,其输出连接到CNT0。

1564564319699655.png

圖2:UART接收器

2.控制單元

在這部分中,將根據UART接收器接收的字節或根據來自外部按鈕的信號執行命令。引腳12、13、14、15被初始化爲輸入,並連接到外部按鈕。

每個引腳內部連接到OR門輸入,門的第二個輸入端通過藍牙連接來自智能手機的相應信號,該信號將出現在SPI並行輸出上。

DFF6用于激活睡眠模式,其输出变为高,上升沿来自2-bit LUT4,而DFF10用于维持照明状态,其输出从低变为高,当每个上升沿来自3-bit LUT10输出时反之亦然。

FSM1是一个8-bit计数器;当它的值达到0或255时,它在输出上给出一个高脉冲。因此,它用于防止FSM0(16-bit)的值超过255,它的输出复位DFF,并且它将DFF10状态从开启变为關閉。如果照明由按钮 + 和 - 控制,并且已达到最大/最小值,亦是这样。

連接到FSM1輸入的信號keep、up將通過P11和P12到達FSM0,以保持同步,在兩個計數器上保持相同的值。

1564564334820101.png

图3:控制单元設計

3.時鍾發生器和複用器

在这部分中,将生成三个频率,但只有一个频率将在任一时候为FSM计时。第一个频率是RC OSC,它从矩阵0到P0取出。第二频率是LF OSC,它也从矩阵0到P1取出。第三个频率是CNT7输出。

根据3-bit LUT14输出,3-bit LUT9和3-bit LUT11允许一个频率通过。之后,所选择的时钟通过CNT1和CNT3发送到FSM0和FSM1。

1564564349642831.png

图4:时钟发生器設計

4. PWM

最後,FSM0值轉換爲PWM信號,通過引腳20出現,引腳20初始化爲輸出,並連接到外部LED。

1564564366901136.png

圖5:PWM功能塊

安卓app

安卓app具有類似于真實界面的虛擬控制界面。它有五個按鈕:ON/OFF、UP、DOWN、睡眠模式和連接。該安卓應用程序將按鈕按動操作轉換爲命令,並將命令發送到藍牙模塊來執行。

这个app是用MIT App Inventor制作的,不需要任何编程经验。App Inventor允许开发人员使用网页浏览器连接编程模块来为安卓OS设备创建应用程序。您可以将我们的App导入MIT App Inventor,具体步骤为:单击我的计算机上的项目 - > 导入项目(.aia),然后选择此App Note中包含的.aia文件。

要創建安卓應用程序,必須啓動新項目。需要五個按鈕:一個是藍牙設備的列表選擇器,其他是控制按鈕。我們還需要添加藍牙客戶端。圖6是我們的安卓app用戶界面的截屏。

添加按钮后,我们将为每个按钮分配软件功能。我们将使用4 bits来代表按钮的状态。每个按钮一个bit, 因此,当您按下按钮时,一个特定的数字将通过藍牙发送到实际電路。

Fig 6.png

圖6:按鈕的編程模塊

這些數字如表1所示:

表1:指令-Bit表示

1564564399113860.png

1564564415430768.png

圖7:按鈕編程模塊

1564564431927965.png

图8:電路原理图

1564564445278477.png

圖9:原型界面

總結

本应用笔记介绍了一种可以通过两种方式(安卓app和实体按钮)控制的智能调光器。介绍了GreenPAK SLG46620V内部四个独立的功能块,用于控制增加或减少灯光PWM的工作流程。此外,还介绍了睡眠模式功能,作为该应用中可选的额外调制的示例,该示例是低电压的,也可以更改成高电压的功能。



評論


技術專區

關閉