《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 解決方案 > 通過藍(lán)牙控制智能LED調(diào)光器

通過藍(lán)牙控制智能LED調(diào)光器

2019-07-31

引言

本應(yīng)用筆記介紹了如何使用Dialog GreenPAK? SLG46620V創(chuàng)建調(diào)光器" target="_blank">智能數(shù)字調(diào)光器設(shè)計(jì),。調(diào)光器是住宅、酒店和許多建筑中常用的照明開關(guān)。較舊版本的調(diào)光開關(guān)是手動(dòng)的,,一般包含一個(gè)旋轉(zhuǎn)開關(guān)(電位計(jì))或多個(gè)按鈕來控制照明水平。本應(yīng)用筆記介紹了如何創(chuàng)建可以通過兩種方法(智能手機(jī)和物理按鈕)控制照明亮度的數(shù)字調(diào)光器,。這兩種模式可以無縫地協(xié)同工作,,用戶可以通過按鈕或智能手機(jī)來調(diào)高或調(diào)低照明亮度。該項(xiàng)目采用了SLG46620V 可配置混合信號(hào)IC(CMIC),、HC-06藍(lán)牙模塊,、按鈕和LED。

我們將使用SLG46620V CMIC,,它有助于將分立器件數(shù)量降到最少,。GreenPAK IC體積小,含有多用途組件,,有助于設(shè)計(jì)人員減少產(chǎn)品設(shè)計(jì)的元件數(shù)量和增加新功能,。此外,項(xiàng)目的成本也隨之降低,。SLG46620V這顆小巧的芯片中包含一個(gè)SPI連接接口,、多個(gè)PWM模塊、有限狀態(tài)機(jī)(FSM)以及很多有用的附加模塊,。這些組件有助于設(shè)計(jì)工程師創(chuàng)建可以通過藍(lán)牙設(shè)備或墻壁按鈕進(jìn)行控制的實(shí)用智能調(diào)光器,,支持延時(shí)調(diào)光,并提供額外的可選功能,,而無需使用微控制器或昂貴的元件,。

項(xiàng)目特點(diǎn):

1. 兩種控制方法:移動(dòng)app和實(shí)體按鈕

2. 平滑的燈光開關(guān)過渡。這對(duì)消費(fèi)者來說更健康,,也給人一種更豪華的感覺,,這對(duì)酒店和其他服務(wù)行業(yè)很有吸引力。

3. 睡眠模式功能,。這是此應(yīng)用的一項(xiàng)附加價(jià)值,,當(dāng)用戶開啟這個(gè)模式時(shí),燈光亮度會(huì)在10分鐘內(nèi)逐漸降低,。這有助于患有失眠癥的人,,它也適用于兒童臥室和零售店(關(guān)閉時(shí))。

項(xiàng)目界面

該項(xiàng)目界面有四個(gè)按鈕,,作為GreenPAK輸入:

開/關(guān):打開和關(guān)閉燈光(軟啟動(dòng)/關(guān)閉)

調(diào)亮:調(diào)高燈光亮度

調(diào)暗:調(diào)低燈光亮度

睡眠模式:開啟睡眠模式時(shí),,燈光亮度會(huì)在10分鐘內(nèi)逐漸降低,。這給用戶睡前一些時(shí)間,并確保燈光不會(huì)整夜都亮著,。

系統(tǒng)將輸出一個(gè)PWM信號(hào),,該信號(hào)將傳送到外部LED和睡眠模式LED指示燈。

1.jpg

GreenPAK芯片

圖1:調(diào)光器框圖

該GreenPAK設(shè)計(jì)由4個(gè)主要功能塊組成,。第一個(gè)是UART接收器,,它從藍(lán)牙模塊接收數(shù)據(jù),提取命令,,并將它們發(fā)送到控制單元,。第二個(gè)功能塊是一個(gè)控制單元,它接收來自UART接收器或外部按鈕的命令,??刂茊卧獩Q定所需的操作(打開/關(guān)閉、調(diào)亮,、調(diào)暗,、啟用睡眠模式)。該單元使用LUT實(shí)現(xiàn),。

第三個(gè)功能塊是時(shí)鐘(CLK)發(fā)生器,。在此項(xiàng)目中,采用了一個(gè)FSM計(jì)數(shù)器來控制PWM,。FSM的值將根據(jù)3個(gè)頻率(高,、中和低)給出的命令而變化(升高、降低),。在這個(gè)部分中,,將生成三個(gè)頻率,所需的時(shí)鐘信號(hào)根據(jù)要求的順序傳輸給FSM,;在打開/關(guān)閉操作時(shí),,高頻信號(hào)傳輸?shù)紽SM來進(jìn)行軟啟動(dòng)/停止。在調(diào)光期間,,中頻信號(hào)通過,。低頻信號(hào)在睡眠模式通過,從而更慢速地降低FSM值,。然后,,燈光亮度也會(huì)緩慢下降。第四個(gè)功能塊是PWM單元,,它向外部LED生成脈沖,。

