www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 單片機 > 單片機
[導讀]搗鼓了幾天,終于點亮led了,那個欣慰啊。。。至于建立工程模板,對于我這種小白來說確實不容易上手,搗鼓了好久,不是忘記添加.c文件,就是忘記加入頭文件的路徑(頭文件的路徑千萬要是英文)。其實模板建立好之后,

搗鼓了幾天,終于點亮led了,那個欣慰啊。。。


至于建立工程模板,對于我這種小白來說確實不容易上手,搗鼓了好久,不是忘記添加.c文件,就是忘記加入頭文件的路徑(頭文件的路徑千萬要是英文)。其實模板建立好之后,只需要編寫兩個文件夾(1)USER,用來編輯主函數(shù)的。(2)HADEWARE(硬件)用來配置相關硬件的,eg:包含led.c led.h 后面要用的話,直接在這里邊調用就行了。


接下來就是led的點亮和蜂鳴器發(fā)出響聲了。

對于led,首先上個電路圖:



板子上有兩個led,DS0和DS1分別接了PB5,PE5,.


重要的是對init(初始化)的配置:


voidLED_Init(void)

{

GPIO_InitTypeDefGPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|

RCC_APB2Periph_GPIOE,ENABLE);//使能PB,PE端口時鐘

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;//LED0-->PB.5推挽輸出

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_Init(GPIOB,&GPIO_InitStructure);

GPIO_SetBits(GPIOB,GPIO_Pin_5);//PB.5輸出高

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;//LED1-->PE.5推挽輸出

GPIO_Init(GPIOE,&GPIO_InitStructure);

GPIO_SetBits(GPIOE,GPIO_Pin_5);/PE.5輸出高

}

要調好GPIO_InitTypeDef結構體中三個成員,傳遞參數(shù)進去完成初始化。

每個HADEWARE中的.c文件對應一個.h文件,再看#include "led.h",這是自己寫的頭文件


#ifndef__LED_H

#define__LED_H

#include"sys.h"

//LED端口定義

#defineLED0PBout(5)//DS0

#defineLED1PEout(5)//DS1

voidLED_Init(void);//初始化

#endif


這段代碼里面最關鍵就是 2 個宏定義:


#defineLED0PBout(5)//DS0

#defineLED1PEout(5)//DS1


這樣調用led更加方便,增加可讀性。

重要的是要將led.c加到HADEWARE這個組里邊:



然后就是主函數(shù)了,挺簡單的:


#include"led.h"

#include"delay.h"

#include"sys.h"

//ALIENTEK戰(zhàn)艦STM32開發(fā)板實驗1

144

//跑馬燈實驗

intmain(void)

{

delay_init();//延時函數(shù)初始化

LED_Init();//初始化與LED連接的硬件接口

while(1)

{LED0=0;

LED1=1;

delay_ms(300);//延時300ms

LED0=1;

LED1=0;

delay_ms(300);//延時300ms

}

}



對于蜂鳴器,電路圖沒看懂,模數(shù)電沒學過,電路也只學到11章,考了83分的渣渣,確實不知道NPN三極管怎么用,只是記住當 PB.8 輸出高電平的時候,蜂鳴器將發(fā)聲, 當 PB.8 輸出低電平的時候,蜂鳴器停止發(fā)聲。


蜂鳴器在HADEWARE中配置beep.c和beep.h和led差不多不再贅述,


#include"beep.h"

151

//初始化PB8為輸出口.并使能這個口的時鐘

//LEDIO初始化

voidBEEP_Init(void)

{

GPIO_InitTypeDefGPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);

//使能GPIOB端口時鐘

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;//BEEP-->GPIOB.8端口配置

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//速度為50MHz

GPIO_Init(GPIOB,&GPIO_InitStructure);//根據(jù)參數(shù)初始化GPIOB.8

GPIO_ResetBits(GPIOB,GPIO_Pin_8);//輸出0,關閉蜂鳴器輸出

}


注意要使能相應的時鐘端口


RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);


同樣,beep.h中


#ifndef__BEEP_H

#define__BEEP_H

#include"sys.h"

//蜂鳴器端口定義

