STM32 创建LED工程,点亮LED

2023-05-16

容忍5V电压
在这里插入图片描述
FT = FIve Tolerate 允许5V
寄存器就是特殊的存储器
上拉输入和下拉输入 如果输入啥都不接,IO口输入电平极容易受外部电平干扰,加上拉电阻就是为了保护输入引脚的电平。
为了避免引脚悬空导致输入数据不确定
上拉输入默认为高电平的输入模式
下拉输入默认为低电平的输入模式
STM32的上拉和下拉,都是一种弱上拉或者下拉,因为阻值比较大。
在这里插入图片描述

施密特触发器的作用,就是稳定电压。
IO口三种输出方式,第一种对16位输出数据寄存器写(比较麻烦不能按位写,只能16位一起写,会影响其它位的数据)
第二种位设置/清除寄存器,可以单独对位进行操作,内部电路自动执行,不会影响其它位的数值。
第三种 位带操作,(分配的专有地址)对应的是RAM和寄存器的映射,类似51寄存器的sfr位寻址。
强推挽输出,具有较强的输出能力。
开漏输出 ,IIC通信,兼容一些5V传感器。低电平具有输出能力,高电平不具备。
关闭:在IO口输入模式下生效,IO口由外部电平决定高低。
GPIO8种模式
很多单片机都采用高电平,弱驱动,低电平强驱动的规则,所以一般推荐,使用外部供电接法,
在这里插入图片描述
主程序

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
int main(void)
{
	//打开APB2时钟
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
	//定义结构体类型变量
	GPIO_InitTypeDef GPIO_InitStructure; 
	//给结构体成员赋值。
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 ;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	//完成GPIOA的初始化
	GPIO_Init(GPIOA,&GPIO_InitStructure);
	
	//写0
	//GPIO_SetBits(GPIOA,GPIO_Pin_0);
	
	while(1)
	{
		//使用GPIO库函数写0和1
		GPIO_ResetBits(GPIOA,GPIO_Pin_0);
		Delay_ms(500);
		GPIO_SetBits(GPIOA,GPIO_Pin_0);
		Delay_ms(500);
//		GPIO_WriteBit(GPIOA ,GPIO_Pin_0,Bit_RESET);
//		Delay_ms(500);
//		GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_SET);
//		Delay_ms(500);
		
//		GPIO_WriteBit(GPIOA ,GPIO_Pin_0,(BitAction)0);
//		Delay_ms(500);
//		GPIO_WriteBit(GPIOA,GPIO_Pin_0,(BitAction)1);
//		Delay_ms(500);
		
	}
}

延时库函数

#include "stm32f10x.h"

/**
  * @brief  微秒级延时
  * @param  xus 延时时长,范围:0~233015
  * @retval 无
  */
void Delay_us(uint32_t xus)
{
	SysTick->LOAD = 72 * xus;				//设置定时器重装值
	SysTick->VAL = 0x00;					//清空当前计数值
	SysTick->CTRL = 0x00000005;				//设置时钟源为HCLK,启动定时器
	while(!(SysTick->CTRL & 0x00010000));	//等待计数到0
	SysTick->CTRL = 0x00000004;				//关闭定时器
}

/**
  * @brief  毫秒级延时
  * @param  xms 延时时长,范围:0~4294967295
  * @retval 无
  */
void Delay_ms(uint32_t xms)
{
	while(xms--)
	{
		Delay_us(1000);
	}
}
 
/**
  * @brief  秒级延时
  * @param  xs 延时时长,范围:0~4294967295
  * @retval 无
  */
void Delay_s(uint32_t xs)
{
	while(xs--)
	{
		Delay_ms(1000);
	}
} 