GreenPAK設(shè)計(jì)

使用GreenPAK創(chuàng)建調(diào)光器設(shè)計(jì)的最佳方法是使用8 bit FSM和一個(gè)PWM。在SLG46620中,F(xiàn)SM1包含8 bits,,可與PWM1和PWM2一起使用,。必須連接藍(lán)牙模塊,這意味著必須使用SPI并行輸出,。SPI并行輸出bits 0到7連接與DCMP1,、DMCP2和LF OSC CLK、OUT1,、OUT0 OSC輸出復(fù)用,。PWM0從FSM0(16 bits)獲得其輸出。FSM0不會(huì)停在255,;它可以增加到16383,。為了將計(jì)數(shù)器值限制在8 bits,,增加了另一個(gè)FSM,;FSM1用來指示計(jì)數(shù)器何時(shí)達(dá)到0或255。FSM0用于生成PWM脈沖,。由于必須同時(shí)更改兩個(gè)FSM的值來確保它們具有相同的值,,因此設(shè)計(jì)變得有點(diǎn)復(fù)雜,兩個(gè)FSM都具有預(yù)定義的,、有限的,、可選CLK。使用CNT1和CNT3作為介體將時(shí)鐘信號(hào)傳送到兩個(gè)FSM,。

設(shè)計(jì)包含以下部分:

1.UART接收器

首先,,我們需要設(shè)置HC06藍(lán)牙模塊。HC06使用UART協(xié)議進(jìn)行通信,。UART代表通用異步接收器/發(fā)射器,。UART可以在并行和串行格式之間來回轉(zhuǎn)換數(shù)據(jù)。它包括一個(gè)串行到并行接收器和一個(gè)并行到串行轉(zhuǎn)換器,,它們的時(shí)鐘是分開的,。HC06中接收到的數(shù)據(jù)將傳輸?shù)轿覀兊腉reenPAK器件。引腳10的空閑狀態(tài)為HIGH,。發(fā)送的每串?dāng)?shù)據(jù)都以邏輯低啟動(dòng)位,隨后是可配置數(shù)量的數(shù)據(jù)位,,以及一個(gè)或多個(gè)邏輯高停止位,。

HC06發(fā)送1個(gè)起始位、8個(gè)數(shù)據(jù)位和一個(gè)停止位,。它的默認(rèn)波特率是9600,。我們將從HC06發(fā)送數(shù)據(jù)字節(jié)到GreenPAK SLG46620V的SPI模塊。

由于Silego SPI模塊沒有起始位或停止位控制,因此這些位用于使能和禁用SPI時(shí)鐘信號(hào)(SCLK),。當(dāng)引腳10變?yōu)長(zhǎng)OW時(shí),,IC已經(jīng)接收到一個(gè)起始位,所以我們使用PDLY下降沿檢測(cè)器來識(shí)別通信的開始,。該下降沿檢測(cè)器為DFF0提供時(shí)鐘,,使SCLK信號(hào)能夠?yàn)镾PI模塊提供時(shí)鐘。

我們的波特率為每秒9600位,,所以我們的SCLK周期是1/9600 = 104 μs,。因此,我們將OSC頻率設(shè)置為2 MHz,,并使用CNT0作為分頻器,。

2 MHz-1 = 0.5 μs

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

因此,我們希望CNT0計(jì)數(shù)器值為207,。為確保不丟失數(shù)據(jù),,在SPI時(shí)鐘上增加半個(gè)時(shí)鐘周期延遲,從而SPI功能塊在正確的時(shí)間進(jìn)行計(jì)時(shí),。這是通過使用CNT6,、2-bit LUT1和OSC模塊的外部時(shí)鐘來實(shí)現(xiàn)的。CNT6的輸出在DFF0計(jì)時(shí)52 μs后才會(huì)變高,,這恰好是我們SCLK周期104 μs的一半,。當(dāng)它變高時(shí),2-bit LUT1 與門允許2 MHz OSC信號(hào)進(jìn)入EXT. CLK0輸入,,其輸出連接到CNT0,。

2.jpg 


圖2:UART接收器

2.控制單元

在這部分中,將根據(jù)UART接收器接收的字節(jié)或根據(jù)來自外部按鈕的信號(hào)執(zhí)行命令,。引腳12,、13、14,、15被初始化為輸入,,并連接到外部按鈕。

每個(gè)引腳內(nèi)部連接到OR門輸入,,門的第二個(gè)輸入端通過藍(lán)牙連接來自智能手機(jī)的相應(yīng)信號(hào),該信號(hào)將出現(xiàn)在SPI并行輸出上,。

DFF6用于激活睡眠模式,,其輸出變?yōu)楦撸仙貋碜?-bit LUT4,,而DFF10用于維持照明狀態(tài),,其輸出從低變?yōu)楦?,?dāng)每個(gè)上升沿來自3-bit LUT10輸出時(shí)反之亦然。

