STM32之点亮LED灯
使用固件库实现LED点灯
LED灯:

LED灯,是一种能够将电能转化为可见光的半导体器件
控制LED灯:

LED灯的正极接到了3.3V,LED灯的负极接到了PA1,也就是GPIOA1引脚
只需要控制PA1为相对应的低电平,即可点亮对饮的LED灯,输出高电平则熄灭对应的LED灯。
原理图:

具体代码如下:
主函数:

点亮灯的函数:


配置各个函数的具体做法:
因为我们是使用GPIO进行输出所以先打开stm32f103x_gpio.h的库文件,里面有许多的定义的函数所需的结构体,再打开一些时钟所需的库函数stm32f10x_rcc.h,stm32f10x_rcc.c,stm32f10x.h




我们的思想是在main函数里面调用一个函数使这个LED灯变亮
主要分为三步走:
初始化GPIO外设时钟(被调用的函数)
初始化LED引脚
输出电平
led_initstruct是我们自己定义的结构体名称,通过这个就可以配置相关的引脚,输出速度,输出模式。



输出速度的配置

输出模式的配置,这里我使用的是推挽输出,即Out_PP

配置初始化GPIO结构体,在这里第一个参数是GPIOA,第二个参数是我们定义的 GPIO结构体名称led_initstruct

外设时钟(使能ENABLE)



配置电平

第一个参数为GPIOA

第二个参数为GPIO_Pin_1

我们所用的GPIOA是通过桥接线APB2连接的

成功点亮(上面一个是电源指示灯,下面一个才是需要点亮的LED灯)

实现LED闪烁
只需在main函数里面进行操作即可

这里边加入了一个延迟函数delay(),里面的i是一个通过CPU主频灯大致计算的数值,无需记住。
如下图,上面一行是输出高电平,下面一行是输出低电平,我们要使LED灯熄灭,可以在PA1输出高电平,使两端无法流通,就可以实现熄灭。

