023_创建led_on_register项目 并 添加main.c文件
025_在keil项目里添加start 并尝试编译
042_使用vscode 和 keil assistant打开keil项目
043_keil assistant可能存在的几个问题
053_从旧项目复制一个新的led_flow_register项目过程
054_在keil里添加文件 再关闭 才能在VSCode里看到
055_头文件添加初始化函数的原型 并在初始化中写下一个时钟使能代码
058_完成LED ON 和 OFF函数 并通过掩码同时关闭3个灯
059_实现bad_delay函数 修改C99MODE 并完成灯的翻转操作
064_时钟和LOAD的寄存器的计算方法,完成Delay_us中CTRL寄存器的编码
066_实现delay_ms delay_s并用流水灯测试效果
068_为什么delay_us函数中 不需要手动将count flag置0
069_HAL库 LED流水灯 从创建项目到配置LED引脚
074_如何通过阅读文档的方式学习HAL库用法,并使用HAL_GPIO_writePin去翻转LED
075_HAL库Hal_GPIO_WritePin源码的讲解
082_GPIO通过AFIO走到EXTI EXTI有19跟线 但是只有16根与GPIO接
084_EXTI到NVIC只有7根线 NVIC该如何配置
086_创建key_exti_led_register项目
087_为什么vscode里面没定义IOPFEN 编译也能过 而且应该如何优雅解决这个问题
088_为什么STM32F10x.h里会有一个#error
089_编写KEY3初始化的GPIO和AFIO部分
091_结构体具体是如何通过成员名称访问到某个寄存器的
093_为什么NVIC可以用函数 CMSIS和标准库还有HAL库都是什么关系
094_写哪个中断服务函数 以及6个start目录文件的作用
101_HAL库里 为什么外部中断用到haldelay时需要调整顺序 hal delay比我们自己的版本好在哪
115_什么是IO重定向 串口为什么不需要AFIO
120_完成接收的初始化和逻辑 并测试 还讨论了TXE的复位值
131_#include工作原理 为什么不要在h文件声明变量
134_什么是句柄 如何用HAL库完成定长的发送和接收
153_改善初始化 添加宏定义 编写开始和结束函数
163_存储器工作原理 为什么要在写完之后delay 5 ms
165_软件模拟 I2C stm32 给 ack和noack逻辑
171_I2C初始化寄存器详解 其它寄存器简单过一下
182_再次解释send byte函数和事件的对应关系
183_编写硬件I2C的stop函数并使项目可以编译通过
192_使用HAL库完成EEPROM的保存和读取操作
198_systick中断点灯 寄存器版本实现 并测试效果 注意NVIC的坑
200_Systick_Config函数的源码和使用