完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一、原理图
1.STM32F103C8T6 STM32F103C8T6是ST在2007年发布的一款MCU,截止目前ST已经发布了速度高达400MHz的STM32H7。三点好处,一是封装比较大,方便初学者焊接,二是价格低廉,学习成本比较低,三是网上有大量的资料供初学者学习使用。 2.BELL蜂鸣器 二、Keil代码 1.Beep.c 代码如下: #include"stm32f10x.h" #include"Beep.h" void BEEP_Init(void) { GPIO_InitTypeDef GPIO_Structure;//调用GPIO_Structure结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//引脚GPIOB挂载在APB2上的外设作为输入参数 GPIO_Structure.GPIO_Mode=GPIO_Mode_Out_PP;//指定工作方式OUT推挽输出 GPIO_Structure.GPIO_Pin=BEEP_Pin;//Beep指定引脚 GPIO_Structure.GPIO_Speed=GPIO_Speed_10MHz;//指定速度为10MHz GPIO_Init(BEEP_GPIO,&GPIO_Structure);//调用GPIO_Init 传入&GPIO_Structure(对该引脚初始化) } 2.Beep.h 代码如下: #ifndef _BEEP_H_ #define _BEEP_H_ #include "stm32f10x.h" //宏定义 #define BEEP_GPIO GPIOB //指定BEEP端口为GPIOB #define BEEP_Pin GPIO_Pin_10 //指定GPIO_Pin_10引脚为BEEP_Pin #define BEEP_OFF BEEP_GPIO->BRR = BEEP_Pin //BEEP响 SRR下拉 #define BEEP_ON BEEP_GPIO->BSRR = BEEP_Pin //BEEP停 BSRR上拉 //全局函数声明 void BEEP_Init(void); //初始化 #endif 3.main.c 代码如下: //#include"Led.h" #include"stm32f10x.h" #include"Beep.h" //typedef unsigned char uint8_t; //typedef unsigned short int uint16_t; //typedef unsigned int uint32_t; //typedef unsigned _INT64_uint64_t; static void delay(uint16_t n )//延时程序 { uint16_t i,j; for(i=0;i } int main(void) { //LED_Init(); BEEP_Init();//beep初始化 while(1) { // LED2_ON; //LED3_ON; // GPIO_ResetBits(GPIOB,GPIO_Pin_10);//GPIO位输出为0 BEEP_ON; delay(200); BEEP_OFF; //GPIO_SetBits(GPIOB,GPIO_Pin_10);//GPIO位输出1 delay(180); BEEP_ON; delay(40); BEEP_OFF; delay(100); BEEP_ON; delay(90); BEEP_OFF; delay(150); //LED2_OFF; //LED3_OFF; //delay(200); } } 总结 以上就是今天要讲的内容,本文仅仅简单介绍了基于STM32F103C8T6在Keil下编程实现基于STM32F103C8T6在Keil下编程实现蜂鸣器的长鸣的原理图和代码。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1780 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1081 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
728 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1679 浏览 2 评论
1938浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
731浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
570浏览 3评论
596浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
556浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 17:29 , Processed in 0.681895 second(s), Total 43, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号