工程目录
在这里插入图片描述
编译下载。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STM32 创建LED工程,点亮LED 的相关文章

  • 140-基于stm32单片机智能晾衣杆控制系统Proteus仿真+源程序

    资料编号 140 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 ds1302时钟 光敏传感器 蜂鸣器 LED灯 制作一个基于stm32单片机智能晾衣杆控制系统Proteus仿真 2 通过光敏传感器
  • STM32F4 通过软复位跳转到引导加载程序,无需 BOOT0 和 BOOT1 引脚

    我问这个问题是因为可以在这里找到类似问题的答案 通过应用程序跳转到 STM32 中的引导加载程序 即从用户闪存在引导模式下使用引导 0 和引导 1 引脚 用户 JF002 JF002回答 当我想跳转到引导加载程序时 我在其中一个备份寄存器中
  • VHDL——连接开关和LED

    我有 Xilinx Spartan6 和下一个 VHDL 代码 library ieee use ieee std logic 1164 all use ieee numeric std all entity Switches Leds i
  • 物联网网关

    物联网网关是 连接物联网设备和互联网的重要桥梁 它负责将物联网设备采集到的数据进行处理 存储和转发 使其能够与云端或其它设备进行通信 物联网网关的作用是实现物联网设备与云端的无缝连接和数据交互 物联网网关功能 数据采集 物联网网关可以从物联
  • [屏驱相关]【SWM166-SPI-Y1.28C1测评】+ 有点惊艳的开箱

    耳闻华芯微特许久了 看到论坛得评测活动赶紧上了末班车 毕竟对有屏幕得板子也是很喜欢得 京东快递小哥客客气气 微笑着把快递给了我 好评 直接拆了包 在此之前没看过视频号 所以这个圆盘盘得模具还是有点惊喜的 正面照如下 开机有灯光秀 还有动画
  • 串口通讯第一次发送数据多了一字节

    先初始化IO再初始化串口 导致第一次发送时 多出一个字节数据 优化方案 先初始化串口再初始化IO 即可正常通讯
  • 无法使用 OpenOCD 找到脚本文件

    我正在尝试按照本教程将 OpenOCD 与我的 ST 发现板一起使用 https japaric github io discovery README html https japaric github io discovery READM
  • 毕设开题分享 单片机智能教室系统(智能照明+人数统计)

    1 简介 Hi 大家好 今天向大家介绍一个学长做的单片机项目 单片机智能教室系统 智能照明 人数统计 大家可用于 课程设计 或 毕业设计 项目分享 https gitee com feifei1122 simulation project
  • CMSIS & STM32,如何开始? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在 STM32 上使用 CMSIS 启动项目 网上一搜 没找到具体的教程 有些使用 SPL 开始项
  • 库函数点亮Led

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 提示 这里可以添加本文要记录的大概内容 例如 随着人工智能的不断发展 机器学习这门
  • systick定时器

    systick定时器 文章目录 前言 一 前期疑惑 二 解答 1 关于systick是阻塞的吗 2 非阻塞 三 软件编写 总结 前言 这边记录systick相关知识点 一 前期疑惑 在学习systick志气啊 其实对于systick还是一脸
  • 核心耦合内存在 STM32F4xx 上可执行吗?

    尝试从 STM32F429s CCM 运行代码 但每当我命中 CCM 中的第一条指令时 我总是会遇到硬故障 并且 IBUSERR 标志被设置 该指令有效且一致 STM32F4xx 是否可能不允许从 CCM 执行 数据访问效果良好 alios
  • PWM DMA 到整个 GPIO

    我有一个 STM32F4 我想对一个已与掩码进行 或 运算的 GPIO 端口进行 PWM 处理 所以 也许我们想要 PWM0b00100010一段时间为 200khz 但随后 10khz 后 我们现在想要 PWM0b00010001 然后
  • HAL_Delay() 陷入无限循环

    我被 HAL Delay 函数困住了 当我调用此函数 HAL Delay 时 控制陷入无限循环 在寻找问题的过程中 我发现了这个 http www openstm32 org forumthread2145 threadId2146 htt
  • 使用 STM32 USB 设备库将闪存作为大容量存储设备

    我的板上有这个闪存IC 它连接到我的STM32F04 ARM处理器 处理器的USB端口可供用户使用 我希望我的闪存在通过 USB 连接到 PC 时被检测为存储设备 作为第一步 我在程序中将 USB 类定义为 MSC 效果很好 因为当我将主板
  • 使用 STM32F0 ADC 单独读取不同的输入

    STM32F072CBU 微控制器 我有多个 ADC 输入 并且希望单独读取它们 STMcubeMX 生成样板代码 假设我希望按顺序读取所有输入 但我无法弄清楚如何纠正这个问题 这篇博文 http blog koepi info 2015
  • Android 通知 LED 不使用我的颜色

    我正在尝试使用一个通知 该通知也使用我的 S3 上的通知 LED 但由于某种原因 颜色将始终为蓝色 我猜这是默认值 我尝试使用不同的颜色但没有任何变化 其他应用程序 例如 Whatsapp Gmail 和 Facebook 在显示不同颜色的
  • STM32 传输结束时,循环 DMA 外设到存储器的行为如何?

    我想问一下 在以下情况下 STM32 中的 DMA SPI rx 会如何表现 我有一个指定的 例如 96 字节数组 名为 A 用于存储从 SPI 接收到的数据 我打开循环 SPI DMA 它对每个字节进行操作 配置为 96 字节 是否有可能
  • Android 2.1 的 Camera.Parameters.FLASH_MODE_TORCH 替换

    我正在尝试编写一个需要 LED 闪光灯进入手电筒模式的应用程序 问题是 Android 2 1不支持这种模式 因此我还不能支持该平台 这不是问题 但我正在为我的未婚夫编写它 而她的 Epic 4G 目前只有 2 1 我发现一些代码示例使用了
  • STM32F4 定时器 - 计算周期和预分频,以生成 1 ms 延迟

    我在用STM32F407VGT6 with CubeMX 因此 我从通用定时器开始 但我被预分频值和周期值所困扰 基本上我想每隔一段时间生成一个定时器中断n 其中 n 1 2 3 ms 并执行一些任务 计算周期和预分频值的公式有很多变化 公