FSM1是一個(gè)8-bit計(jì)數(shù)器,;當(dāng)它的值達(dá)到0或255時(shí),它在輸出上給出一個(gè)高脈沖,。因此,它用于防止FSM0(16-bit)的值超過255,,它的輸出復(fù)位DFF,,并且它將DFF10狀態(tài)從開啟變?yōu)殛P(guān)閉,。如果照明由按鈕 + 和 - 控制,,并且已達(dá)到最大/最小值,亦是這樣,。

連接到FSM1輸入的信號(hào)keep、up將通過P11和P12到達(dá)FSM0,,以保持同步,,在兩個(gè)計(jì)數(shù)器上保持相同的值。

3.jpg

圖3:控制單元設(shè)計(jì)

3.時(shí)鐘發(fā)生器和復(fù)用器

在這部分中,,將生成三個(gè)頻率,但只有一個(gè)頻率將在任一時(shí)候?yàn)镕SM計(jì)時(shí),。第一個(gè)頻率是RC OSC,,它從矩陣0到P0取出。第二頻率是LF OSC,,它也從矩陣0到P1取出,。第三個(gè)頻率是CNT7輸出。

根據(jù)3-bit LUT14輸出,,3-bit LUT9和3-bit LUT11允許一個(gè)頻率通過,。之后,所選擇的時(shí)鐘通過CNT1和CNT3發(fā)送到FSM0和FSM1,。

4.jpg

圖4:時(shí)鐘發(fā)生器設(shè)計(jì)

4. PWM

最后,,F(xiàn)SM0值轉(zhuǎn)換為PWM信號(hào),通過引腳20出現(xiàn),,引腳20初始化為輸出,,并連接到外部LED。

5.jpg

圖5:PWM功能塊

安卓app

安卓app具有類似于真實(shí)界面的虛擬控制界面,。它有五個(gè)按鈕:ON/OFF,、UP、DOWN,、睡眠模式和連接,。該安卓應(yīng)用程序?qū)粹o按動(dòng)操作轉(zhuǎn)換為命令,并將命令發(fā)送到藍(lán)牙模塊來執(zhí)行,。

這個(gè)app是用MIT App Inventor制作的,,不需要任何編程經(jīng)驗(yàn)。App Inventor允許開發(fā)人員使用網(wǎng)頁瀏覽器連接編程模塊來為安卓OS設(shè)備創(chuàng)建應(yīng)用程序,。您可以將我們的App導(dǎo)入MIT App Inventor,,具體步驟為:?jiǎn)螕粑业挠?jì)算機(jī)上的項(xiàng)目 - > 導(dǎo)入項(xiàng)目(.aia),然后選擇此App Note中包含的.aia文件,。

要?jiǎng)?chuàng)建安卓應(yīng)用程序,,必須啟動(dòng)新項(xiàng)目。需要五個(gè)按鈕:一個(gè)是藍(lán)牙設(shè)備的列表選擇器,,其他是控制按鈕,。我們還需要添加藍(lán)牙客戶端。圖6是我們的安卓app用戶界面的截屏,。

添加按鈕后,,我們將為每個(gè)按鈕分配軟件功能。我們將使用4 bits來代表按鈕的狀態(tài),。每個(gè)按鈕一個(gè)bit,, 因此,當(dāng)您按下按鈕時(shí),,一個(gè)特定的數(shù)字將通過藍(lán)牙發(fā)送到實(shí)際電路,。

6.jpg

圖6:按鈕的編程模塊

這些數(shù)字如表1所示:

表1:指令-Bit表示

QQ截圖20190731174539.jpg

7.jpg

圖7:按鈕編程模塊

8.jpg

圖8:電路原理圖

9.jpg

圖9:原型界面

總結(jié)

本應(yīng)用筆記介紹了一種可以通過兩種方式(安卓app和實(shí)體按鈕)控制的智能調(diào)光器。介紹了GreenPAK SLG46620V內(nèi)部四個(gè)獨(dú)立的功能塊,,用于控制增加或減少燈光PWM的工作流程,。此外,還介紹了睡眠模式功能,,作為該應(yīng)用中可選的額外調(diào)制的示例,,該示例是低電壓的,也可以更改成高電壓的功能,。

術(shù)語和定義

CMIC:可配置混合信號(hào)IC(Configurable Mixed-Signal Integrated Circuits)

UART:通用異步收發(fā)器(Universal asynchronous receiver-transmitter)

LED:發(fā)光二極管(Light-emitting diode)

SPI:串行外設(shè)接口(Serial Peripheral Interface)

PWM:脈沖寬度調(diào)制(Pulse-width modulation)

FSM:有限狀態(tài)機(jī)(Finite-state machine)

LUT:查找表(Look-up table)

DFF:D觸發(fā)器(D-type flip-flop)


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。