STM32(四)LED闪烁、流水灯及蜂鸣器操作

小节任务:在对GPIO函数初始化操作及配置好输入或输出模式后,使用GPIO的输入输出函数控制LED闪烁、流水灯及蜂鸣器操作,本小节先使用GPIO的四个输出函数

SetBits函数将指定端口设置为高电平

ResetBits函数将指定端口设置为低电平

WriteBit根据第三个参数的值来设置指定的端口

Write函数可以同时对16个端口进行同时写入操作


输出模式笔记:推挽输出高低电平均有驱动能力,开漏输出高电平相当于高阻态,没有驱动能力,低电平有驱动能力。一般输出用推挽模式,特殊地方采用开漏输出

一、LED操作

1.实现LED闪烁

两种方式实现LED闪烁,第一种是用两个函数将LED端口置零再置高电平实现LED的闪烁,第二种方式是直接使用WriteBit函数改变第三个参数的值来设置指定的端口高低电平。(因为LED灯的插入方式,用的是低电平点亮。)

2.实现LED流水灯

(1)在实现LED流水灯的基础上,首先将初始化的端口改为GPIO_Pin_All,此时GPIO控制可控制GPIOA的所有端口

(2)使用GPIO_Write函数实现LED流水灯,将各个端口配置成低电平加上延时函数实现LED灯的闪烁

二、蜂鸣器操作

1.接线图

I/0控制极可以随便选择一个I/O口,但是A15 B3 B4着三个端口是调试端口,别选

2.端口初始化操作

要用到什么端口就对对应端口先进行 初始化操作,蜂鸣器这里使用的是GPIOB12端口,所以先将GPIO初始化函数中的端口改成这个

3.输出函数操作蜂鸣器

三、使用库函数方法

1.直接打开头文件拉到最后,到函数定义中查看函数功能及参数使用

2.资料文件夹中的参考文档中有库函数使用方法文档,其中有所有库函数的介绍和使用方法和例子,可打开使用。

3**.在学习时要多参考别人的程序代码,熟悉库函数的使用方法。**

相关推荐
stm32发烧友14 小时前
基于STM32的智能家居安防系统设计
stm32·嵌入式硬件·智能家居
LightningJie15 小时前
STM32(hal库)中的定时器从模式TIM_SlaveConfigTypeDef结构体中的含义,以及可选参数的含义都是什么意思
stm32·单片机·嵌入式硬件
小齿轮lsl16 小时前
无桥Boost-PFC 双闭环控制MATLAB仿真
单片机·嵌入式硬件·matlab·电力电子·电源硬件·pfc
Matlab程序猿小助手18 小时前
【MATLAB源码-第213期】基于matlab的16QAM调制解调系统软硬判决对比仿真,输出误码率曲线对比图。
开发语言·嵌入式硬件·算法·matlab·机器人
鱼与仙人掌19 小时前
STM32:ADC
stm32·单片机·嵌入式硬件
yangpipi-20 小时前
Linux系统程序设计--2. 文件I/O
linux·stm32·单片机
沐欣工作室_lvyiyi1 天前
汽车牌照识别系统的设计与仿真(论文+源码)
人工智能·单片机·fpga开发·汽车·单片机毕业设计·matlab车牌识别
努力的里1 天前
【STM32开发】-FreeRTOS开发入手学习
stm32·学习·freertos·rtos
wenchm1 天前
细说STM32单片机USART中断收发RTC实时时间并改善其鲁棒性的另一种方法
stm32·单片机·实时音视频
雷打不动的晴天1 天前
关于PCB供电保护的问题
嵌入式硬件