STM32
文章平均质量分 68
p0inter
生而自由,爱而无畏,保持热爱奔赴山海
展开
-
SPI通信原理---STM32F4--HAL
SPI接口原理SPI是一种高速全双工同步通信,在芯片管脚上占用四根线,主要应用在EEPROM、FLASH、实时时钟、AD转换器,还有数字信号处理器和数字信号解码器之间。SPI接口使用4根线通信。MISO:主设备数据输入,从设备数据输出MOSI:主设备数据输出,从设备数据输入SCLK:时钟信号,由主设备产生CS:片选信号,由主设备控制工作原理主机和从机都有一个串行移位寄存器,主机通过向他的SPI串行寄存器写入一个字节来发起一次传输串行移位寄存器通过MOSI信号线将字节传送给从机,从机原创 2021-11-19 17:30:09 · 2102 阅读 · 0 评论 -
LCD显示实验----STM32f4--HAL
步骤LCD初始化 LCD_Init(); //LCD初始化此函数在lcd.c文件里面2. 设置LCD背景颜色LCD_Clear(WHITE);此函数在lcd.c文件里面3. 设置字体颜色 POINT_COLOR=RED; 写入要显示的字体LCD_ShowString(10,80,240,24,24,"LTDC TEST");LCD_ShowString函数参数:第一个参数:x轴起点坐标第二个参数:y轴起点坐标原创 2021-11-19 11:27:02 · 3108 阅读 · 3 评论 -
IIC通信---EEPROM24C02---STMF4
IIC通信协议IIC是同步半双工通信,一个数据线SDA和一个时钟SCL线,可以接受和发送数据。在CPU与被控IC之间、IC与IC之间进行双向传送。空闲状态IIC总线的SDA和SCL两条信号线同时处于高电平时,规定为总线的空闲状态。起始信号当SCL为高期间,SDA由高到低的跳转代码实现为://产生IIC起始信号void IIC_Start(void){ SDA_OUT(); //sda线输出模式 IIC_SDA=1; IIC_SCL=1; delay_us(4)原创 2021-11-19 08:50:12 · 476 阅读 · 0 评论 -
独立看门狗---STM32----HAL
基本概念看门狗解决的问题是什么?在系统跑飞(程序异常执行)的情况,是系统复位,程序重新执行。独立看门狗适应用于需要看门狗作为一个在主程序之外能够完全独立工作,并且对时间精度要求低的场合。工作原理在键值寄存器中写入0xCCCC,开始启用独立看门狗,此时计数器开始从其复位值递减,当计数器值计数到0时会产生一个复位信号。无论何时,只要在键值寄存器中写入0xAAAA,重装载寄存器的值就会重新加载到计数器,从而避免计数器到0,产生复位信号。如果程序异常,就无法往键值寄存器中写入0xAAAA,重装载寄存器的原创 2021-11-18 15:25:02 · 380 阅读 · 0 评论 -
定时器--STM32f4--HAL
基本概念STM32中有三种定时器,高级定时器,通用定时器,基本定时器,具体如下图:发生如下事件将产生中断/DMA更新:计数器向上溢出/向下溢出,计数器初始化触发事件:计数器启动、停止、初始化或者由内部/外部触发计数输入捕获输出比较支持针对定位的增量(正交)编码器和霍尔传感器电路触发事件作为外部时钟或者按周期的电流管理计数器模式向上计数:计数器从0计数到自动加载值ARR,然后重新冲0开始计数并且产生一个计数器溢出事件向下计数模式:计数器从自动装入的值ARR开始向下计数到0,然后从原创 2021-11-17 20:41:33 · 1216 阅读 · 0 评论 -
串口接收中断配置过程---STM32F4--HAL
串口接收中断程序配置过程(HAL)初始化相关参数,使能串口:HAL_UART_Init();串口相关IO口配置,复用配置。在HAL_UART_MspInit中调用HAL_GPIO_Init函数串口接收中断优先级配置和使能HAL_NVIC_EnableIRQ();HAL_NVIC_SetPriority();使能串口接收中断HAL_UART_Receive_IT();编写中断服务函数:USARTx_IRQHandler具体配置过程我们通过电脑把数据发送给ST原创 2021-11-17 16:46:58 · 5050 阅读 · 2 评论 -
串口发送通信---UART发送---STM32F4实现
串口发送程序配置过程(HAL库)初始化串口相关参数,使能串口HAL_UART_Init()串口相关IO口配置,复用配置在HAL_UART_MspInit中调用HAL_GPIO_Init函数发送数据,并等待数据发送完毕HAL_UART_Transmit()具体代码我们以STM32F4中的 PA9和PA10的UART1通信为例。首先是初始化串口相关参数,使能串口,使用的函数是HAL_UART_Init(),我们定义一个函数来调用它,具体代码如下:UART_Handle原创 2021-11-16 18:06:02 · 3265 阅读 · 0 评论 -
串口通信的基本原理----STM32
串口通信基本原理1. 处理器与外部设置通信的基本方式并行通信:数据各个位同时传输串行通信:数据按位顺序传输在串行通信中,按照数据的传输方向,又分为:单工:数据传输只支持在一个方向传输半双工:允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信全双工:允许数据在俩个方向上传输,因此,全双工是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力2、串行通信的通信方式同步通信:带时钟同步信号传输SPI、IIC通信异原创 2021-11-12 10:30:10 · 711 阅读 · 0 评论 -
外部中断---STM32F1
外部中断概述STM32的中断控制器支持19个外部中断/事件请求:线0-15:对应外部IO口的输入中断线16:连接到PVD输出线17:连接到RTC闹钟事件线18:连接到USB唤醒事件STM32每个IO口都有可以作为外部中断输入,IO口有很多,STM32供IO使用的中断线只有16个,那么中断线怎么跟IO口对应呢?这个时候就要用到端口重映射了GPIOx.0映射到EXTI0(外部中断线0)GPIOx.1映射到EXTI1(外部中断线1)…GPIOx.15映射到EXTI15(外部中断线15)原创 2021-11-10 20:20:17 · 575 阅读 · 0 评论 -
NVIC中断管理---STM32
NVIC:嵌套向量中断控制器在了解中断之前,我们先了解抢占优先级和响应优先级抢占优先级和响应优先级抢占优先级决定能不能打断,高优先级的抢占可以中断低优先级的抢占响应优先级在抢占优先级相同时,高响应优先级先执行,响应优先级不能打断注:数字越小,抢占和响应的优先级越大比如说设置中断优先级组为2,然后设置中断3的抢占优先级为2,响应优先级为1,中断6的抢占优先级为3,响应优先级为0,中断7的抢占优先级为2,响应优先级为0,这三个中断的优先级顺序是:中断7>中断3>中断6中断优先级分组原创 2021-11-10 16:36:22 · 235 阅读 · 0 评论 -
端口复用和重映射--STM32F103
什么是端口复用?STM32中有很多内置外设,这些外设的引脚都是与GPIO复用的,什么时候复用呢?就是当一个GPIO作为内置外设引脚使用时,就叫做复用。比如串口1的发送接收引脚是PA9,PA10,当PA9,PA10作为USART的接收和发送引脚时,就是端口复用。端口复用的配置过程以PA9、PA10作为串口的接收发送为例使能GPIO端口RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);使能外设时钟这里我们可以参考STM32手册RC原创 2021-11-10 15:40:07 · 1660 阅读 · 0 评论