日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32項目分享:智能語音三色燈

機(jī)智云 ? 2026-05-24 10:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

項目成品圖片:


bb3c25d4-5714-11f1-ab55-92fbcf53809c.jpg

01

項目簡介


1.功能詳解


STM32智能語音三色燈

功能如下:


檢測功能:系統(tǒng)檢測周圍 溫濕度數(shù)據(jù)、距離、人體信號、光照強(qiáng)度。

顯示功能:將檢測到的數(shù)據(jù)顯示在oled屏幕上。

控制功能:系統(tǒng)可以通過PWM對其進(jìn)行亮度和冷光、暖光、中性光的調(diào)節(jié)。

手動模式:通過按鍵控制臺燈的亮度。

自動模式:當(dāng)環(huán)境亮度低于閾值,并且有人時,會自動調(diào)節(jié)臺燈亮度;

語音控制:通過語音指令可以控制LED燈的開啟,以及亮度調(diào)節(jié)和冷暖光調(diào)節(jié)和系統(tǒng)模式切換等;

定時提醒:用戶可以設(shè)置提醒時間,當(dāng)?shù)竭_(dá)時間后蜂鳴器會進(jìn)行提醒。

護(hù)眼功能:當(dāng)系統(tǒng)檢測到人距離臺燈過近時蜂鳴器報警。

閾值調(diào)節(jié):系統(tǒng)傳感器閾值大小可以通過按鍵或者APP自行設(shè)置調(diào)節(jié)。

接入云平臺:系統(tǒng)通過ESP8266 WIFI模塊連接網(wǎng)絡(luò),接入機(jī)智云服務(wù)器。

遠(yuǎn)程控制:可以通過APP查看傳感器數(shù)據(jù),以及遠(yuǎn)程控制臺燈、遠(yuǎn)程調(diào)節(jié)閾值。



2.材料清單

STM32F103C8T6單片機(jī)

OLED 屏幕

DHT11溫濕度傳感器

HC-SR501人體紅外傳感器

光敏傳感器

HC-SR04超聲波傳感器

SNR8016語音模塊

有源蜂鳴器

三色燈板

ESP8266-01S(WIFI模塊)



02


原理圖設(shè)計


bb5c33f6-5714-11f1-ab55-92fbcf53809c.png


03


PCB硬件設(shè)計


PCB圖

bb6e906e-5714-11f1-ab55-92fbcf53809c.pngbb7aafac-5714-11f1-ab55-92fbcf53809c.png


04

程序設(shè)計


#include"stm32f10x.h" // Device header#include"adcx.h"#include"ldr.h"#include"oled.h"#include"dht11.h"#include"pwm.h"#include"led.h"#include"key.h"#include"tim2.h" #include"tim3.h" #include"hc_sr501.h"#include"hc_sr04.h"#include"sensormodules.h"#include"usart.h"#include"gizwits_product.h"#include"myrtc.h"#include"flash.h"#include"iwdg.h"#include"usart3.h"
#defineKEY_Long111
#defineKEY_11#defineKEY_22#defineKEY_33#defineKEY_44
#defineFLASH_START_ADDR0x0801f000//寫入的起始地址
uint8_thc501;//存儲人體信號uint8_tsystemModel =0;//存儲系統(tǒng)當(dāng)前模式
uint8_thour,minute,second;//時 分 秒uint8_tmenu =1;//顯示菜單變量uint8_tgizwitsModeFlag;// 配網(wǎng)標(biāo)志位
SensorModules sensorData;//聲明傳感器數(shù)據(jù)結(jié)構(gòu)體變量SensorThresholdValue Sensorthreshold;//聲明傳感器閾值結(jié)構(gòu)體變量

