本文將從產品創建開始講起,一步一步實現語音控制LED的功能。 一、 RGB品類產品生成 在【燈具】品類選擇【RGB燈】,【選擇場景】里選擇純離線方案,【選擇模組】可以根據自己實際的硬件選擇,我這里選擇VC-02!咎顚懏a品信息】中的產品名稱按需填寫,語言選擇中文即可。下拉到最底部,點擊【保存】。 ![]() 1.產品功能定義 在語音SDK選項中,前端信號處理、Pin腳配置保持默認
![]() 2.定義控制LED的喚醒詞及回復語
![]() 3.定義命令詞及回復語 在基礎信息中
![]() 4. 添加控制 在控制詳情中添加命令詞對應做的控制:
![]() 在開發板中,默認引出了三個LED燈,對應的GPIO分別是:
![]() 可以添加喚醒狀態燈,例如:藍色燈為喚醒狀態燈、暖光燈為被命令詞控制燈。
![]() 5.完整的制作過程(包含SDK生成) https://aithinker.blog.csdn.net/article/details/124098329 二、 SDK下載和固件下載
![]() SDK的生成需要時間,不用著急。 如果不需要再外加功能,可以直接選擇固件下載,可生成和定制功能一致的固件,之后燒錄即可。 如需外加別的功能,比如退出喚醒關閉藍色燈。就下載SDK,修改源碼實現功能。 1.固件下載 固件下載是通過遠程服務器編譯當前SDK后生成的固件,一般有四個固件,它們分別是:
![]() 2.SDK下載 SDK下載的文件是壓縮格式,推薦使用Linux系統進行解壓,解壓指令: ![]() 三、 代碼修改及編譯 我們需要在這個SDK中添加一個退出喚醒關閉藍色LED燈的功能,所以需要看一下代碼。我們定制的SDK的功能默認是在user/src/examples/hb_auto_gpio.c中,所使用的Demo是USER_DEMO_AUTO_GPIO :
![]() 注冊退出喚醒事件及其回調 在源代碼中。默認已經注冊了喚醒事件的回調。并且在回調中點亮了藍色LED燈(GPIO_A25高電平),需要添加的功能:退出喚醒時關閉藍色LED燈,修改步驟:
static void _register_event_callback(void) { .... //注冊退出喚醒回調 user_event_subscribe_event(USER_GOTO_SLEEPING, _goto_sleeping_cb);} 為了方便燒錄我們使用串口方式進行燒錄,在路徑uni_hb_m_solution/unione_lite_app_hb_m執行編譯命令: 之后,使用串口升級即可驗證功能。 |
微信圖片_20220620135955.png (46.37 KB)