一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

GreenPAK設計和安卓應用程序設計

z2Pt_Dia ? 來源:Dialog半導體公司 ? 作者:Dialog半導體公司 ? 2021-12-25 17:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

智能燈越來越受歡迎,并且正在穩(wěn)步成為智能家居的關鍵部分。智能燈使用戶能夠通過智能手機上的應用程序控制燈光,可以在APP界面打開和關閉燈,也可以調節(jié)顏色。在本文中,我們將介紹一個如何實現(xiàn)智能燈控制器的項目,可以手動按鈕或用移動APP通過藍牙進行控制。為了給這個項目增加一些特色,我們添加了一些功能,允許用戶從APP界面中包含的顏色列表中選擇照明顏色。還可以激活“自動混合”以產生彩色效果,也可以每半秒改變一次燈光。用戶可以使用PWM功能創(chuàng)建自己的顏色混合,該功能也可以用作三種基本顏色(紅色、綠色、藍色)的調光器。我們還在電路中添加了外部按鈕,以便用戶可以切換到手動模式并通過外部按鈕調換燈光顏色。

本文由兩部分組成:GreenPAK設計和安卓應用程序設計。GreenPAK設計基于使用UART接口進行通信。選擇UART是因為大多數(shù)藍牙模塊以及大多數(shù)其他外設(例如Wi-Fi模塊)都支持它。因此,GreenPAK設計可用于多種連接類型。

為了創(chuàng)建這個項目,我們將使用SLG46620 GreenPAK IC、一個藍牙模塊和一個RGB LED。

GreenPAK IC將是該項目的控制核心:它從藍牙模塊和/或外部按鈕接收數(shù)據(jù),然后開始所需的程序來顯示正確的照明。它還生成PWM信號并將其輸出到LED。下面的圖1展示了功能框圖。

該項目中使用的GreenPAK器件在單顆IC中包含了一個SPI連接接口、PWM功能塊、FSM和許多其他有用的附加功能塊。它還具有體積小、能耗低的特點。這使得制造商能用單個IC構建小型實用電路,從而降低生產成本。

在這個項目中,我們將控制一個RGB LED。為了使該項目具有商用可行性,系統(tǒng)可能需要通過并聯(lián)多個LED并使用適當?shù)?a target="_blank">晶體管來提高亮度等級;電源電路也需要考慮。我們對該項目完成了實現(xiàn)和檢驗。

GreenPAK設計

在GreenPAK Designer軟件中實現(xiàn)的設計由UART接收器、PWM單元和控制單元組成(完整的設計文件可從以下鏈接下載)。

https://www.dialog-semiconductor.com/sites/default/files/an-cm-273_gp.zip

a) UART接收器

首先,我們需要設置藍牙模塊。大多數(shù)藍牙IC支持UART協(xié)議進行通信。UART是通用異步收發(fā)傳輸器,可以將數(shù)據(jù)在并行和串行格式之間相互轉換。它包括一個串行到并行接收器,和一個并行到串行轉換器,它們都單獨計時。

藍牙模塊中接收到的數(shù)據(jù)將傳輸?shù)紾reenPAK器件。Pin10的空閑狀態(tài)為高(HIGH)。發(fā)送的每個字符都以邏輯“低起始位(Low Start bit)”開頭,然后是可配置數(shù)量的數(shù)據(jù)位(bit)和一個或多個邏輯“高停止位(High Stop bit)”。

UART發(fā)送器發(fā)送1個低起始位(Low Start bit)、8個數(shù)據(jù)位(bit)和1個高停止位(High Stop bit)。通常,藍牙模塊的UART默認波特率為9600。我們將從藍牙IC發(fā)送數(shù)據(jù)字節(jié)到GreenPAK。

由于GreenPAK SPI功能塊沒有低起始位(Low Start bit)或高停止位(High Stop bit)控制,我們將使用這些位(bit)來啟用和禁用SPI時鐘信號(SCLK)。當Pin10變低(LOW)時,我們知道我們收到了一個低起始位(Low Start bit),因此我們使用GreenPAK內部的PDLY配置為下降沿檢測器來識別通信的開始。該下降沿檢測器為GreenPAK內部的DFF0提供觸發(fā)時鐘,從而啟用SCLK信號為GreenPAK SPI功能塊提供時鐘。