intmain(void){Buzzer_Init();LDR_Init();OLED_Init();DHT11_Init();Key_Init();HC_SR501_Init();HC_SR04_Init();
ADCX_Init();PWM_Init(100-1,720-1);Timer2_Init(9,14398);Uart2_Init(9600);Uart1_Init(115200);IWDG_Init();//初始化看門狗Uart3_Init();
MyRTC_Init();LED_Init();
Sensorthreshold.Illumination_threshold =FLASH_R(FLASH_START_ADDR);//從指定頁的地址讀FLASHSensorthreshold.Distance_threshold =FLASH_R(FLASH_START_ADDR+2);//從指定頁的地址讀FLASHSensorthreshold.timing =FLASH_R(FLASH_START_ADDR+4);//從指定頁的地址讀FLASH
GENERAL_TIM_Init();userInit();//完成機(jī)智云初始賦值gizwitsInit();//開辟一個環(huán)形緩沖區(qū)
Delay_ms(1000);//scanGizwitsModeKey();gizwitsSetMode(WIFI_AIRLINK_MODE);Delay_ms(1000);while(1){IWDG_ReloadCounter();//重新加載計數(shù)值 喂狗sensorScan();//獲取傳感器數(shù)據(jù)SNR8016();//執(zhí)行語音指令
switch(menu){casedisplay_page:
MyRTC_ReadTime();//調(diào)用此函數(shù)后,RTC硬件電路里時間值將刷新到全局?jǐn)?shù)組OLED_Menu_SensorData();//顯示主頁面?zhèn)鞲衅鲾?shù)據(jù)、系統(tǒng)模式等內(nèi)容OLED_Menu();//顯示主頁面的固定內(nèi)容TimingAlarm();if(!systemModel){LED_PWM_KEY();//按鍵控制LED的PWM}
//切換系統(tǒng)模式if(KeyNum == KEY_1){KeyNum =0;systemModel = ~systemModel;if(systemModel){currentDataPoint.valueModel =1;ledDutyRatio =0;TIM_SetCompare1(TIM1, ledDutyRatio);
}else{currentDataPoint.valueModel =0;ledDutyRatio =0;TIM_SetCompare1(TIM1, ledDutyRatio);Buzzer_OFF();}}
//判斷是否進(jìn)入閾值設(shè)置界面if(KeyNum == KEY_Long1){KeyNum =0;OLED_Clear();//清屏menu = settingsPage;//跳轉(zhuǎn)到閾值設(shè)置界面}break;
casesettingsPage:OLED_SetInterfacevoid();//顯示閾值設(shè)置界面的固定內(nèi)容OLED_Option(SetSelection());//實現(xiàn)閾值設(shè)置頁面的選擇功能ThresholdModification(SetSelection());//實現(xiàn)閾值調(diào)節(jié)功能
//判斷是否退出閾值設(shè)置界面if(KeyNum == KEY_2){KeyNum =0;OLED_Clear();//清屏menu = display_page;//跳轉(zhuǎn)到主界面
//存儲修改的傳感器閾值至flash內(nèi)FLASH_W(FLASH_START_ADDR, Sensorthreshold.Illumination_threshold, Sensorthreshold.Distance_threshold,Sensorthreshold.timing);
currentDataPoint.valueIllumination_threshold = Sensorthreshold.Illumination_threshold;currentDataPoint.valueDistance_threshold = Sensorthreshold.Distance_threshold;currentDataPoint.valuetiming = Sensorthreshold.timing;}break;
casetimeSettingsPage:OLED_ThresholdTime();//顯示時間設(shè)置界面的內(nèi)容OLED_Time_Option(SetTimeSelection());//實現(xiàn)間設(shè)置界面的選擇功能TimeModification(SetTimeSelection());//實現(xiàn)時間調(diào)節(jié)功能
//判斷是否退出時間設(shè)置界面if(KeyNum == KEY_2){KeyNum =0;//將更改的數(shù)據(jù)賦值回RTC數(shù)組中MyRTC_Time[3] = hour;MyRTC_Time[4] = minute;MyRTC_Time[5] = second;MyRTC_SetTime();//調(diào)用此函數(shù)后,全局?jǐn)?shù)組里時間值將刷新到RTC硬件電路
OLED_Clear();//清屏menu = settingsPage;//回到閾值設(shè)置界面}break;
casegizwitsMode:if(gizwitsModeFlag ==1){//顯示“熱點配網(wǎng)”O(jiān)LED_ShowChinese(2,3,38);OLED_ShowChinese(2,4,39);OLED_ShowChinese(2,5,40);OLED_ShowChinese(2,6,41);}elseif(gizwitsModeFlag ==2){//顯示“一鍵配網(wǎng)”O(jiān)LED_ShowChinese(2,3,34);OLED_ShowChinese(2,4,35);OLED_ShowChinese(2,5,36);OLED_ShowChinese(2,6,37);}if(!gizwitsModeFlag){KeyNum =0;OLED_Clear();menu = display_page;}break;
default:break;}
//判斷上位機(jī)是否更改閾值,如更改則保存至flash中if(valueFlashflag){valueFlashflag =0;//存儲修改的傳感器閾值至flash內(nèi)FLASH_W(FLASH_START_ADDR, Sensorthreshold.Illumination_threshold, Sensorthreshold.Distance_threshold,Sensorthreshold.timing);}
userHandle();//更新機(jī)智云數(shù)據(jù)點變量存儲的值gizwitsHandle((dataPoint_t *)¤tDataPoint);//數(shù)據(jù)上傳至機(jī)智云}}