#defineBEEPPBout(8)//BEEP,蜂鳴器接口

voidBEEP_Init(void);//初始化

#endif



主函數(shù):


#include"sys.h"

#include"delay.h"

#include"led.h"

#include"beep.h"

//ALIENTEK戰(zhàn)艦STM32開發(fā)板實驗2

//蜂鳴器實驗

intmain(void)

{

delay_init();//延時函數(shù)初始化

LED_Init();//初始化與LED連接的硬件接口

BEEP_Init();//初始化蜂鳴器端口

while(1)

{LED0=0;

BEEP=0;

delay_ms(300);

LED0=1;

BEEP=1;

delay_ms(300);

}

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

這是一個很好的時鐘,有很大的片段,你可以設置每個片段的顏色和強度。有三個按鈕,蜂鳴器,光傳感器和RTC與備用電池。時鐘通過USB C供電,具有當前時間,計時器和秒表等功能。請隨意添加您自己的功能!

關鍵字: 蜂鳴器 光傳感器 RTC

Holtek新推出專為感煙報警器應用設計的Flash MCU - BA45F25752/BA45F25762,整合雙通道感煙偵測AFE、紅外/藍光LED驅動、萬年歷與蜂鳴器驅動等功能。相較于先前的BA45F5750/BA...

關鍵字: 感煙報警器 MCU 蜂鳴器

HT16K24操作電壓為2.4V~5.5V,內建I2C通信接口,提供三種LCD顯示與按鍵模式:24SEG × 4COM + 24 KEY;22SEG × 6COM + 22 KEY;20SEG × 8COM + 20 K...

關鍵字: LCD MCU 蜂鳴器

Holtek新推出集成感煙探測AFE、雙通道LED驅動及9 V蜂鳴器驅動的32-bit Arm? Cortex?-M0+ MCU HT32L62141,采用超低功耗ULP (Ultra-Low Power) 設計,并提供...

關鍵字: MCU 煙探測器 蜂鳴器

這個項目是農業(yè)自動化的一個有趣的旋轉:一個機器人松露嗅探器,可以自主導航一個空間,識別代表松露熱點的AprilTags,并收集“松露”(用彩色球模擬)。靈感來源于現(xiàn)實生活中用豬和狗來定位地下的松露。

關鍵字: 機器人 蜂鳴器 計算機視覺

本項目將向您介紹來自Elecrow的新型1.28英寸圓形顯示器,該顯示器集成了ESP32C3芯片等!該項目將演示將設備固件更新到MicroPython并顯示自定義消息的步驟。

關鍵字: 顯示器 ESP32C3 蜂鳴器

把“G”分開是對吉尼斯啤酒飲用技巧的真正考驗——準確地喝一口,液體的水平面要正好落在吉尼斯標志上“G”的中間。作為一個不喝酒的人,我想看看我是否能設計出一條通往成功的道路。所以,我做了一個設備,使用非接觸式液體傳感器和蜂...

關鍵字: 傳感器 Arduino 蜂鳴器

在現(xiàn)代電子設備中,蜂鳴器作為一種能夠發(fā)出聲音信號的器件,被廣泛應用于各種領域,如電子玩具、報警器、電子設備的提示音等。其中,有源壓電式蜂鳴器以其只需接上額定直流電壓即可發(fā)聲的特點,受到了工程師們的青睞。那么,有源壓電式蜂...

關鍵字: 蜂鳴器 器件 直流電壓

我有很多魔方。有些很大;有些很小;有些花費了一大筆錢。兩年前,我的弟弟把我的一個立方體扔在地上,毀了它,從那以后,我花了90美元升級了安全設備,以防止這種情況再次發(fā)生。但即使他沒有破壞我的立方體,他也會在我展示的時候破壞...

關鍵字: Arduino Uno LCD 閃光燈 蜂鳴器

蜂鳴器是一種非常常用的電子元器件,廣泛用于各種電子設備中的聲音輸出。而三極管則是一種半導體器件,具有放大和開關等功能。通過三極管的開關狀態(tài),可以驅動蜂鳴器產(chǎn)生聲音。

關鍵字: 蜂鳴器 三極管
關閉