我們將波特率設定為每秒9600 bit/s,對應SCLK周期為1/9600 = 104 μs。因此我們將OSC頻率設置為2MHz,并使用GreenPAK內部的CNT0配置為分頻器。為了使接收到的時鐘周期是104 μs,需要將CNT0計數(shù)值設定為2818。

參照圖2中GreenPAK內部的可配置單元圖示,為了確保不丟失任何數(shù)據(jù),我們需要將SPI時鐘延遲半個時鐘周期,以便SPI功能塊在正確的時間被計時。我們通過使用CNT6、2-bit LUT1和OSC功能塊的外部時鐘來實現(xiàn)這一點。CNT6的輸出直到DFF0被計時后52 μs才會變高,是該SPI的SCLK周期104 μs的一半。當CNT6為高(HIGH)時,配置為與門的2-bit LUT1允許時鐘信號(CLK Begin)進入OSC 的EXT. CLK0輸入,其輸出時鐘信號連接到CNT0的CLK端子。

b) PWM功能單元

參照圖3中GreenPAK內部的可配置單元圖示,PWM信號是使用PWM0和相應時鐘脈沖發(fā)生器(CNT8/DLY8)生成的。由于脈沖寬度是用戶可控的,我們使用FSM0(可以連接到PWM0)來統(tǒng)計用戶數(shù)據(jù)。

在SLG46620中,8-bit FSM1可以與PWM1和PWM2結合使用。需要連接藍牙模塊,即必須使用SPI并行輸出模塊。SPI并行輸出模塊的bit 0~7與DCMP1、DMCP2和LF OSC CLK的OUT1和OUT0組合。PWM0從16-bit FSM0獲得其輸出。如果不改變,這會導致脈沖寬度過載。為了將計數(shù)器值限制在8位(bits),我們添加了另一個FSM:FSM1用作提示計數(shù)器達到0或255的提示器。FSM0用于生成 PWM脈沖,因此FSM0和FSM1必須同步。由于兩個FSM都有預設的時鐘選項,因此CNT1和CNT3用作將CLK傳遞給兩個FSM的中間分頻媒介。這兩個計數(shù)器設置為相同的值,在本文中為25。我們可以通過改變這些計數(shù)器值來改變PWM值的變化率。

FSM的值由來自SPI并行輸出模塊的信號“+”和“-”來增加和減少。

c) 控制單元

參照圖4中GreenPAK內部的可配置單元圖示,在控制單元內,接收到的字節(jié)是從藍牙模塊獲取到SPI并行輸出,然后傳遞給相關的功能模塊。首先,將檢查PWM CS1和PWM CS2輸出,查看PWM模式是否被激活。如果它被激活,它將決定通過LUT4、LUT6和LUT7中的哪個通道輸出PWM。

LUT9、LUT11和LUT14負責檢查其他兩個LED的狀態(tài)。LUT10、LUT12和LUT13檢查手動按鈕是否被激活。如果手動模式處于開啟狀態(tài),則RGB將根據(jù)D0、D1、D2輸出狀態(tài)運行,每次按下顏色按鈕時,這些輸出狀態(tài)會改變。它隨著來自CNT7的上升沿而變化,CNT7用作上升沿信號的去抖動功能。

Pin 20配置為輸入,用于在手動控制模式和藍牙控制模式之間切換。

如果禁用手動模式并開啟自動混合模式,則顏色每500毫秒改變一次,上升沿來自CNT7。4-bit LUT1 用于防止D0 D1 D2處于“000”狀態(tài),因為該狀態(tài)會導致燈在自動混合模式時關閉。

如果手動模式、PWM模式和自動混合模式未啟用,則紅色、綠色和藍色SPI命令流向引腳12、13和14,這些引腳配置為輸出,并連接到外部RGB LED。

DFF6、DFF7和DFF8用于構建3-bit二進制計數(shù)器。計數(shù)器值隨著CNT7脈沖增加,并在MUXs‘ (GreenPAK邏輯單元LUT10、LUT12、LUT13)的輸入端產生不同的D0,D1,D2邏輯組合。

安卓應用程序

