历史上的今天
返回首页

历史上的今天

今天是:2024年12月16日(星期一)

正在发生

2021年12月16日 | STM32Keil下编程实现蜂鸣器长鸣

2021-12-16 来源:eefocus

前言

基于STM32F103C8T6在Keil下编程实现蜂鸣器的长鸣


一、原理图

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 for(j=0;j<8500;j++);

}


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下编程实现蜂鸣器的长鸣的原理图和代码。

推荐阅读

史海拾趣

E-CMOS(飞虹高科)公司的发展小趣事

在技术创新的同时,飞虹高科公司也积极拓展市场。然而,市场拓展的过程并非一帆风顺。公司面临着来自国内外众多竞争对手的激烈竞争,同时还要应对客户不断变化的需求。为了应对这些挑战,公司制定了一套完善的市场营销策略,积极参加国内外各类电子展会和技术交流活动,与客户建立了长期稳定的合作关系。同时,公司还不断优化产品性能和服务质量,提高客户满意度。通过这些努力,公司逐渐在市场上树立了良好的品牌形象。

ABB Group公司的发展小趣事

在电子行业的激烈竞争中,飞虹高科(E-CMOS)公司于XXXX年正式成立,专注于CMOS(互补金属氧化物半导体)技术的研发。初创时期,公司面临着资金短缺、技术壁垒和市场竞争等多重挑战。然而,公司创始人凭借对技术的深刻理解和敏锐的市场洞察力,成功获得了一笔风险投资,并招募了一支技术实力雄厚的研发团队。通过不懈努力,公司成功开发出了一款具有竞争力的CMOS图像传感器产品,开始在市场上崭露头角。

CTS公司的发展小趣事

CTS公司,全称CTS Corporation,于1896年在美国印第安那州创立。在创立初期,公司主要生产和销售电器元件,凭借对技术的深入理解和市场需求的敏锐洞察,逐渐在行业中崭露头角。随着业务的扩展,CTS的产品线逐渐丰富,涵盖了汽车及电脑配件、通讯产品、精密仪器及装置等多个领域。

Glorious Sources Co Ltd公司的发展小趣事
采取更有效的抗干扰措施如电磁屏蔽、电源滤波等以提高电路的稳定性和可靠性。
H&D Wireless公司的发展小趣事

高创深知不同行业对于运动控制解决方案的需求存在差异,因此始终关注行业应用的发展趋势。通过深入了解客户需求和行业工艺特点,高创能够为客户提供量身定制的解决方案。例如,在锂电行业,高创针对电池生产线的特殊需求开发了高性能伺服系统和运动控制器;在光伏行业,则提供了高精度、高稳定性的跟踪系统解决方案。这些定制化解决方案不仅满足了客户的实际需求,还帮助高创在行业中树立了良好的口碑。

Amphenol Thermometrics公司的发展小趣事

随着全球化进程的加速,高创也开始了其全球化布局的步伐。除了在以色列和中国设立研发中心外,高创还积极拓展国际市场,与全球多个国家和地区的客户建立了长期合作关系。通过参加国际知名展会如汉诺威工业博览会等,高创不仅展示了其最新技术和产品,还加强了与国际同行的交流与合作,进一步提升了其国际知名度和影响力。

问答坊 | AI 解惑

在单片机运行中读取定时器的值的C程序

在单片机运行中读取定时器的值的C程序…

查看全部问答>

扑克牌建高楼

房价高起的年代,美国建筑师Bryan Berg利用扑克牌堆叠出了澳门威尼斯人度假酒店、澳门百利宫和澳门金沙三座纸房子建筑物。全部扑克牌建筑物长10.5米、高3米,总总量达272公斤,打破了“世界最大型扑克牌建筑”的吉尼斯世界纪录。 Bryan Berg耗时44 ...…

查看全部问答>

编译DirectDrawCreateEx 出错!!请高手指点!!

编译时 DirectDrawCreateEx 有问题,代码如下: if( FAILED( dirdr = DirectDrawCreateEx( NULL, (VOID**)&m_pDD,IID_IDirectDraw7, NULL ) ) )                 return FALSE; 连接库有: winmm.lib dx ...…

查看全部问答>

请问为什么CPU,内存,硬盘的性能参数在不断飙升?

比如以前,我们说微处理器的出现是因为大规模集成电路的使用,那么请问最近这十年的性能的飙升是因为什么? 像内存,为什么以前只有64KB那么多,一下子飙升了上百倍,上千倍,而且体积还是那么大? …

查看全部问答>

如何获取CUP温度

在线等待,高分送出,我所有的分了,解决了我新开个号送分~~!!!!!…

查看全部问答>

CortexM0__Timer16_0示例代码程序下载

 CortexM0__Timer16_0示例代码程序下载…

查看全部问答>

NRF24L01的接口问题,求助

5V的atmega16跟NRF24L01进行接口时,要串电阻吗?还有就是,这两个之间有SPI时需要注意哪些问题?望高手指点一二。…

查看全部问答>

软件看门狗程序中reboot()功能实现不了

程序中的一块要实现软件看门狗功能,中间到reboot(0x00)并不能实现目标机重启,求高手指点~~~ /*includes*/ #include \"vxWorks.h\" #include \"logLib.h\" #include \"math.h\" #include \"stdioLib.h\" #include \"stdio.h\" #incl ...…

查看全部问答>

s3c6410 RVDS2.2的安装

首先 在网站www.mcu123.com下载 软件 。   然后是安装。   STEP1:将下载好的文件解压缩,得到一个虚拟光驱文件TLF-SOFT-12.30.05.ARM.RealView.Developer.Suite.v2.2-ZWTiSO.bin。用虚拟光驱打开它,点击SETUP.exe一路默认安装RVD ...…

查看全部问答>

晒下威世的TP路由

参加活动 https://bbs.eeworld.com.cn/thread-418128-1-1.html 中了个3G路由.幸运...…

查看全部问答>