草庐IT

HAL_Delay

全部标签

STM32 HAL库配置 NVIC Settings 作用

tim1breakinterruptandtim15globalinterrupttim1updateinterruptandtim16globalinterrupttim1triggerandcommutationinterruptandtim17globalinterrupttim1capturecompareinterrupt这四个有什么用,具体怎么选择这四个中断与TIM1定时器相关,具体作用如下:1.TIM1BreakInterrupt(TIM1BRKIRQHandler)和TIM15GlobalInterrupt(TIM1BRKTIM15_IRQHandler):a:TIM1Brea

stm32-HAL库IIC通信-at24c02

一、IIC通信协议IIC是一种通用串行同步通信协议,将IIC通信分为物理层和协议层两方面来学习。1.物理层物理层上有如下特点:(1)它是一个支持设备的总线。“总线”指多个设备共用的信号线。在一个I2C通讯总线中,可连接多个I2C通讯设备,支持多个通讯主机及多个通讯从机。 (2)一个I2C总线只使用两条总线线路,一条双向串行数据线(SDA),一条串行时钟线(SCL)。数据线即用来表示数据,时钟线用于数据收发同步。(3)每个连接到总线的设备都有一个独立的地址,主机可以利用这个地址进行不同设备之间的访问。(4)总线通过上拉电阻接到电源。当I2C设备空闲时,会输出高阻态,而当所有设备都空闲,都输出高阻

java - Spring HATEOAS 和 HAL : Change array name in _embedded

我正在尝试使用SpringHATEOAS构建符合HAL的RESTAPI。经过一些摆弄后,我设法大部分按预期开始工作。(示例)输出现在看起来像这样:{"_links":{"self":{"href":"http://localhost:8080/sybil/configuration/bricks"}},"_embedded":{"brickDomainList":[{"hostname":"localhost","port":4223,"_links":{"self":{"href":"http://localhost:8080/sybil/configuration/bricks/l

STM32——端口复用与重映射概述与配置(HAL库)

文章目录前言一、什么是端口复用?什么是重映射?有什么区别?二、端口复用配置前言本篇文章介绍了在单片机开发过程中使用的端口复用与重映射。做自我学习的简单总结,不做权威使用,参考资料为正点原子STM32F1系列精英板HAL库开发手册。我也做了相关对比,其实HAL库与标准库差别不大,HAL库封装更多更好移植,原理上是通用的。一、什么是端口复用?什么是重映射?有什么区别?STM32F1有很多的内置外设,这些外设的外部引脚都是与GPIO复用的。也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GPIO作为内置外设使用的时候,就叫做复用。根据正点资料和自己搜索的资料,大概总结,端口复用就是

蓝桥杯嵌入式STM32 G431 hal库开发速成——ADC与DAC

一、概念模数转换器(ADC):它将模拟信号转换为单片机能够处理的数字信号。在很多应用中,比如温度传感器、压力传感器等,信号最初都是模拟形式的。ADC读取这些模拟信号,然后将它们转换为数字形式,以便单片机可以读取和处理。数模转换器(DAC):它执行相反的操作,将数字信号转换为模拟信号。这在需要控制模拟设备,如音频设备、某些类型的马达控制器等方面非常有用。通过DAC,单片机可以产生精确的模拟输出信号。二、ADC与DAC常用的函数1、ADC常用的函数1.HAL_StatusTypeDefHAL_ADC_Start(ADC_HandleTypeDef*hadc)举例:HAL_ADC_Start(&ha

java - 如何在微服务架构(HAL、ALPS)中为 Restful 服务正确设置文档

我已经阅读了很多关于如何正确设置微服务的文章,而且我一直对一些较新的概念很感兴趣,包括:HAL、ALPS和HAL浏览器。我曾经记录过利用SwaggerUI的事情,但是,我开始明白以URL为中心不是正确的方法,我应该围绕资源和链接组织文档,这正是新技术的目的。我在这些较新的概念方面存在很多知识空白,因此我想正确理解这些技术如何协同工作,以便在我了解每一项技术时能够将它们融入到这个难题中。我目前的理解是:HAL-是JSON之上的一种附加格式,可让您通过链接在API中导航。ALPS-这是一种在JSON之上的附加格式,可以让我提供基于英语的描述来帮助描述我的资源HAL浏览器-以资源和链接为中心

STM32CubeMx配置ADC(多通道采集+DMA读取数据)(HAL库开发)

目录1、函数配置过程(这是标准库配置过程):2、STM32CubeMx配置过程 3、main函数源文件采集5路ADC数据,并用串口printf()函数打印出来。实验现象: ADC转换的初始条件:1、使能2、触发源条件完成(这个需要自己配置)利用:HAL_ADC_Start_DMA()函数;ADC中HAL开发优势就是,只需要配置HAL_ADC_Start_DMA()函数,直接可以控制多路ADC转换,非常简单。我们需要的数据,就在此函数的第二个参数中,记得看最下面的源码分析。DMA转换的初始条件(这三个条件HAL已经帮忙配置完成):1、使能2、传输计数器大于1(发送数据寄存器里面有数据)3、产生触

【STM32 CubeMX】SPI HAL库编程

文章目录前言一、CubeMX配置SPIFlash二、SPIHAL编程2.1查询方式函数2.2使用中断方式2.3DMA方式总结前言STM32CubeMX是一款由STMicroelectronics提供的图形化配置工具,用于生成STM32微控制器的初始化代码和项目框架。在STM32开发中,使用CubeMX可以大大简化初始化过程,并帮助开发者快速构建应用程序。其中,SPI(串行外设接口)是一种常用的通信协议,它在连接外部设备时非常有用。本文将介绍如何使用CubeMX结合SPIHAL库进行STM32SPI的初始化和编程。一、CubeMX配置SPIFlash首先,选择任意的一个SPI接下来,把SPI的参

STM32F1使用HAL库驱动DS18B20

目录DS18B20概述工程配置 命令手册单总线协议 初始化时序 写时序读时序读取温度驱动附录DS18B20概述 DS18B20是一款单总线(onewire)芯片,因此其DQ引脚与单片机相连的IO口既要是输入也要是输出,cubeMX的初始化引脚设置只能选择其一,这里我们使用手动配置引脚。工程配置先用cubeMX生成一个工程模板,初始化时钟等等。 命令手册 这里有两个重要的指令,0x44表示触发芯片进行温度转化,0xbe表示请求读取温度转化后的值。还有一个常用指令为0xCC,意义是跳过读取芯片ROM而节约时间。单总线协议由于是单总线协议,要想写指令,收数据都要遵循其标准,下面查看其时序 初始化时序

蓝桥杯STM32 G431 hal库开发速成——I2C总线

I2C应用一、M24C02芯片一、概念M24C02是一种EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory)芯片,它通过I2C(Inter-IntegratedCircuit)总线接口与其他设备进行通信。I2C是一种广泛使用的串行通信协议,特别适用于低速通信,在多个设备间传输数据时只需要两条线:数据线(SDA)和时钟线(SCL)。1.M24C02的特点:存储容量:M24C02提供256字节(2Kb)的存储空间。非易失性:作为EEPROM,M24C02即使在断电的情况下也能保持存储的数据。电子擦除和编程:允许通过电子方式进行数据的擦除和重