在本節(jié)中,我們將創(chuàng)建一個安卓應用程序,它將監(jiān)測和顯示用戶的控件選擇。界面由兩部分組成:第一部分包含一組具有預定義顏色的按鈕,因此當按下這些按鈕中的任意一個時,相應顏色的LED會亮起。第二部分(MIX方塊)為用戶創(chuàng)建混合顏色。

在第一部分,用戶選擇他們希望PWM信號通過的LED引腳;PWM信號一次只能傳遞到一個引腳。下面的列表在PWM模式期間邏輯地控制其他兩種顏色的開/關。

自動混合按鈕負責運行自動換燈光模式,每半秒換一次燈光。MIX部分包含兩個復選框列表,用戶可以決定將哪兩種顏色混合在一起。

我們使用MIT App Inventor網(wǎng)站創(chuàng)建了該應用程序。該網(wǎng)站允許用戶在沒有任何軟件經驗的情況下,使用圖形軟件塊創(chuàng)建安卓應用程序。

我們最初設計的圖形界面添加了一組負責顯示預定義顏色的按鈕,我們還添加了兩個復選框列表,每個列表有3個元素;每個元素都在其單獨的框中顯示,如圖5所示。

用戶界面中的按鈕與軟件命令相關聯(lián):應用程序通過藍牙發(fā)送的所有命令都是以字節(jié)格式,每一個bit負責特定的功能。

表1顯示了發(fā)送到GreenPAK的命令幀的形式。

前三個bit:B0、B1和B2將通過預定義顏色的按鈕在直接控制模式下保持RGB LED的狀態(tài)。因此,當單擊其中任意一個按鈕時,將發(fā)送該按鈕的相應值,如表2所示。

B3和B4 bit控制“+”和“-”命令,它們負責增加和減少脈沖寬度。按下按鈕時bit值為1,松開按鈕時bit值為0。

B5和B6 bit負責選擇PWM信號將通過的引腳(顏色):這些bit的顏色指定如表3所示。最后一個bit B7負責激活自動混合功能。

圖6和圖7展示了將按鈕與負責發(fā)送以上值的編程塊鏈接的過程。

控制器已測試成功,顏色混合以及其他功能均顯示正常工作。

結論

在本文中,我們創(chuàng)建了一個由安卓應用程序進行無線控制的智能燈電路。該項目中使用的GreenPAK IC有助于將幾個用于控制燈光的基本組件集成到一個小型IC中。

原文標題:通過藍牙控制RGB LED顏色

文章出處:【微信公眾號:Dialog半導體公司】歡迎添加關注!文章轉載請注明出處。

審核編輯:彭菁
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23824

    瀏覽量

    673431
  • 智能家居
    +關注

    關注

    1934

    文章

    9791

    瀏覽量

    190407
  • 應用程序
    +關注

    關注

    38

    文章

    3333

    瀏覽量

    58981

原文標題:通過藍牙控制RGB LED顏色

