对于我这种以前只接触过51和AVR单片机编程的小菜来说,现在开始学习STM32的编程,对于函数的功能以及C语言的语法都还好理解,难的是它提供的那一套硬件抽象层(HAL)驱动是怎么和其他的东东搭配在一起组成一个又一个的工程。 首先上两张从ST官方提供的HAL固件库文档截图 从这 ...
STM 的三种开发方式 通常新手在入门STM 的时候,首先都要先选择一种要用的开发方式,不同的开发方式会导致你编程的架构是完全不一样的。一般大多数都会选用标准库和HAL库,而极少部分人会通过直接配置寄存器进行开发。网上关于标准库 HAL库的描述相信是数不胜数。可是一个对于很多刚入门的朋友还是没法很直观的去真正了解这些不同开发发方式彼此之间的区别,所以笔者想以一种非常直白的方式,用自己的理解去将这 ...
2020-12-20 15:12 0 2837 推荐指数:
对于我这种以前只接触过51和AVR单片机编程的小菜来说,现在开始学习STM32的编程,对于函数的功能以及C语言的语法都还好理解,难的是它提供的那一套硬件抽象层(HAL)驱动是怎么和其他的东东搭配在一起组成一个又一个的工程。 首先上两张从ST官方提供的HAL固件库文档截图 从这 ...
IIC是多主、多从、单工IIC的串行总线,传输仅需两根线,SDA(数据线)、SCL(时钟线) IIC空闲时SDA和SCL都处于高电平状态(两根线一般情况均接上拉电阻) IIC传输数据的模式为 ...
在cubemx中的设置。 默认即可。 在main中添加代码。 在main()函数中添加程序设置DAC输出的数据为12位右对齐,数值为2048.则实际输出的电压为 ...
要实现的是用PWM实现呼吸灯的效果。 先简单说一下原理,比如对一个电灯来说,你在1秒内,打开开关0.5秒,再关闭0.5秒,如此反复,那么电灯就会闪烁,但是如果是1毫秒内,0.5毫秒打开,0.5毫秒关 ...
用户文件目录 2.复制启动文件 找到库文件目录,以F0为例,该板子使用STM32F042K6芯片 ...
最近在设计四旋翼飞行器,用stm32f407,有三种开发方式可以选择:一、寄存器开发。二:库函数开发。三:HAL库开发,考虑了一下,选择了HAL库,原因如下: 1. 寄存器开发相对较慢,寄存器很多,配置起来会占用很长时间,而且在调试的时候如果再对程序修改,还要配置寄存器,耗时 ...
HAL库手册上都有写 把一般会用到的,就那几个函数,上锁,解锁,擦除,读,写 确定好读写的地址,注意是32位单片机,变量的类型选对 不同单片机有不同的Sector/Page/Bank等概念,这些概念涉及到一次性所能清除区域的大小 ...
初始化 首先讲下UART的初始化 1.声明UART的初始化结构体,并赋值 2.MX生成的代码会调用HAL_UART_MspInit();来初始化UART,当然这个代码也是自动生成,不过用户可以在这个函数里面添加自己想要添加的操作,时面包括了NVIC_Configuration ...