日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > windows >内容正文

windows

嵌入式系统之蜂鸣器

發(fā)布時(shí)間:2023/12/10 windows 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 嵌入式系统之蜂鸣器 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、硬件連接

??????? 1. 查看電路圖蜂鳴器的連接口,這里以PB8連接蜂鳴器為例,PB8輸出高電平蜂鳴器發(fā)聲,PB8輸出低電平蜂鳴器停止。

??????? 2. 相關(guān)函數(shù):初始化函數(shù)GPIO_Init(GPIOx, GPIO_InitStruct)、輸出高電平函數(shù)GPIO_SetBits(GPIOx,GPIO_Pin_n)、輸出低電平函數(shù)GPIO_ResetBits(GPIOx,GPIO_Pin_n)

二、庫(kù)函數(shù)/位帶操作版本

??????? 1.定義器件頭文件beep.h

??????? 2. 寫初始化函數(shù)BEEP_Init()

??????????? (1)定義IO口的初始化結(jié)構(gòu)體GPIO_InitStructure(管腳、模式、速度)

????????????????GPIO_InitTypeDef? GPIO_InitStructure;

????????????????GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;?? 8號(hào)管腳 ?? ??? ???
??????????????? GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; ?? ?? 推挽輸出
??????????????? GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;?? ? 翻轉(zhuǎn)速度位50MHz

??????????????? 可以選中GPIO_InitTypeDef右鍵,點(diǎn)擊“GO To Definition Of GPIO_InitTypeDef”查找這 ????????????????個(gè)函數(shù)在庫(kù)文件中的具體定義是什么,如下圖所示

?????????? (2)使能IO口時(shí)鐘,調(diào)用函數(shù)

RCC_APB2PeriphClockCmd(RCC_APB2Periph+GPIOx,ENABLE);

?????????? (3)根據(jù)參數(shù)初始化IO口:GPIO_Init(GPIOB, &GPIO_InitStructure)

?????????? (4)將PB8置為0關(guān)閉蜂鳴器:GPIO_ResetBits(GPIOB,GPIO_Pin_8)

??????? 3. 操作IO口輸出高低電平[在beep.h中定義#define BEEP PBout(8),即可用BEEP代替PBout(8)

??????????? 使得程序的可讀性更強(qiáng)]

?三、寄存器版本

??????? 1. 配置beep.h(同上)

??????? 2. 配置初始化函數(shù)BEEP_Init()????????

?????????? (1)使能IO口時(shí)鐘,配置寄存器RCC->APB2ENR

?????????? (2)配置IO口的工作模式(低位0-7配置CRL,高位8-15配置CRH)

?????????????? 配置寄存器GPIOB->CRH

?????????? (3)使IO口輸出高/低電平,配置GPIOB->ODR或GPIOB->BSRR/BRR

???????? 3. 主函數(shù)的編寫

?

總結(jié)

以上是生活随笔為你收集整理的嵌入式系统之蜂鸣器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。