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

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

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

基于STM32單片機的聲控?zé)粝到y(tǒng)設(shè)計

小常硬件 ? 來源:小常硬件 ? 2024-06-24 09:57 ? 次閱讀

一.系統(tǒng)概述

聲控?zé)粝到y(tǒng)以STM32為核心控制單元,實現(xiàn)了聲音控制燈光效果、溫濕度監(jiān)測和顯示、以及音樂播放功能,同時支持遠程控制和信息顯示,具體包括以下主要功能和相關(guān)硬件模塊:

1. 聲音傳感器與WS2812控制:

- 使用聲音傳感器采集環(huán)境聲音并轉(zhuǎn)化為模擬信號。

- 根據(jù)采集的模擬電壓信號判斷聲音強度。

- 控制WS2812 LED燈呈現(xiàn)不同的閃爍模式和顏色。

- 可通過WiFi連接,在手機端調(diào)節(jié)顏色風(fēng)格和閃爍模式。

2. 溫濕度傳感器與顯示屏控制:

- 控制溫濕度傳感器采集環(huán)境溫濕度數(shù)據(jù)。

- 控制顯示屏顯示采集到的溫濕度信息。

3. 語音播報模塊:

- 控制語音播報模塊播放歌曲。

- 在顯示屏上顯示當(dāng)前播放歌曲的名稱。

55939a0c-2fb9-11ef-a4c8-92fbcf53809c.jpg

二.電路設(shè)計

電路圖采用Altium Designer進行設(shè)計:

1. 通過STM32F103C8T6單片機作為系統(tǒng)主控,最小系統(tǒng)電路是整個電路的核心;

2. 使用KY-037聲音傳感器進行聲音檢測,模塊的模擬輸出腳與單片機的模擬輸入腳進行連接;

3. 通過DHT11進行溫濕度檢測,并通過one-wire總線與單片機的GPIO腳進行連接;

4. 使用獨立按鍵進行聲音強度閾值,按鍵的一端接地,一端接單片機的GPIO口;

5. 通過ESP8266-01S將檢測到數(shù)據(jù)上傳到上位機,通過UART串口與單片機進行通信

6. 使用JR6001進行語音播報,并通過UART串口與單片機進行連接。

7. 通過0.96寸的OLED12864進行數(shù)據(jù)顯示,采用IIC總線的形式與單片機進行通信。

55c99634-2fb9-11ef-a4c8-92fbcf53809c.jpg

三.程序設(shè)計

#include "sys.h"
#include "delay.h"
#include "adc2.h"
#include "math.h"
#include "key.h"
#include "OLED_I2C.h"
#include "Control_Report_To_Police.h"
/************************************************
版權(quán):小常硬件
公眾號:微信搜索“小常硬件“在公眾號免費下載相關(guān)資料
************************************************/
 
int main(void)
{  
  
  u32 JR6001_Uart_bound=9600;
  u32 ASR01_Uart_bound=9600;
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  delay_init();         //延時函數(shù)初始化  
  TIM4_Init(300,7200);
  while(DHT11_Init()){}
  KEY1_Init();
  Adc_Init();
  Led1_init();
  OLED_Init();   
  OLED_CLS();             //OLED清屏
  OLED_ShowCN(32,2,0);      //小常硬件
  OLED_ShowCN(32+16,2,1);
  OLED_ShowCN(32+32,2,2);
  OLED_ShowCN(32+32+16,2,3);
  JR6001_Uart1_init(&JR6001_Uart_bound);
  ASR01_Uart1_init(&ASR01_Uart_bound); 
  ALi_ESP8266_GPIO_Init();
  MQTT_Buff_Init();
  AliIoT_Parameter_Init();
  OLED_CLS(); 
  OLED_ShowCN(0,0,10);      
  OLED_ShowCN(0+16,0,11);  
  OLED_ShowCN(0,2,12);      
  OLED_ShowCN(16,2,13);  
  OLED_ShowCN(0,4,14);      
  OLED_ShowCN(16,4,15);
  JR6001_Uart1_Voice_Add(); 
  while(1)
  {
    OLED_Display_Cotrol(); //顯示控制函數(shù)
  }   
}
 
 

四.實物圖

56581166-2fb9-11ef-a4c8-92fbcf53809c.jpg

56825bf6-2fb9-11ef-a4c8-92fbcf53809c.jpg

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

原文標(biāo)題:STM32開發(fā)實例_基于STM32單片機的聲控?zé)粝到y(tǒng)(電路圖+程序+流程圖)

