自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 STM32使用USART1指令控制LED灯

软件设计1.编程要点1)初始化配置LED灯GPIO2)使能RX和TX引脚GPIO时钟和USART时钟3)初始化GPIO,并将GPIO复用到USART上4)配置USART参数5)使能USART6) 获取指令输入,根据指令控制RGB彩灯

2022-02-17 15:58:13 2241

原创 STM32串口通信

USART功能框图1.功能引脚TX: 发送数据输出引脚。RX: 接收数据输入引脚。SW_RX: 数据接收引脚,只用于单线和智能卡模式,属于内部引脚,没有具体外部引脚。nRTS: 请求以发送,n表示低电平有效。如果使能RTS流控制,当USART接收器准备好接收新数据时,就会将nRTs变成低电平;当接收寄存器已满时,nRTs将被设置为高电平。该引脚只适用于硬件流控制。SCLK: 发送器时钟输出引脚。仅适用于同步模式。STM32F103ZET6芯片的USART引脚有3个USART和两个UART

2022-02-16 15:06:12 6164

原创 STM32系统定时器闪烁LED灯

SysTick寄存器介绍①SysTick控制及状态寄存器位段名称类型复位值描述16COUNTFLAGR/W0如果在上次读取本寄存器后,SysTick已经计到了0,则该位为12CLKSOURCER/W0时钟源选择位,0=AHB/8,1=处理器时钟AHB1TICKINTR/W01:SysTick倒数计数到0时产生SysTick异常请求,0:计数到0时无动作0ENABLER/W0SysTick定时器的使能位②SystTick重装

2022-02-12 19:31:04 2180

原创 STM32外部中断控制LED灯

EXTI简介EXTI是外部中断控制器,管理了控制器的20个中断/事件。每个中断/事件都对应一个边沿检测器,可以实现输入信号的上升沿检测和下降沿检测。EXTI可以实现对每个中断/事件进行单独配置。EXTI功能框图剖析...

2022-02-10 17:14:22 11198

原创 STM32中断应用概览

异常类型系统异常和外部中断可以在标准库文件stm32f10x.h这个头文件中可以查询到,在IRQn_Type这个结构体里面包含了F103系列全部的异常声明。F103系统异常清单编号优先级优先级类型名称说明地址———保留(MSP起始地址)0X0000 0000-3固定Reset复位0X0000 0004-2固定NMI不可屏蔽中断。RCC时钟安全系统(CSS)连接到NMI向量0X0000 0008-1固定HardFault

2022-01-27 21:09:10 583

原创 STM32使用HSE/HSI配置时钟

STM32时钟树系统时钟①HSE 高速外部时钟信号HSE 是高速外部时钟信号,可以由有源晶振或者无源晶振提供,频率为4~16MHz。当使用有源晶振时,时钟从OSC_IN引脚进入,OSC_OUT引脚悬空;当使用无源晶振时,时钟从OSC_IN和OSC_OUT进入,并且要配谐振电容。HSE最常使用的是8MHz的无源晶振。当确定PLL时钟来源的时候,HSE 可以不分频或者2分频,这个由时钟配置寄存器CFGR的位17,即PLLXTRE设置。②PLL时钟源PLL时钟来源可以有两个:一个是HSE,

2022-01-26 11:36:02 11731

原创 STM32位带操作控制LED灯(五)

位带简介位操作就是可以单独对一个比特位进行读和写。STM32位带示意图:位带区和未带别名区地址转换:对于片上外设位带区的某个位,设它所在字节的地址为A,位序号为n(0~7),那么该位在别名区的地址为:AliasAddar = 0x42000000 + (A-0x40000000)* 8* 4 + n*40x42000000 是外设位带别名区的起始地址。0x40000000 是外设位带区的起始地址。(A-0x40000000) 表示改为前面有多少个字节。...

2022-01-07 19:42:06 1007

原创 STM32按键控制LED灯亮灭

编程要点:1)使能GPIO端口时钟;2)初始化GPIO目标引脚为输入模式(浮空输入);3)编写简单测试程序,检测按键的状态,实现按键控制LED灯;bsp_led.h文件#ifndef T_LED_H_#define T_LED_H_#include "stm32f10x.h"//R-红色#define LED1_GPIO_PORT GPIOB#define LED1_GPIO_CLK RCC_APB2Periph_GPIOB#define LED1_GPIO_PIN GPI

2021-05-22 18:50:02 22546 1

原创 STM32使用自建库编程点亮LED灯(二)

STM32函数库介绍STM32固件库是ST公司针对STM32提供的函数接口,开发者可调用这些函数接口来配置STM32的寄存器,让开发人员脱离最底层的寄存器操作,有开发快速,容易阅读,维护成本低等优点。stm32f10x.h文件#ifndef _STM32F10X_H#define _STM32F10X_Htypedef unsigned int uint32_t;typedef unsigned short uint16_t;/*片上外设基地址*/#define PERIPH

2021-05-09 20:05:47 507

原创 STM32使用固件库点亮LED(三)

编程要点1)使能GPIO端口时钟;2)初始化GPIO目标引脚为推挽输出模式3)控制GPIO引脚输出高低,电平。bsp_led.h文件/*一下代码分别控制LED的GPIO端口,*///R-红色#define LED1_GPIO_PORT GPIOB#define LED1_GPIO_CLK RCC_APB2Perph_GPIOB#define LED1_GPIO_PIN GPIO_Pin_5//G-绿色#define LED2_GPIO_PORT GPIOB#defin

2021-05-06 18:43:15 974 1

原创 STM32使用寄存器编程点亮LED灯(一)

寄存器就是一个已经分配好地址的特殊的内存空间取的一个别名,这个特殊的内存空间可以通过指针操作。/*片上外设基地址*/#define PERIPH_BASE ((unsigned int)0x400000000) /*总线基础地址,GPIO都挂载在APB2上*/ #define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) /*GPIOB外设基地址*/#define GPIOB_BASE (APB2PERIPH_BASE + 0

2021-05-02 14:49:00 1601

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除