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

news2024/10/3 3:00:53

小节任务:在对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.在学习时要多参考别人的程序代码,熟悉库函数的使用方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2185438.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Tiny-universe手戳大模型TinyRAG--task4

TinyRAG 这个模型是基于RAG的一个简化版本,我们称之为Tiny-RAG。Tiny-RAG是一个基于RAG的简化版本,它只包含了RAG的核心功能,即Retrieval和Generation。Tiny-RAG的目的是为了帮助大家更好的理解RAG模型的原理和实现。 1. RAG 介绍 LLM会产…

Linux中的进程间通信之共享内存

共享内存 共享内存示意图 共享内存数据结构 struct shmid_ds {struct ipc_perm shm_perm; /* operation perms */int shm_segsz; /* size of segment (bytes) */__kernel_time_t shm_atime; /* last attach time */__kernel_time_t shm_dtime; /* last detach time */__kerne…

OpenGL笔记之事件驱动设计将相机控制类和应用程序类分离

OpenGL笔记之事件驱动设计将相机控制类和应用程序类分离 —— 2024-10-02 下午 code review! 文章目录 OpenGL笔记之事件驱动设计将相机控制类和应用程序类分离1.代码图片2.分析3.UML4.代码 1.代码图片 运行 Mouse button 1 pressed at (100, 200) Mouse dragged by (50, 50)…

老年人最真实的养老需求

子孝父心宽。(陈元靓) 向往的养老胜地 下文节选(有删改): 中消协发布报告 揭示老年人最真实的养老服务需求 主页: 博客 文章目录 前言1. 需求端1.1 居家养老更关注家政餐饮等“日常所需”1.2 机构养老的需求重在“医…

猫咪尿闭的症状有哪些?适合尿闭猫咪的猫罐头盘点

刚开始养猫的时候只喂猫粮,也没督促孩子喝水,也没喂猫罐头,结果猫咪尿闭了,每次上厕所都在惨叫,完全无法排尿。带去医院治疗,前前后后总共花了8000,真实花钱买教训。我总结了一下猫咪尿闭时会出…

kettle从入门到精通 第八十九课 ETL之kettle kettle jms activemq使用教程

场景:群里有小伙伴求助jms activemq如何使用kettle 进行消费数据,之前连接过kafka,rabbtimq,想着activemq应该也没啥难度,结果低估了activemq。盘他!!! 插曲:ActiveMq 有…

SQL连接Python

对于运营部门的Yoyo来说,她想要知道夜曲优选的订单都来自哪些省份,每个省份的总订单数以及总订单金额分别是多少。 这时小鹿就会通过SQL对连接的数据库进行查询,再将结果传递给Python处理,并帮助Yoyo生成可视化图表。 我们先来快…

工程师 - Github文件访问加速

如果是下载单独的又比较大的Github上的文件,网速较差时,可以使用镜像网站,比如下面这个工具。 GitHub 文件加速 - Sonder (akams.cn) GitHub 文件加速 - Sonder 另外,也可以在搜索引擎里直接搜索“Github 文件加速”,…

MySQL高阶2041-面试中被录取的候选人

目录 题目 准备数据 分析数据 总结 题目 编写解决方案,找出 至少有两年 工作经验、且面试分数之和 严格大于 15 的候选人的 ID 。 可以以 任何顺序 返回结果表。 准备数据 Create table If Not Exists Candidates (candidate_id int, name varchar(30), yea…

检索增强生成(RAG)有什么好的优化方案?

RAG(检索增强生成)是一种结合了信息检索和内容生成的技术,常用于提升人工智能回答问题的准确性和相关性。本文将RAG的优化分为两个主要方向进行介绍:基础功能优化和架构优化。 一、RAG基础功能优化 基础功能优化主要是对RAG的每个…

以太网交换安全:端口安全

一、端口安全介绍 端口安全是一种网络设备防护措施,通过将接口学习到的动态MAC地址转换为安全MAC地址(包括安全动态MAC和Sticky MAC),阻止除安全MAC和静态MAC之外的主机通过本接口和设备通信,从而增强设备的安全性。以…

计组复习笔记

计组笔记 汇编部分 通用寄存器(General Registers): AX (Accumulator): 用于累加运算,也是乘法和除法的默认寄存器。BX (Base Register): 可以用作一个基址寄存器,通常用于存放数据的基地址。CX (Counter Register): 通常用于循环…

Lab3 【哈工大_操作系统】系统调用

本节将更新哈工大《操作系统》课程第三个 Lab 实验 系统调用。按照实验书要求,介绍了非常详细的实验操作流程,并提供了超级无敌详细的代码注释。文末附完整标准答案代码,包括系统调用实现 who.c 和测试函数 iam.c、whoami.c 以及超详细注释。…

mac M2安装单机版 MongoDB 7.x

1. 通过tgz包安装MongoDB 1.1 下载并解压缩安装包 官网下载 mac OS 的 MongoDB 安装包,这里选择7.x版本进行安装(下载链接) 下载好的tgz包,双击解压缩,并重命名为mongdb 将安装包拷贝到安装目录,笔者的…

深入解析开源大模型的GPU资源需求与优化策略

随着大模型的火热很多项目中都使用到了开源大模型,这时候准确评估大模型的GPU资源非常重要,主要有下面几个方面 成本效率:GPU是昂贵的资源。高估内存需求可能导致在硬件上的不必要支出,而低估则可能导致系统故障或性能下降。 性…

【数据结构】什么是红黑树(Red Black Tree)?

🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 📌红黑树的概念 📌红黑树的操作 🎏红黑树的插入操作 🎏红黑树的删除操作 结语 📌红黑树的概念 我们之前学过了…

资源《Arduino 扩展板3-WS2812》说明。

资源链接: Arduino 扩展板3-WS2812 1.文件明细: 2.文件内容说明 包含:AD工程、原理图、PCB。 3.内容展示 4.简述 该文件为PCB工程,采用AD做的。 该文件打板后配合Arduino使用,属于Arduino的扩展板。 该文件主要…

通义千问“百宝箱”:效率神器,解放你的双手!

你在为播客转文字、音视频转写和长文本阅读而烦恼吗?今天,就让通义千问的“百宝箱”来帮你解决这些难题! 最近,我发现通义千问首页隐藏着一个效率神器——“百宝箱”(现在更名为工具箱),简直是…

batch和momentum

🚀 机器学习系列前期回顾 1、初识机器学习 2、线性模型到神经网络 3、local minima的问题如何解决 🚀在初识机器学习中,了解了机器学习是如何工作的并引入了线性模型,在线性模型到神经网络这节,将线性模型进一步改进为…

FireRedTTS - 小红书最新开源AI语音克隆合成系统 免训练一键音频克隆 本地一键整合包下载

小红书技术团队FireRed最近推出了一款名为FireRedTTS的先进语音合成系统,该系统能够基于少量参考音频快速模仿任意音色和说话风格,实现独特的音频内容创造。 FireRedTTS 只需要给定文本和几秒钟参考音频,无需训练,就可模仿任意音色…