(STM32基础)STM32实现LED闪烁&LED流水灯&蜂鸣器

这篇具有很好参考价值的文章主要介绍了(STM32基础)STM32实现LED闪烁&LED流水灯&蜂鸣器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、新建工程

1、按照新建工程步骤创建工程,新建start、library、user三个文件夹,从固件库添加相应文件

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

2、keilkil小程序用来清理listings和objects文件夹中编译产生的中间文件,以后需要打包工程的话可以先用keilkill先清理,这样文件夹会大大缩小所占内存。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 二、操作GPIO口点亮LED灯

1)使能RCC开启GPIO时钟

在library中可以查看外设函数库,先找到RCC.h文件  

拖到最下方,一般最下方都是.h文件的所有库函数声明

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 实际操作:

使能GPIOA口的时钟

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

2)使用GPIO_Init函数初始化GPIO

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 实际操作:

GPIO初始化函数来初始化GPIOA口

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 结构体变量创建蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 结构体变量的子变量创建:

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 跳转到定义搜索子变量名找到可以设置的参数,设置所需参数。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

子变量:MODE

 蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 八种GPIO口模式:

AIN  =  Analog IN 模拟输入

IN-FLOATING = IN FLOATING 浮空输入

IPD = IPD In Pull Down  下拉输入

IPU = IPUIn Pull Up 上拉输入

OUT_OU = Out Open Drain 开漏输出

OUT_PP = Out Push Pul  推挽输出

AF_OD = Atl Open Drain 复用开漏

AF_PP = Atl Push Pull 复用推挽

选择推挽输出

子变量:Pin

选择面包板上连接的Pin_0口

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

子变量:Speed

默认选择速度为50MHz

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

3)使用输出或者输入的函数控制GPIO 

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

GPIO口所需要了解的函数(复位、初始化、结构体赋值、八个GPIO口读写函数 )

Setbits 两个参数设置所选GPIO口为高电平

ResetBits 两个参数设置所选GPIO口为低电平

WriteBit 三个参数设置(前两个选择端口)最后一个参考下列函数定义

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

实际操作:

ResetBits 设置所选GPIO口为低电平  点亮LED

Setbits 设置所选GPIO口为高电平 熄灭LED

注意:配置GPIO口时,推挽模式高低电平均有驱动能力,开漏模式低电平有驱动能力,高电平时呈高阻态无驱动能力。

三、配置GPIO实现流水灯功能

1、通过查看PIN口定义  可以知道开启多个端口用 | 来实现 

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

2、通过使用GPIO_Write(); 函数来整体赋值Pin0-15个接口。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 通过查看函数的参数,第一个参数是GPIOA,第二个参数是直接赋指定值给输出数据寄存器。

因为c语言不支持直接写2进制,所以用十六进制代表二进制赋值。 

因为LED灯低电平点亮,所以0x0001按位取反。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

八个灯的函数依次,最终实现流水灯闪烁现象。蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

 还可以通过创建一个点灯数组,来完成花式点灯。

四、配置GPIO实现蜂鸣器鸣响

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

直接复用LED点亮程序,给蜂鸣器的IO接线口低电平,蜂鸣器鸣响。

五、使用库函数的几种方法

1、打开.h文件的最下方,查看里面有哪些可以调用的函数,再邮件查看函数定义,查看调用方法参数。

2、打开库函数用户手册,但是此用户手册是老版本,大部分函数调用方法一致。新版标准函数库官方还没有推出用户手册。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件在函数标准库文件夹内有一个帮助文档。

蜂鸣器加led闪烁,stm32,单片机,嵌入式硬件

3、百度搜索参考别人的文档文章来源地址https://www.toymoban.com/news/detail-724352.html