文章出處:【微信號:Dialog半導體公司,微信公眾號:Dialog半導體公司2】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    釋放潛力:在樹莓派上運行系統(tǒng)實現(xiàn)多樣化應用!

    為什么要在樹莓派上運行系統(tǒng)?系統(tǒng)以其龐大的應用生態(tài)系統(tǒng)和用戶友好的界面而聞名,它能夠將樹莓派轉變?yōu)楣δ軓姶蟮脑O備,能夠處理從媒體消費到輕量級計算和物聯(lián)網(wǎng)應用等各種任務。優(yōu)勢高度
    的頭像 發(fā)表于 07-05 08:33 ?158次閱讀
    釋放潛力:在樹莓派上運行<b class='flag-5'>安</b><b class='flag-5'>卓</b>系統(tǒng)實現(xiàn)多樣化應用!

    如何實現(xiàn)與恩智浦i.MX RT1170的無線投屏與控制

    Scrcpy是一款免費開源的軟件,支持將端屏幕投影到其他設備,并支持被投屏設備對的反向控制?;贏DB工具,
    的頭像 發(fā)表于 06-26 09:53 ?1147次閱讀
    如何實現(xiàn)<b class='flag-5'>安</b><b class='flag-5'>卓</b>與恩智浦i.MX RT1170的無線投屏與控制

    請問CYUSB3014支持驅動嗎?

    [i]請問CYUSB3014 支持設備嗎?應該使用什么驅動呢
    發(fā)表于 05-30 07:12

    某些手機無法識別FX2LP設備,怎么解決?

    。 問題可能出在哪里,或者我們如何收集有關它的更多信息? 我是否應該嘗試通過 NDK 使用 libusb 而不是 USB API(看來還有很多東西要學)? 只能在root手機上運行的最終應用程序是不可接受的。
    發(fā)表于 05-27 06:21

    迅為RK3588開發(fā)板GPIO調用APP運行測試

    將網(wǎng)盤上的工程文件復制到 Windows 電腦上。確保工程路徑中使用英文字符,不包含中文。接著,啟動 Android Studio,點擊“Open”按鈕選擇應用工程文件夾,然后點擊“OK”。由于
    發(fā)表于 05-13 10:49

    請問rk3566有沒有辦法裝12

    各位老哥,rk3566的sdk是11,有沒有辦法裝12呢
    發(fā)表于 03-22 19:46

    納祥科技PD協(xié)議芯片NX799,超絕兼容性,適配華為、三星等主流手機

    納祥科技NX799是一顆應用手機的快充數(shù)據(jù)線控制 IC,采用 CMOS 工藝制造,USB轉TYPE-C全兼容,支持HUAWEI、三星、VIVO、OPPO 和一加等系列手機/
    的頭像 發(fā)表于 02-05 17:28 ?839次閱讀
    納祥科技<b class='flag-5'>安</b><b class='flag-5'>卓</b>PD協(xié)議芯片NX799,超絕兼容性,適配華為、三星等主流<b class='flag-5'>安</b><b class='flag-5'>卓</b>手機

    11系統(tǒng)的RK3566主板搭建一體機

    我向給11系統(tǒng)的RK3566主板搭建一套顯示器、電源拿來作為測試,怎么搭配好呢
    發(fā)表于 12-17 17:26

    開發(fā)板_MTK開發(fā)板Demo板方案

    MTK開發(fā)板采用聯(lián)發(fā)科的MT8768處理器,這是一個基于ARM Cortex-A53架構的八核CPU,主頻高達2.0GHz。利用12nm先進制造工藝,這款芯片在功耗控制上表現(xiàn)優(yōu)秀。它運行的是Android 9.0操作系統(tǒng),配備標準的4GB RAM和64GB存儲空間,能
    的頭像 發(fā)表于 12-12 20:12 ?676次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>卓</b>開發(fā)板_MTK開發(fā)板Demo板方案

    AIC3262 CODEC能否在下運用?

    我們有多路音頻混音應用需求(雙路MIC. LINE IN, I2S 音源輸入,耳機輸出監(jiān)聽及混音后錄音),針對混音還有通過DSP 作混響, 10段EQ應用, 該裝置需要在環(huán)境下運行。不知TI AIC3262 CODEC能否在
    發(fā)表于 10-29 08:19

    第5章 MATLAB程序設計.ppt

    第5章 MATLAB程序設計
    發(fā)表于 10-24 16:40 ?1次下載

    請問TAS5558有的驅動可以提供嗎?

    請問TAS5558有的驅動可以提供嗎
    發(fā)表于 10-12 06:19

    如何通過U盤修改開機logo

    本文介紹如何通過U盤修改開機logo,適用于亮鉆所有型號主板哦。
    的頭像 發(fā)表于 10-11 10:21 ?1060次閱讀
    如何通過U盤修改<b class='flag-5'>安</b><b class='flag-5'>卓</b>開機logo

    杰和科技RK系列解決方案,支持系統(tǒng),4K視頻顯示輸出

    系統(tǒng)的開放性和兼容性使其能夠支持各種應用程序和視頻播放格式。該系統(tǒng)允許商顯自助終端設備輕松集成各種內容源,使得各終端設備在商業(yè)環(huán)境中更加靈活,搭配高清視頻接口如HDMI2.1和DP2.0,能進
    的頭像 發(fā)表于 09-11 16:43 ?897次閱讀
    杰和科技RK系列解決方案,支持<b class='flag-5'>安</b><b class='flag-5'>卓</b>系統(tǒng),4K視頻顯示輸出

    工控主板在軌道交通中的應用特點

    工控主板在軌道交通中的應用特點主要體現(xiàn)在以下幾個方面:
    的頭像 發(fā)表于 08-22 17:15 ?584次閱讀