随机推荐

  • win10 vmvare打开虚拟机蓝屏重启,禁用device/credential guard 解决方法

    目录 解决方法在此 win10系统安装的vmware15一打开虚拟机就蓝屏重启 家人们我改了大半天 xff0c 试了友友们各种方法 xff0c 终于发现 xff0c 全都不好使 xff01 11 xff01 xff01 xff01 xff0
  • 数据结构算法设计题

    线性表 1 已知长度为n的线性表采用顺序存储结构 写一个算法 xff0c 删除线性表中所有值为x的元素 方法一 用k记录顺序表L中等于x的元素个数 xff0c 边扫描L边统计k 并将不等于x的元素前移k个位置 xff0c 最后修改L的长度
  • Elasticsearch Java API的基本使用

    说明 在明确了ES的基本概念和使用方法后 xff0c 我们来学习如何使用ES的Java API 本文假设你已经对ES的基本概念已经有了一个比较全面的认识 客户端 你可以用Java客户端做很多事情 xff1a 执行标准的index get d
  • lut调色预设怎么安装,LUT预设导入FCPX/PR/AE/PS/LR/达芬奇等软件教程

    lut调色预设怎么安装 xff0c LUT预设导入FCPX PR AE PS LR 达芬奇等软件教程 lut调色预设是一套深受设计师喜爱的调色软件 xff0c 通过使用LUT可以迅速达到很好的胶片质感和色彩 xff0c 在此基础上稍作调整即
  • macbook pro如何外接显示器?macbook 外接显示器教程

    13寸MacBook Pro屏幕是不是有点小了 xff1f 不知道你有没有萌生外接显示器的方法 xff01 接下来就为大家展示一下macbook pro如何外接显示器 xff01 先说说外接显示器有什么好处 1 拓展了工作空间 13寸的Ma
  • 腾讯视频 for Mac缓存的视频在哪?找不到腾讯视频缓存文件怎么办

    腾讯视频 for Mac提供丰富多彩的节目 xff0c 有时候我们会想要将缓存下来观看过的视频给删除 xff0c 但是根本找不到腾讯视频缓存文件 xff0c 那么我们要怎样才知道它的缓存路径呢 和小编一起来看看腾讯视频 for Mac缓存的
  • Mac OS小技巧:MAC电脑如何设置一键切换输入法

    我们在电脑上进行输入时经常会切换中英文输入不同的文字 xff0c 在windows系统上输入法切换直接按快捷键shift 43 ctrl就可以实现 xff0c 但是Mac系统的输入法设置与Windows系统的输入法设置不同 xff0c 但是
  • 全网最快的M1 MacBook Air详细测评

    简要总结这款 M1 MacBook Air xff1a 1 M1性能表现超出预期的好 xff0c 速度快到堪称恐怖 2 与Intel Mac一样功能强大 xff0c 甚至更强大 3 M1发热大幅降低 xff0c 续航大幅提升 4 兼容性不是
  • Mac技巧|如何阻止 iCloud 同步某个文件夹?

    使用 iCloud 的过程中 xff0c 难免遇到有些文件夹你不希望同步 比如游戏制作 xff0c 视频剪辑等的工程文件 xff0c iCloud 的持续同步机制会使得这些文件夹中的部分文件持续处于被上传且不可用状态 今天小编就给大家带来了
  • parallels desktop M1版安装Windows10教程

    近期有些朋友购入了新的M1 mac xff0c 可发现无法安装windows 现在 xff0c Parallels发布了与M1 Mac兼容的Parallels 16的技术预览版本 xff0c 可以安装ARM版本的win10 接下来 xff0
  • macOS怎样备份?备份Mac文件的最佳方法

    备份macOS绝不是一个坏主意 xff0c 您的机器可能会损坏 xff0c 故障或变得更糟 无论出现什么问题 xff0c 备份都可以帮助您恢复正常工作 如何使用Time Machine和iCloud备份Mac 要使用Time Machine
  • Office 2019 for Mac激活失败,显示未找到许可证怎么办?

    无法激活office 2019 xff1f office 2019激活后提示找不到许可证 xff1f 今日小编找到一个解决办法 xff1a 原来是在启动程序中注册了office的授权系统监控程序 com microsoft office l
  • Mac 外接显示器色彩不正常解决方案

    使用 MacBook和MacMini使用外接第三方非 Apple 认证的显示器会有色彩问题 xff0c 可能是显示器颜色整体发灰 xff0c 也有可能绿色特别绿 这是因为Apple封闭的系统识别的显示器较少 xff0c 第三方厂商也未很好的
  • mybatis-xml配置

    xff08 一 xff09 先配置datasource properties配置文件 xff1a xff08 此步可省略 xff09 jdbc driver 61 com mysql jdbc Driver jdbc url 61 jdbc
  • ArchiCAD 24 Mac版3D建筑模型设计和分析软件新功能介绍

    ArchiCAD 24 Mac破解版全新上线 xff0c 有哪些新增功能 xff1f 小编给大家带来了这篇ArchiCAD 24 Mac版3D建筑模型设计和分析软件新功能介绍的文章 xff0c 希望可以帮到你 设计 创建集成模型 使用Arc
  • MacBook不断重启的 5 个原因以及如何解决此问题

    您的 Mac 是否突然无故重启 xff1f 您外出回来时 xff0c 突然发现您的 Mac 正在神秘地关闭并重新启动 xff0c 这非常令人生气 如果重新启动问题变得更加严重 xff0c 您的 MacBook可能根本无法使用 小编将为您带来
  • 如何使用Super Vectorizer在Mac上快速矢量化图像?

    如何在 Mac 上将 PDF 转换为SVG矢量 xff1f 有需要的朋友快来跟小编看看具体做法吧 xff01 步骤 1 xff1a 在 Mac 上打开 Super Image Vectorizer 将图像文件导入 Super Vectori
  • Mac电脑怎么使用ping命令?

    电脑出问题了 xff0c 上不了网 xff0c 想排查下电脑的问题出在哪儿就需要用到ping xff0c 但是如果是Mac电脑该如何ping呢 xff1f 其实在Mac 自带的 终端 中使用ping命令 xff0c 下面小编教你如何在Mac
  • 安装VMware Workstation Pro 16 教程,Ubuntu 18 桌面版安装教程

    目录 1 VMware Workstation 16 Pro 安装教程 2 Ubuntu 18 桌面版安装教程 1 VMware Workstation 16 Pro 安装教程 1 第一步 xff1a 到官网进行下载软件 xff0c 下载
  • STM32 创建LED工程,点亮LED

    容忍5V电压 FT 61 FIve Tolerate 允许5V 寄存器就是特殊的存储器 上拉输入和下拉输入 如果输入啥都不接 xff0c IO口输入电平极容易受外部电平干扰 xff0c 加上拉电阻就是为了保护输入引脚的电平 为了避免引脚悬空