相关文章:
STM32之点亮LED灯
使用固件库实现LED点灯 LED灯: LED灯,是一种能够将电能转化为可见光的半导体器件 控制LED灯: LED灯的正极接到了3.3V,LED灯的负极接到了PA1,也就是GPIOA1引脚 只需要控制PA1为相对应的低电平,即可点亮对…...
Java 多线程练习2 (抽奖比较Runnable写法)
MultiProcessingExercise2 package MultiProcessingExercise120240814;import java.util.ArrayList; import java.util.Collections;public class MultiProcessingExercise1 {public static void main(String[] args) {// 需求:// 在此次抽奖过程中,抽奖…...
使用fastboot更新部分系统
使用fastboot更新部分系统 获取分区信息 > part list sunxi_flash 0Partition Map for UNKNOWN device 0 -- Partition Type: EFIPart Start LBA End LBA NameAttributesType GUIDPartition GUID1 0x00008000 0x000097c5 "boot-r…...
windows 加载portch遇到的错误
import torch 遇到如下错误 File "<stdin>", line 1, in <module> File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\__init__.py", line 148, in <module> raise err OSError: [W…...
如何将 CICD 模版重构为 CICD component?
极狐GitLab 是 GitLab 在中国的发行版,专门面向中国程序员和企业提供企业级一体化 DevOps 平台,用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规,而且所有的操作都是在一个平台上进行,省事省心省钱。可以一键安装极狐GitL…...
数学建模——评价决策类算法(层次分析法、Topsis)
一、层次分析法 概念原理 通过相互比较确定各准则对于目标的权重, 及各方案对于每一准则的权重,这些权重在人的思维过程中通常是定性的, 而在层次分析法中则要给出得到权重的定量方法. 将方案层对准则层的权重及准则层对目标层的权重进行综合, 最终确定方案层对目标…...
KEEPALIVED 全csdn最详细----理论+实验(干货扎实,包教会的)
环境准备 主机名IP虚拟IP(VIP)功能ka1172.25.254.10172.25.254.100keepalived服务ka2172.25.254.20172.25.254.100keepalived服务realserver1172.25.254.110web服务realserver2172.25.254.120web服务 注意一定要关闭selinux,和防火墙,不然在…...
微信云开发云存储全部下载
一、安装 首先按照这个按照好依赖 安装 | 云开发 CloudBase - 一站式后端云服务 npm i -g cloudbase/cli 二、登录 tcb login 下载 首先在你要下载到的本地文件内创建一个名为:cloudbaserc.json 的json文件。 填入你的id {"envId":"你的云开发环…...
vos3000怎样对接voip落地语音网关呢?卡机和O口网关的配置技巧有哪些?
很多朋友没有接触过vos系统的使用,那么vos3000如何对接voip落地网关呢?卡机的配置技巧有哪些? VOS3000系统是针对中小等规模VoIP运营业务提供的支撑系统。 语音网关 落地网关分O口网关,S口网关,和全网通GOIP语音网关。…...
MySQL数据库专栏(四)数据库操作
1、创建数据库 create database if not exists [数据库名称] character set [字符集] COLLATE [排序规则]; 例如:create database if not exists db_demo character set utf8mb4 COLLATE utf8mb4_general_ci; if not exists:判断数据库是否存在&#x…...
Python编写Word文档
目录 0. 安装依赖 1. 创建word文档 2. 添加标题、居中、字体16大小 3. 添加标题一 4. 添加一段话并设置字体颜色 封装函数 5. 换页 6. 插入表格 0. 安装依赖 python-docx1.1.2 1. 创建word文档 from docx import Documentdoc Document() 2. 添加标题、居中、字体1…...
聚星文社AI工具
聚星文社AI工具是一款基于人工智能技术的文学创作辅助工具。聚星文社AI工具https://docs.qq.com/doc/DRU1vcUZlanBKR2xy 它能够帮助作者生成文字内容、自动校对、提供创作灵感等功能。 通过聚星文社AI工具, 作者可以更快速地完成文学作品的创作,提高创…...
思科OSPF动态路由配置8
#路由协议实现# #任务八OSPF动态路由配置8# 开放式最短路径优先(Open Shortest Path First,OSPF)协议是目前网络中应用最广泛的动态路由协议之一。它也属于内部网关路由协议,能够适应各种规模的网络环境,是典型的链路状态路由协…...
C++(10)类语法分析(1)
C(10)之类语法分析(1) Author: Once Day Date: 2024年8月17日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可参考专栏: 源码分析_Once-Day的博客-CSDN博客 …...
python语言day6 os random datetime .ini文件
os: 获取运行当前py文件的绝对路径: abspath中添加路径,会直接和绝对路径拼接。 folder_path os.path.abspath("") print(folder_path) 路径拼接: mac系统路径:file/TranslucentTB win系统路径:…...
powershell 终端 执行 pnpm -v报错
1.问题描述: 明明全局已安装 pnpm ,但在vscode默认终端 powershell 执行 pnpm -v 却报错: 2.问题根因: 原因是 PowerShell 执行策略问题。 3.解决方案: 以管理员身份运行 PowerShell 查看 PowerShell 的执行策略…...
最新保姆级Anaconda和Pycharm安装激活过程(2024最新版本)
Anaconda和Pycharm安装过程 Anaconda安装过程第一步第二步第三步第四步第五步第六步第七步第八步第九步Pycharm 安装过程:第一步第二步第三步第四步第五步第六步---激活过程第七步第八步第九步第十步第十一步第十二步第十三步第十四步Anaconda和Pycharm软件百度网盘…...
虚幻5|布料模拟
打开骨骼网格体 1.Mass Prooerties 如果给角色施加风力,密度越大越难飘,相反密度越小飘动浮度也小 2.Material Proerties Edge Stiffness,对衣服的折痕处的调整,其值越大就越能维持原本的折痕,相反折痕就会变小,但…...
K8S 存储
K8S(Kubernetes)的存储是容器化应用程序中非常重要的一部分,它帮助用户在不同场景下管理和存储数据。K8S提供了多种存储方式,以满足不同的存储需求。以下是对K8S存储的详细解析: 一、K8S存储类型 K8S的存储类型主要分…...
Kafka Manager支持jdk1.8的部署和使用
一、Kafka Manager简介 Kafka Manager 可能是现在能找到的最好的可视化的Kafka管理工具, 感谢Yahoo的开源; 使用Kafka Manager, 基本上之前需要运行Kafka相应命令行工具的工作现在都可以可视化的完成:创建Topic, 调整消息保存时长, Partition数量等等配置;管理Topic, 包括Reas…...
如何用pose-search在5分钟内构建智能人体姿态分析系统
如何用pose-search在5分钟内构建智能人体姿态分析系统 【免费下载链接】pose-search x6ud.github.io/pose-search 项目地址: https://gitcode.com/gh_mirrors/po/pose-search 你是否曾经想过为你的应用添加实时人体姿态识别功能,但又担心技术门槛太高&#x…...
终极美化指南:3步打造你的专业级foobar2000音乐播放器
终极美化指南:3步打造你的专业级foobar2000音乐播放器 【免费下载链接】foobox-cn DUI 配置 for foobar2000 项目地址: https://gitcode.com/GitHub_Trending/fo/foobox-cn 你是否还在使用foobar2000那单调乏味的默认界面?每天面对灰白色的播放列…...
Jetson AGX Orin避坑指南:从换源到编译Torchvision,我踩过的那些ARM架构的‘坑’
Jetson AGX Orin避坑实战:ARM架构下的深度学习环境搭建血泪史 第一次把Jetson AGX Orin拿到手时,我天真地以为这不过是一台"加强版树莓派"。直到连续三天被各种404 Not Found、Illegal instruction (core dumped)和No matching distribution f…...
Anno 1800模组加载器完全掌握指南:从安装到创意开发
Anno 1800模组加载器完全掌握指南:从安装到创意开发 【免费下载链接】anno1800-mod-loader The one and only mod loader for Anno 1800, supports loading of unpacked RDA files, XML merging and Python mods. 项目地址: https://gitcode.com/gh_mirrors/an/an…...
socat-windows:开发者与管理员必备的跨平台数据转发工具
socat-windows:开发者与管理员必备的跨平台数据转发工具 【免费下载链接】socat-windows unofficial windows build of socat http://www.dest-unreach.org/socat/ 项目地址: https://gitcode.com/gh_mirrors/so/socat-windows 在网络调试与数据传输领域&…...
深入拆解AM信号模拟:从AD9959 DDS配置到AD835乘法器调制的硬件设计细节
深入拆解AM信号模拟:从AD9959 DDS配置到AD835乘法器调制的硬件设计细节 在射频电路设计中,AM信号模拟系统是检验工程师硬件功底的最佳试金石。全国大学生电子设计大赛C题的经典命题,不仅考察对调幅原理的理解,更要求选手在30-40MH…...
构建智能投资决策中枢:TradingAgents-CN多维度金融分析框架实战指南
构建智能投资决策中枢:TradingAgents-CN多维度金融分析框架实战指南 【免费下载链接】TradingAgents-CN 基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版 项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN 破解投资决策困境…...
别再死记硬背API了!用这3个真实JS开发案例,带你玩转泛微Ecology9前端定制
别再死记硬背API了!用这3个真实JS开发案例,带你玩转泛微Ecology9前端定制 在泛微Ecology9的二次开发中,许多前端开发者都会遇到一个共同的痛点:面对庞大的API文档无从下手,每次开发都要反复查阅手册,效率低…...
AD23导出Gerber文件保姆级教程:从PCB到嘉立创下单,新手避坑指南
AD23导出Gerber文件全流程实战:从设计检查到嘉立创安全下单 第一次将精心设计的PCB转化为可生产的Gerber文件,就像新手司机首次独立上路——每个操作都可能隐藏着意想不到的陷阱。作为使用Altium Designer 23(AD23)的设计师&…...
告别DAC!用Arduino的PWM信号和双光耦,轻松驱动LM317实现4-20mA隔离输出
用Arduino PWM与双光耦打造高性价比4-20mA隔离输出方案 在工业自动化与物联网设备开发中,4-20mA电流环传输因其抗干扰能力强、传输距离远等优势,成为模拟信号传输的黄金标准。传统方案通常依赖昂贵的DAC芯片实现数字到模拟的转换,而本文将揭…...