到了这里,关于(STM32基础)STM32实现LED闪烁&LED流水灯&蜂鸣器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32F103C8T6定时器实现led的周期闪烁及PWM实现流水灯

    通过定时器Timer方式实现时间的精准控制,相当于给CPU上了一个闹钟,CPU平时处理其它任务,当定时时间到了以后,处理定时相关的任务。请设置一个5秒的定时器,每隔5秒从串口发送“hello windows!”;同时设置一个2秒的定时器,让LED等周期性地闪烁。 使用TIM3和TIM4,分别输

    2024年01月23日
    浏览(48)
  • STM32第二课:灯的亮灭、流水灯、有源蜂鸣器

             STM32的第二课,我们来学习如何使用STM32控制等的亮灭,使用多重控制制作我们自己的流水灯,然后再了解一下有源蜂鸣器的用法,创造出不一样的声音。         首先开头包含STM32的头文件#include \\\"stm32f10x.h\\\",这个头文件包含STM32众多的重要驱动,一定要把这个头文

    2024年01月24日
    浏览(34)
  • 【蓝桥杯嵌入式】点亮LED灯,流水灯的原理图解析与代码实现——STM32

    🎊【蓝桥杯嵌入式】专题正在持续更新中,原理图解析✨,各模块分析✨以及历年真题讲解✨都在这儿哦,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏 🪔本系列专栏 -  蓝桥杯嵌入式_勾栏听曲_0的博客 🍻欢迎大家  🏹  点赞👍  评论📨  收藏⭐️ 📌个人主

    2024年02月03日
    浏览(42)
  • STM32单片机 超入门项目:流水灯(不同闪烁模式和速度)

    流水灯通过交替闪烁实现灯光流动的效果,本篇将分析如何采用STM32单片机实现流水灯。 STM32单片机(STM32F103RCT6)、发光二极管 4(我用的是七彩快闪,用红绿蓝LDE自行搭配也可)、1k电阻 4、面包板飞线等自备。 打开STM32CubeMX,选择型号STM32F103RCT6,配置调试器PinoutConfigurati

    2023年04月09日
    浏览(34)
  • STM32F103之点亮LED流水灯

    目录 一、设计分析及代码思路 1.实现流水灯步骤 2.代码设计过程 二、创建项目 1.新建项目 2.编写代码 三、仿真运行 四、连接电路 1.器件连接 2.程序烧录 五、代码烧录及实现 1.烧录实现 2.流水灯实现 六、总结  配置时钟使能寄存器 配置端口寄存器 设置输出模式 实物连接及

    2024年04月25日
    浏览(30)
  • Stm32f103c8t6(proteus仿真)学习——1.点亮LED流水灯

    软件准备:keil uVsion 5 和 proteus 8.15 打开proteus8.15 - 新建项目 - 改名 - 一直next 鼠标右键 - 放置 - 元件 - From Libraries 搜索Stm32 - 选择stm32f103c8 画出点亮一个LED灯的原理图 提示,各元器件搜索: 主控芯片:stm32 电阻:res LED灯:led 鼠标右键 - 放置 - 元件 - From Libraries 地和VCC 在左侧

    2024年02月08日
    浏览(54)
  • stm32实现流水灯

    目录 一、STM32F103C8实现流水灯  二、注意事项  三、总结 打开keil,创建新项目 选择对应芯片    实验代码 c语言代码 汇编语言 添加驱动文件   烧录,烧录前设置生成hex文件    构筑完成后在项目文件的Objects文件中会生成hex文件 接好线路  hex文件生成后用mcuisp进行烧录 实

    2024年02月05日
    浏览(36)
  • 利用STM32实现流水灯程序

    keil MDK安装与新建工程 在KEIL MDK官网中下载KEIL MDK ARM,下载链接如下:MDK-ARM Version 5.38a Evaluation Software Request (keil.com),在填写信息后进行安装和下载。 安装后进行以下操作: 右键keil5图标,点击“以管理员身份运行” 进入之后, 点击“ file ”里边的选项“ License Management ”

    2024年02月06日
    浏览(34)
  • 基于stm32的流水灯实现

    主控芯片:  正点原子STM32F103ZET6精英开发板 oled:中景园七针脚0.96寸oled 代码编程软件: keil5 代码下载地址: stm32流水灯项目 希望大家仔细看一看是否符合自己的需求,实际上本文中写到的很多东西已经能为课设所用,理清逻辑后自己编程也很方便的,但如果想直接copy我的项目

    2024年02月07日
    浏览(29)
  • 【C51基础实验 LED流水灯】

    前言: 前几篇学会了LED驱动原理,并且成功点亮了一颗LED和实现了LED的闪烁,那么这篇紧接着就来解锁LED的新功能,LED流水灯。当然这里前提是基于肉眼余晖可见光达成的效果。 开发板上 LED 模块电路原理图如下图所示: 看上图中 LED 采用共阳接法 ,D1-D8 连接到单片机的

    2024年02月10日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包