驅動蜂鳴器與雞翅LED是一樣的,對于I.MX6ULL來說只需要對指定的引腳輸出高或者低電平即可。
找到蜂鳴器使用的引腳
打開I.MX6ULL開發板原理圖,找到蜂鳴器接的引腳
可以看出,蜂鳴器正極接的是三極管,負極接地,想讓蜂鳴器工作就需要讓三極管導通。這是一個PNP型三極管,基極接的是BEEP,想讓三極管導通蜂鳴器工作需要給BEEP一個低電平。
再看一下BEEP具體接的是I.MX6ULL的哪一個管腳

從圖中可以看出,BEEP具體接的是SNVS TAMPER1
初始化BEEP對應引用

從I.MX6ULL的參考手冊里面的32.5.4小節中可以找到關于SNVS TAMPER1寄存器,現在需要將他復用成通用GPIO,通過查看手機復用之后是GPIO5_IO01,所以在初始化蜂鳴器GPIO時也就是將SNVS TAMPER1寄存器復用成GPIO5_IO01:
IOMUXC_SetPinMux(IOMUXC_SNVS_SNVS_TAMPER1_GPIO5_IO01, 0);
同時設置GPIO5_IO01的電氣屬性為:
IOMUXC_SetPinConfig(IOMUXC_SNVS_SNVS_TAMPER1_GPIO5_IO01, 0x10B0);
設置GPIO5_IO01的輸入輸出:
/// 設置GPIO5的第1位即IO01為輸出,默認電平為低電平
PIO_Init(GPIO5, 1, (GPIO_CONFIG){GPIO_DIRECTION_OUTPUT, 0});
控制蜂鳴器
控制GPIO5_IO01的DR寄存器,通過寫入低(0)電平來打開蜂鳴器,寫入高電平(1)來關閉蜂鳴器。
void Beep_On()
{
GPIO_SetValue(GPIO5, 1, 0);
}
void Beep_Off()
{
GPIO_SetValue(GPIO5, 1, 1);
}
驗證
在main文件中對應的開LED燈的位置打開蜂鳴器,關燈的地方關閉蜂鳴器。
#include
#include "delay.h"
#include "clk.h"
#include "led.h"
#include "beep.h"
int main(void)
{
Clk_Init();
Led_Init();
Beep_Init();
while (1)
{
Delay(500);
Led_On();
Beep_On();
Delay(500);
Led_Off();
Beep_Off();
}
return 0;
}
最后,通過Makefie編譯成bee.bin并燒寫到開發板即可聽到蜂鳴器工作了。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
led
+關注
關注
243文章
24595瀏覽量
690823 -
蜂鳴器
+關注
關注
12文章
900瀏覽量
47761 -
IMX6ULL
+關注
關注
3文章
16瀏覽量
4482
發布評論請先 登錄
相關推薦
熱點推薦
MISC蜂鳴器驅動實驗-迅為imx6ULL開發板編譯驅動及運行測試
我們將 44.4 章節編寫的驅動文件 beep.c 編譯成模塊,請參考本手冊第三十九章 Linux 內核模塊。我們將 beep.c 文件拷貝到 Ubuntu 的/home/topeet/driver
發表于 02-03 10:49
使用單片機進行驅動蜂鳴器實驗的詳細資料說明
本文檔的主要內容詳細介紹的是使用單片機進行驅動蜂鳴器實驗的詳細資料說明 學會本次實驗是如何進行實現的,以及對實驗原理的理解。
發表于 05-23 17:59
?0次下載
嵌入式PWM驅動蜂鳴器實驗
一、實驗目的掌握PWM和蜂鳴器工作原理,利用PWM驅動蜂鳴器二、實驗環境1.PC微機。2.ubuntu14.04 64位。3. arm-li
發表于 10-21 12:06
?15次下載
51單片機蜂鳴器實驗
之間。2.要實現蜂鳴器的控制,我們能否 直接使用 STC89CXX 的 IO 口驅動呢?答案是否定的, 因為51單片機 IO 口的驅 動能力較弱(即使外接上拉電阻),而蜂鳴器驅動需
發表于 11-23 16:22
?4次下載
51單片機實驗-蜂鳴器播放音樂
51單片機實驗-蜂鳴器播放音樂題目:編程實現利用單片機使蜂鳴器播放“茉莉花”的樂曲。學校單片機時寫的,利用單片機控制蜂鳴器播放樂曲,開發板上的蜂鳴器
發表于 11-23 16:23
?42次下載
51單片機 驅動有源/無源蜂鳴器+Proteus仿真
PNP管驅動無源蜂鳴器采用NPN管驅動無源蜂鳴器Proteus元器件列表實例代碼/***************************************************
發表于 11-23 17:06
?50次下載
STM32實例-蜂鳴器實驗
本章我們通過另外一個實驗來講述 STM32 IO 口的輸出。通過 STM32F1 芯片的一個 IO口控制板載有源/無源蜂鳴器,實現蜂鳴器控制。蜂鳴器介紹
發表于 12-24 19:41
?36次下載
蜂鳴器的驅動實驗
評論