草庐IT

HAL_StatusTypeDef

全部标签

[STM32]HAL库STM32CubeMX+DHT11温湿度传感器

目录所用的工具:知识概括:DHT11介绍:DHT11性能说明:接口说明 电源引脚串行接口  工程创建1、设置RCC2、时钟设置3、项目文件设置4、设置IO口(DATA)5、TIM时钟配置6、USART配置 程序编写:      1、TIM3实现微秒(us)级延时函数:2、IO口配置3、DHT11检测起始信号(这里的DHT11_LOW,DHT11_HIGH在下面的的第8点)4、DHT11检测响应信号(这里的DHT11_IO_IN在下面的第8点)5、DHT11读取一bit数据6、DHT11读取一个Byte数据7、DHT11读取湿度和温度的数据8、IO口输出高、低电平以及读取IO口电平定义和需要添加

第十三届蓝桥杯嵌入式省赛第二场真题(基于HAL库的巨简代码+超级详解)

文章目录前言一、CubeMX配置(第十三届省赛第二场真题)二、代码相关定义、声明1.变量声明2.函数声明三、主要函数1.main函数2.按键扫描、E2PROM存储、打印购买信息3.屏幕显示、PWM输出4.判断串口接收数据是否合法5.查询当前商品价格6.串口中断7.LED指示功能四、编程感受、细节剖析、赛前预测五、链接1.第十三届蓝桥杯嵌入式省赛第二场真题PDF2.第十三届蓝桥杯嵌入式国赛真题(基于HAL库的巨简代码+超级详解)3.第十三届蓝桥杯嵌入式省赛第一场真题(基于HAL库的巨简代码+超级详解)4.第十二届蓝桥杯嵌入式省赛第一场真题(基于HAL库的巨简代码+超级详解)前言相关说明:开发板:

第十三届蓝桥杯嵌入式省赛第二场真题(基于HAL库的巨简代码+超级详解)

文章目录前言一、CubeMX配置(第十三届省赛第二场真题)二、代码相关定义、声明1.变量声明2.函数声明三、主要函数1.main函数2.按键扫描、E2PROM存储、打印购买信息3.屏幕显示、PWM输出4.判断串口接收数据是否合法5.查询当前商品价格6.串口中断7.LED指示功能四、编程感受、细节剖析、赛前预测五、链接1.第十三届蓝桥杯嵌入式省赛第二场真题PDF2.第十三届蓝桥杯嵌入式国赛真题(基于HAL库的巨简代码+超级详解)3.第十三届蓝桥杯嵌入式省赛第一场真题(基于HAL库的巨简代码+超级详解)4.第十二届蓝桥杯嵌入式省赛第一场真题(基于HAL库的巨简代码+超级详解)前言相关说明:开发板:

STM32 HAL库 PWM+DMA 驱动WS2812B彩灯(STM32F030F4P6)