05

實驗效果


bb8c3bf0-5714-11f1-ab55-92fbcf53809c.jpgbb93be5c-5714-11f1-ab55-92fbcf53809c.jpg

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

    關(guān)注

    2315

    文章

    11223

    瀏覽量

    375710
  • 智能語音
    +關(guān)注

    關(guān)注

    11

    文章

    831

    瀏覽量

    50392
  • 三色燈
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    無線控制RGB三色燈系統(tǒng)

    項目說明:本設(shè)計基于安芯一號SLH89F5162以及藍(lán)牙技術(shù)等實現(xiàn)了對RGB三色燈的無線控制功能。該設(shè)計將外形炫目,應(yīng)用廣泛的LED三色燈智能化技術(shù)巧妙結(jié)合后,可實現(xiàn)快速判定室內(nèi)亮度
    發(fā)表于 11-15 14:37

    【GoKit申請】溫度濕度三色指示

    項目名稱或開發(fā)想法:剛剛接觸arduino,希望和團(tuán)隊先實現(xiàn)樣例中的寵物房監(jiān)控,再實現(xiàn)三色燈指示溫濕度等實例項目開發(fā)周期:4周以往項目開發(fā)或DIY經(jīng)驗:團(tuán)隊本職是ARM手機(jī)驅(qū)動相關(guān),希
    發(fā)表于 04-28 15:19

    【Tisan物聯(lián)網(wǎng)試用體驗】Tisan IOT開發(fā)板 三色燈試驗

    前天拿到了Tisan IOT開發(fā)板,今天先學(xué)習(xí)驗證一下三色燈的試驗!下面是我的試驗步驟!1、下載“05開發(fā)板”開發(fā)包;2、看一下05 開發(fā)板\Tisan 教程\Tisan教程系列1——固件燒錄文件夾
    發(fā)表于 11-25 16:29

    【Tisan物聯(lián)網(wǎng)試用體驗】+三色燈實驗

    ` 本帖最后由 dianzi8266 于 2015-11-30 11:21 編輯 拿到了Tisan IOT開發(fā)板一段時間了,今天先學(xué)習(xí)驗證一下三色燈的試驗!下面是我的試驗步驟!1、Tisan
    發(fā)表于 11-30 11:20

    PWM 三色燈的問題

    有人在用SDK的IOT例程中的PWM控制三色燈嗎?我測試的不能徹底關(guān)閉是怎么回事?
    發(fā)表于 01-21 17:08

    請問HETDIR寄存器的置為0x08110034時,板子上的三色燈是該亮起么?那個三色燈亮起呈粉色是什么情況?是正常的么?

    本帖最后由 一只耳朵怪 于 2018-5-25 15:16 編輯 您好:我想問一下,當(dāng)HETDIR寄存器的置為0x08110034時,板子上的三色燈是該亮起么?那個三色燈亮起呈粉色是什么情況?是正常的么?緊急?。?/div>
    發(fā)表于 05-25 01:47

    labview做的LED三色燈

    labview做的三色燈,每周一練習(xí)
    發(fā)表于 09-13 10:06

    微信小程序連接onenet遠(yuǎn)程控制RGB三色燈

    本次演示是基于小程序連接onenet,然后控制RGB三色燈項目,首先需要設(shè)備用MQTT上傳到onenet,這部分內(nèi)容在Github上已經(jīng)開源。微信小程序通過https接口onenet開放接口控制設(shè)備
    發(fā)表于 10-25 16:21

    如何用個PWM去控制三色燈

    三色燈個基礎(chǔ)顏色,用個PWM控制這個基礎(chǔ)顏色的亮度,就能形成不同的顏色。隨機(jī)給顏色,就是霓虹:固定RGB顏色變換就是跑馬燈:強(qiáng)–>
    發(fā)表于 11-29 08:16

    【Start_DSC28034PNT湖人開發(fā)板免費體驗】DSC28034PNT-基于定時器和PWM輸出三色燈

    三色燈的精確控制,實現(xiàn)了三色燈的控制。該項目旨在通過控制不同的PWM占空比來調(diào)節(jié)三色燈的亮度,從而實現(xiàn)豐富多彩的燈光效果。本項目適用于工業(yè)
    發(fā)表于 07-31 21:42

    RGB三色燈的原理

    rgb的實現(xiàn)過程,通過定時器,進(jìn)行RGB三色值得設(shè)置和百分比換算,從而改變占空比,實現(xiàn)顏色的調(diào)整和亮度的改變,以及漸變,閃爍等各種狀態(tài)。
    發(fā)表于 01-18 15:05 ?266次下載

    ESP8266_app控制三色燈sdk以及app源碼

    esp8266學(xué)習(xí)程序,通過手機(jī)APP來控制三色燈的變換,以及開關(guān)
    發(fā)表于 05-06 17:25 ?169次下載

    設(shè)備三色燈的特點

    三色燈來通知維護(hù)人員到現(xiàn)場進(jìn)行維護(hù),所以三色燈起到信息傳遞的作用是十分重要的,今天就來介紹下一款優(yōu)秀的三色燈該擁有那些技術(shù)。 設(shè)備三色燈 這款無線塔
    發(fā)表于 11-09 09:15 ?3762次閱讀

    基于RVB2601開發(fā)板的RGB三色呼吸及按鍵防抖

    ch2601_rgb_marquee_demo中已經(jīng)有RGB三色燈的GPIO控制方式以及PWM控制方式,對其進(jìn)行測試,但我拿到的測試板紅色燈應(yīng)該出了點問題,無法正常亮起。
    發(fā)表于 09-19 10:39 ?1842次閱讀
    基于RVB2601開發(fā)板的RGB<b class='flag-5'>三色</b>呼吸<b class='flag-5'>燈</b>及按鍵防抖

    設(shè)備啟停與三色燈FB塊

    自動化控制設(shè)備中,每一臺設(shè)備都需要啟動與停止按鈕,大部分的設(shè)備也都有顯示設(shè)備運行狀態(tài)的三色燈。
    的頭像 發(fā)表于 05-19 14:59 ?1220次閱讀
    設(shè)備啟停與<b class='flag-5'>三色燈</b>FB塊
    东山县| 博客| 图片| 公主岭市| 洪雅县| 镇原县| 佛学| 连南| 勐海县| 潞西市| 双峰县| 衢州市| 金乡县| 宣恩县| 桦甸市| 麦盖提县| 聊城市| 察哈| 喜德县| 峡江县| 自治县| 囊谦县| 长海县| 平乐县| 观塘区| 济阳县| 大悟县| 盐源县| 玉树县| 东乡| 盱眙县| 如皋市| 广灵县| 巍山| 广河县| 庄浪县| 扶沟县| 阿瓦提县| 衡东县| 渭南市| 大宁县|