文章出處:【微信號:小常硬件,微信公眾號:小常硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    STM32F1系列單片機的時鐘系統(tǒng)

      這是stm32的時鐘系統(tǒng),時鐘與單片機的關(guān)系就好比心臟與人的關(guān)系一樣,它為單片機的運行提供時間基準。STM32F1系列
    發(fā)表于 03-23 17:44 ?2676次閱讀
    <b class='flag-5'>STM32</b>F1系列<b class='flag-5'>單片機</b>的時鐘<b class='flag-5'>系統(tǒng)</b>

    基于MSP430F5529單片機聲控設(shè)計

    開小,然后定時器計時,五秒鐘后自動關(guān)閉小。以前做的一個音樂頻譜:音樂聲音高低不同,單片機控制亮的數(shù)目也不同。...
    發(fā)表于 11-29 06:01

    51單片機聲控路燈設(shè)計

    電子發(fā)燒友網(wǎng)站提供《51單片機聲控路燈設(shè)計.doc》資料免費下載
    發(fā)表于 04-14 15:33 ?52次下載

    STM32單片機的最小系統(tǒng)

    這節(jié)課給大家講解一下 STM32單片機的最小系統(tǒng),在座各位梁山 伯的弟兄們誰能給解釋一下什么是單片機的最小系統(tǒng)。
    發(fā)表于 11-11 17:17 ?60次下載

    STM32單片機中斷系統(tǒng)

    這節(jié)課主要給大家介紹一下 STM32 單片機的中斷系統(tǒng)。
    發(fā)表于 11-11 17:17 ?33次下載

    基于STM32單片機的TIM定時器中斷控制不同閃爍

    STM32單片機TIM定時器中斷控制不同閃爍,讓兩個以不同頻率閃爍
    發(fā)表于 04-08 16:19 ?23次下載

    基于STM32單片機的智能電路圖設(shè)計

    基于STM32單片機的智能電路圖設(shè)計
    發(fā)表于 07-30 10:21 ?354次下載

    單片機入門--常見單片機PIC\STM32

    單片機入門--常見單片機PIC\STM32
    發(fā)表于 11-13 14:36 ?43次下載
    <b class='flag-5'>單片機</b>入門--常見<b class='flag-5'>單片機</b>PIC\<b class='flag-5'>STM32</b>

    hc05與單片機連接圖_STM32單片機最小系統(tǒng)詳解

    是FLASH,RAM容量是48K,封裝LQFP64。STM32單片機命名規(guī)則:STM32單片機最小系統(tǒng):所謂
    發(fā)表于 11-17 13:51 ?63次下載
    hc05與<b class='flag-5'>單片機</b>連接圖_<b class='flag-5'>STM32</b><b class='flag-5'>單片機</b>最小<b class='flag-5'>系統(tǒng)</b>詳解

    基于STM32單片機的路燈系統(tǒng)設(shè)計

    整個系統(tǒng)STM32 單片機作為核心控制器,通過DS1302進行定時,通過光敏模塊識別光照強度,通過光電管識別人體,識別后通過單片機控制LED
    的頭像 發(fā)表于 07-24 15:04 ?1915次閱讀

    基于51單片機聲控光控觸摸LED設(shè)計

    本資源內(nèi)容概要: 這是基于51單片機聲控光控觸摸LED設(shè)計包含了電路圖源文件(Altiumdesigner軟件打開)、C語言程序源代碼(keil軟件打開) 。 本資源適合人群: 單片機
    發(fā)表于 08-10 09:39 ?2次下載

    基于STM32單片機的智能拐杖系統(tǒng)設(shè)計

    本次智能拐杖系統(tǒng)的設(shè)計使用STM32單片機作為控制核心,通過hc-sr04超聲波模塊測距,通過光敏電阻檢測光強,采集到的數(shù)據(jù)會上傳到單片機中,單片機
    的頭像 發(fā)表于 09-01 09:25 ?1831次閱讀
    基于<b class='flag-5'>STM32</b><b class='flag-5'>單片機</b>的智能拐杖<b class='flag-5'>系統(tǒng)</b>設(shè)計

    基于51單片機聲控設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于51單片機聲控設(shè)計.rar》資料免費下載
    發(fā)表于 01-07 09:37 ?4次下載

    基于51單片機聲控設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于51單片機聲控設(shè)計.rar》資料免費下載
    發(fā)表于 01-12 10:27 ?1次下載

    基于STM32單片機的智能冰箱控制系統(tǒng)設(shè)計

    基于單片機設(shè)計的一款智能冰箱控制系統(tǒng),可以控制冰箱的制冷裝置,可以采集冰箱的異味濃度,超過閩值之后控制紫外進行消毒工作單片機采用單片機采用
    的頭像 發(fā)表于 06-25 09:21 ?616次閱讀
    基于<b class='flag-5'>STM32</b><b class='flag-5'>單片機</b>的智能冰箱控制<b class='flag-5'>系統(tǒng)</b>設(shè)計