谁不想拥有炫酷的小彩灯呢?WS2812B可以给你机会......博主使用STM32驱动WS2812B主要参考了这位佬的文章,因为需求问题,采用了Cortex-M0的stm32f030f4p6(16k的flash,4k的sram)来驱动,原文中写的是stm32f103c8t6,个人认为其实区别并不是很大,需要修改部分参数即可移植(cv战士申请出战)。上图是我的一圈灯,一共8个,第一个LED的数据输入端接的是定时器1的通道2,想看底层原理可以去看佬的文章,本文只介绍如何移植。CUBEMX配置首先选择外部石英晶振,我用的是外部12M晶振,然后配置时钟树:然后打开串行调试: 找到使用的定时器(输出PW

HAL库串口收发

1、通讯方式介绍在微处理器和外部通信模块之间主要有并行通信和串行通信两种。并行通讯传输速率快,但是占用引脚较多,串行通信与之相反。串行通讯分别有单工、半双工、全双工三种模式。单工:只能发送数据或者只能接收数据。半双工:既可以发送又可以接收,但是某一时刻只能处于单一模式(发送或者接收),例如RS485通讯方式。全双工:任意时刻都可以发送或者接收数据。(串口采用异步串行通信)2、Cubemax配置USART1、SYS配置如下图所示。2、RCC配置如下图所示。3、时钟树配置如下图所示。直接在红框内输入下方数值,回车确定即可自动对时钟树进行配置。4、串口初始化配置。5、生成代码。3、程序书写3.1发送

STM32CubeIDE如何实现HAL库 微秒Us延迟(HAL_Us_Delay)

在STM32CubeIDE中,此软件使用的是HAL库,而且对于时间延迟只有HAL_Delay()函数,也就是毫秒延迟函数。下文将讲述如何在STM32CubeIDE中获取微秒延迟函数(HAL_Delay_us)。首先选择一个定时器,要注意选择的是哪一个定时器。因为不同的定时器可能时钟频率不同。由于选择的时钟频率不同,后续程序中的数值要对应进行相应的修改。本次作者使用的是TIM4定时器,使用的是STM32F437芯片,打开芯片数据手册可观察到TIM4挂载在APB1总线上。  在图形化配置界面,打开ClockConfiguration可以观察到TIM5挂载的APB1时钟频率是多少。此时作者配置的是9

蓝桥杯嵌入式基础模块——LCD显示器的基本使用(新板)STM32G431(HAL库开发)

    在蓝桥杯嵌入式官方给我们提供好了,LCD显示的底层源码,我们只需要,记住里面的API函数,会用这些函数就行。源码位置        在官方给的资料中找到这个文件名字DK117_G4DataPacket->开发板驱动文件里面就是所有的底层文件有两种类型,一种是基于HAL库的一种是标准库的。里面有LCD的底层驱动,还有IIC的底层驱动(软件模仿IIC驱动)。fonts.h文件是底层文字库,这个也是必须需要的,要不然找不到文字的扫描显示。   复制粘贴在STM32CubeMX生成的文件下面建一个LCD文件夹,存放上面复制的三个文件。  打开Keil建一个分组名为LCD刚刚加载进去的LCD文件

STM32实战总结:HAL之DMA

什么是DMA?“DMA”是DirectMemoryAccess的缩写。不使用CPU,而是通过总线直接进行外围功能(模拟功能、通信功能等)和存储器间(闪存、ROM、RAM)的数据传输的功能。通常,数据传输由CPU执行,而在装有DMA的微型计算机中,DMA代表CPU传输数据。因此,CPU只需要算术/逻辑运算等CPU才能完成的工作就可以了。其结果是,通过安装DMA,可以综合提高微型计算机的性能。DMA的最大优势是通过硬件直接传输数据,从而实现高速、大容量的数据传输。您可以在内存和外围功能中自由选择传输源和传输目的地(但受微型计算机的限制)。但是,由于只有一条总线和CPU分开使用,所以需要调整总线的使

OpenHarmony js到hal层通信机制

文章目录1.JS到NativeJS----NAPI通信1.1WIFI的nativejs目录结构1.2js与c++方法绑定1.3.d.ts文件声明2.Native——FWKIPC通信-----Remote()2.1Binder通信binderaidl生成文件Remote写法2.2服务端注册注册方式1注册方式22.3客户端类定义2.4客户端获取注册信息3.FWK——HALSocket通信Server端Client端client发消息到ServerServer端接收1.JS到NativeJS----NAPI通信1.1WIFI的nativejs目录结构├──js│└──napi //js和c++通信│

STM32系列(HAL库)——F103C8T6通过HC-SR04超声波模块实现测距

1.软件准备(1)编程平台:Keil5(2)CubeMX(3)XCOM(串口调试助手)2.硬件准备(1)某宝买的超声波模块 (2)F1的板子,本例使用经典F103C8T6(3)ST-link 下载器(4)USB-TTL模块(5)杜邦线若干3.模块资料(1)模块简介:        超声波是振动频率高于20kHz的机械波。它具有频率高、波长短、绕射现象小、方向性好、能够成为射线而定向传播等特点。HC-SRO4是一款尺寸完全兼容老版本,增加UART和IIC功能的开放式超声波测距模块,默认条件下,软件与硬件完全兼容老版本HC-SRO4;可以通过电阻设置成UART或IIC模式。2CM盲区,4.5M典型