小白初学日记
文章平均质量分 53
小湘不喝酒,只为STM32
这个作者很懒,什么都没留下…
展开
-
14.小白初学日记 STM32F429 HAL库 Systick系统定时器
大家好,又要开始战斗了!加油!肝!SysTick定时器特性介绍SysTick系统定时器是属于Cortex-M内核中的一个外设,内嵌在NVIC中。SysTick系统定时器含有一个计数宽度为24bit的向下递减的自动重装载计数器,计数器每计数一次的时间为1/CLKSource。一般我们设置CLKSource为系统时钟。以F103为例,CLKSource可以配置为72MHZ。当重装载数值寄存器的值递减到0的时候,SysTick系统定时器可以配置产生一次中断,以此循环往复。SysTick系统定时器是属于原创 2021-03-12 16:02:39 · 371 阅读 · 0 评论 -
13.小白初学日记 STM32F429 HAL库 中断
大家好 怀着激动地心颤抖的手 我又来了!这是中断向量表。我们可以看到Reset的优先级很高。优先级数越小,优先级越高STM32支持2^8个优先级(8个位来表示优先级 0~255)M3只支持2^4(高4位)在F103上,使用这4个bit,组成5组优先级。这五组中,每组分为1个抢占优先级,1个子优先级。第一个组(组0):是没有抢占优先级(0),4个组全部配置为子优先级(4个bit都是子优先级)。第二个组(组1):只有一个(1)抢占优先级,3个组配置为子优先级.剩下的和图中一样。如果中断原创 2021-03-12 15:32:03 · 452 阅读 · 0 评论 -
12.小白初学日记 STM32F429 HAL库 复位和时钟控制
大家好,新的一天又来了,让我们一起来学习这个伟大的单片机吧!今天我们来讲RCC这个RCC是复位和时钟控制的英文缩写。问题:什么是复位?什么是时钟?STM32有三种复位功能1.系统复位:系统复位将复位除时钟控制寄存器CSR中的复位标志和备份区域中的寄存器以外的所有寄存器为他们的复位数值。2.电源复位:电源复位将复位除了备份区域外的所有寄存器。3.后备域复位:备份区域拥有两个专门的复位,他们只影响备份区域。系统复位除了时钟控制寄存器 CSR 中的复位标志和备份域中的寄存器外,系统复位会将其原创 2021-03-12 13:43:49 · 3262 阅读 · 0 评论 -
11.小白初学日记 STM32F429 HAL库 STM32程序启动过程
大家好,怀着激动地小心,激动地小手,我们来了。今天我想给大家分享一个我自己的错误点。来警示大家。刚才写我按键例程程序的时候,我自己来写的,发现启动不了,终于找到了原因,大家一起来看下。while(i) { if(Key_Scan(GPIOA,GPIO_PIN_0)==1) { LED_Red_Toggle; } }上面的是例程。while(Key_Scan(GPIOA,GPIO_PIN_0)) { LED_Red_Toggle; }下面是我自己写的原创 2021-03-12 09:48:50 · 377 阅读 · 0 评论 -
10.小白初学日记 STM32F429 HAL库 GPIO输出板级支持包
大家好 小白又来了。哈哈今天给大家带来的是什么呢,让我们怀着激动地心,颤抖的手来一起学习吧!先给大家说一下什么是板级支持包。板级支持包(BSP)是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好的运行与硬件主板。点击新建一个页面。LED灯的板级支持包:最基本的功能实现,点亮LED灯\熄灭LED灯。去设置电平状态可以使用以下函数HAL_GPIO_WritePin()这是bsp原创 2021-03-11 16:12:19 · 776 阅读 · 2 评论 -
9.小白初学日记 STM32F429 最新HAL学习Cube
这里可以修改文件包下载路径三种新建方式针对野火开发板 我们选择第一个选项这就是根据芯片来创建工程的在原理图上我们找到了F429的三个灯可以在下面这个框直接搜索我们可以看到GPIO引脚的功能有很多种我们要选择Output模式 要选择输出模式我们选择好之后 左侧GPIO栏里面这个就可以出现了同理我们把PH11 PH12都配置成输出模式我们点击它。下方出现引脚的配置框这个是GPIO输出的点评可以是低电平或者是高电平这个是选择GPIO的模式上拉或者下拉GPI.原创 2021-03-11 13:27:42 · 2094 阅读 · 5 评论 -
8.小白初学日记 STM32F429 最新HAL学习 新开始 移植HAL库
怀着激动的心颤抖的手,终于我们又见面了,最终我还是坚持下来了,没有了一枪的热血,只有平平淡淡的记录,学习,体会心得。其中文中的钥匙是上锁的意思。这里要改成使用第五版本编译器 和使用微库...原创 2021-03-10 11:04:04 · 132 阅读 · 0 评论 -
7.小白初学日记 STM32F429 最新HAL学习 HAL里面结构组成
好了朋友们,又是一天好时刻,让我们怀着激动地心,颤抖的手,随我们一起学习这个STM32F429 HAL库的开发和使用把。话不多说,上干货!int main(void){volatile unsigned int *pointer;* pointer +=1;* pointer +=2;}这里volatile 是防止代码优化的意思。比如下面这两句话,代码可能直接* pointer+=3了 这样是不对的。推挽是PP开漏是OD上拉是PU下拉是PD随着视频的进行 我们也来一起分析一下这个原创 2021-03-10 10:22:55 · 321 阅读 · 0 评论 -
6.小白初学日记 STM32F429 最新HAL学习 突然来袭 重新起跑
大家好,怀着激动地心颤抖的手,我又来学习F429了。哈哈,话不多说,上干货!我怀着激动地心同时发现,竟然有两个例程,仔细一看。我蒙了,有个标准库,有个HAL库。经过我非常多的询问发现,HAL库可以不同芯片进行移植,是目前最新的,问题也随之而来,就是我编程的时候慢的和狗一样,我为了一个可以摁F12编译了10分钟有余。妈的 太磨叽了,不过这不影响我们继续研究这个HAL,听说ST新推出的MCU都用的HAL和LL编程,那我必须引领风骚,话不多说,上干货!...原创 2021-02-25 17:11:29 · 145 阅读 · 0 评论 -
5.小白初学日记 STM32F429 用寄存器点亮LED灯例程代码分析
好了朋友们,又是新的一天,今天你学会了吗?哈哈好了话不多说,让我们直接上干货!下面这些都是例程。int main(void){ /*开启 GPIOH 时钟,使用外设时都要先开启它的时钟*/ RCC_AHB1ENR |= (1<<7); /* LED 端口初始化 */ /*GPIOH MODER10清空*/ GPIOH_MODER &= ~( 0x03<< (2*10)); /*PH10 MODER10 = 01b 输出模式*/ GPIOH原创 2021-02-25 10:10:34 · 692 阅读 · 0 评论 -
4.小白初学日记 STM32F429 用寄存器点亮LED灯
大家好,不知道大家看过我上个写的文章没有,如果没有的话请大家去看看哦,都是整理的精化。好了让我们继续,今天的主题是什么呢。没错!就是这个万恶的小LED灯,我们已经接受完了理论知识,现在准备把它点亮!点亮!点亮!好了,不多说了,劲头十足,上干货!首先我们看到的是LED的原理图。...原创 2021-02-24 17:03:35 · 587 阅读 · 1 评论 -
3.小白初学日记 STM32F429 学习GPIO 推挽开漏
好了,朋友们,今天又开始新的学习了,哈哈。让我们怀着激动地心,颤抖的手,继续看视频奋斗,记录,学习吧!好了,直接进入主题,拿干货!GPIO口用软件控制GPIO口是1还是0;STM32F429总共有176个引脚。这里我们借用视频中的几个引脚说明记录一下。这是一些不能用软件来控制的。一共有9组IO,一组IO16个。所以可以用软件控制的IO有9×16=144英文数据手册中找到这是我自己做的笔记,大家监督并且观看或者指出错误。这里我跟着视频教程一起,在这里做了些笔记。在数据手册中,可以查询到各个原创 2021-02-24 14:25:05 · 942 阅读 · 0 评论 -
2.小白初学日记 如何用F429寄存器 新建工程
哈哈哈,大家好,我们又见面了,好久不见,甚是想念!好了,直接进入今天的主题,让我们把目光投向到那颗STM32F429,让我们怀着激动地心颤抖的手去点亮第一颗灯泡吧!根据野火零死角的教程哈,我们得建一个文件夹。大家看到了吗,我们成功迈出了第一步,所以说一点都不难嘛,简简单单。随后,我们又在文件夹中建立了两个文件夹,非常贴心哈。好了,根据教程我们要打开Keil5了。让我们一起做。我们打开Keil5 打开正上方Project然后点击第一个。之后给我们崩出了这个页面,我们不要慌张,慢慢来。首先我们点击原创 2021-02-24 09:35:12 · 120 阅读 · 0 评论 -
小白学习F429标准库的第一天 初看手册
首先,作为小白,我觉得记录我此时的时刻是比较重要的,让我自己成长,加油。今天,我首先看了一下手册。大家都说看手册,不说了,上才艺!首先就是刚开始接触到的就是寄存器一.寄存器相关缩写词列表寄存器说明中使用以下缩写词:读/写 (rw) 软件可以读写这些位。只读 ® 软件只能读取这些位。只写 (w) 软件只能写入该位。读取该位时将返回复位值。读取/清零 (rc_w1) 软件可以读取该位,也可以通过写入 1 将该位清零。写入“0”对该位的值无影响。读取/清零 (rc_w0) 软件可以读取该位,也原创 2021-02-23 16:56:12 · 869 阅读 · 0 评论