你的位置:首頁 > 光電顯示 > 正文

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

發(fā)布時間:2023-01-20 責(zé)任編輯:lina

【導(dǎo)讀】本應(yīng)用筆記介紹了如何使用Dialog GreenPAK? SLG46620V創(chuàng)建智能數(shù)字調(diào)光器設(shè)計。調(diào)光器是住宅、酒店和許多建筑中常用的照明開關(guān)。較舊版本的調(diào)光開關(guān)是手動的,一般包含一個旋轉(zhuǎn)開關(guān)(電位計)或多個按鈕來控制照明水平。本應(yīng)用筆記介紹了如何創(chuàng)建可以通過兩種方法(智能手機(jī)和物理按鈕)控制照明亮度的數(shù)字調(diào)光器。


術(shù)語和定義


CMIC:可配置混合信號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)


引言


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


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


項目特點(diǎn):


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


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


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


項目界面


該項目界面有四個按鈕,作為GreenPAK輸入:


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

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

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


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


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


GreenPAK芯片


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

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


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


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


GreenPAK設(shè)計


使用GreenPAK創(chuàng)建調(diào)光器設(shè)計的最佳方法是使用8 bit FSM和一個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不會停在255;它可以增加到16383。為了將計數(shù)器值限制在8 bits,增加了另一個FSM;FSM1用來指示計數(shù)器何時達(dá)到0或255。FSM0用于生成PWM脈沖。由于必須同時更改兩個FSM的值來確保它們具有相同的值,因此設(shè)計變得有點(diǎn)復(fù)雜,兩個FSM都具有預(yù)定義的、有限的、可選CLK。使用CNT1和CNT3作為介體將時鐘信號傳送到兩個FSM。


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


1.UART接收器


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


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


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


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


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

圖2:UART接收器


2.控制單元


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


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


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


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


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


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

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


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


在這部分中,將生成三個頻率,但只有一個頻率將在任一時候為FSM計時。第一個頻率是RC OSC,它從矩陣0到P0取出。第二頻率是LF OSC,它也從矩陣0到P1取出。第三個頻率是CNT7輸出。


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


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

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


4. PWM


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


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

圖5:PWM功能塊


安卓app


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


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


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


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


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

圖6:按鈕的編程模塊


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


表1:指令-Bit表示


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

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

圖7:按鈕編程模塊


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

圖8:電路原理圖


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

圖9:原型界面


總結(jié)


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


免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。


推薦閱讀:

通過示波器測試SPC協(xié)議解碼

功率分析儀在IEC諧波的測試應(yīng)用

如何減少Wi-Fi搭載設(shè)備內(nèi)的噪聲問題?

高速電路PCB布線需要注意哪些問題?

現(xiàn)代功率因數(shù)PFC補(bǔ)償技術(shù)


特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