欢迎光临散文网 会员登陆 & 注册

stm32F103 入门篇【阶段一、二】

2023-08-04 16:35 作者:小麓不见了  | 我要投稿


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CRL:低寄存器,有32位,4位配置一个引脚,低寄存器配置低八位

CRH:高寄存器,有32位,4位配置一个引脚,高寄存器配置高八位

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

点亮一个led灯

 

基地址内容

 

 

GPIO C的结构体内容

 

 

 

 

 

时钟的结构体内容

 

实验程序

 

 

BSRR寄存器(注意两张图不同的字):


 

 

BRR寄存器:

为了消除引脚不一致性,一般用BSRR的低16位输出高电平,用BRR的低16位(高16位无效)输出低电平

 

P14,第九讲:

 

 

 

 

P16第九讲

 

 

 

 

 

 

 

 

P17:

 

 

 

GPIO_Init函数架构:

 

 

配置PA2为推挽输出,输出速度50MHZ步骤

 

 

 

 

 

 

P18:配置PA2为上拉输入步骤

 

 

 

 

 

P19:

 

 

 

 

P20:

 

P21:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P22:库函数配置:

 

 

P25:入门篇,阶段二

 

P26:库函数模板刨析

 

brief:简要介绍、说明

param:参数

assert_param:断言函数

 

 

P27:如何寻找函数的各个参数:

 

如果函数的参数要填写的是结构体指针类型:(填写的参数名和断言函数参数名不一致)

1. 根据结构体变量(GPIO_InitTypeDef)定义一个变量(GPIO_InitStruct)

2. 引用(GPIO_InitStruct)成员变量并赋值

3. 把变量(GPIO_InitStruct)以地址形式写入GPIO_Init这个函数里

注:采用这种方式是因为注释里面没有明确定义函数参数如何填写(比如前半部分参数GPIO_InitTypeDef*GPIOx就在注释(或者断言函数)里明确告诉了填什么参数)

 

下面这个图解释为什么第一个参数填写GPIOC就可以了:

 

P28:

 

 

 

P29:

 

最基本的编写:点亮LED

 

 

 

 

 

 

 

P30:

点亮LED(采用模块化编写,方便移植)

 

P31:时钟简介

 

 

 

 

时钟系统框图如下:

 

 

 

中文手册P28:

 

 

 

 

 

 

 

 

P32:时钟简介(2)

 

P33:keil软件仿真调试

 

 

 

 

方法一:查看引脚高低电平

 

方法二:用模拟示波器查看高低电平和间隔时间:(不支持硬件仿真)

 

 

P35:SYSTICK滴答定时器

 

 

 

P36:

P37:中断简介:

 

 

 

P38:中断简介

 

 

 

 

 

参考手册(P132):

 

 

 

 

 

抢占和响应优先级的讲解:

 

具体举例情况一:

 

具体举例情况二:

 

 

 

 

 

 

 

 

 

 

 

具体举例情况三:

 

具体举例情况四:

 

看懂这道例题就搞懂了:

 

 

P39:中断简介

 

 

 

 

 

 

注意:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

如果工程里面有中断,首先要进行分组,然后将具体的中断设置到组里面(比如:URT4/URT5/TIME3等具体的中断)

 

P40:讲解TIM3_Init的使用(参数的填写,回忆GPIO_Init)

 

P41:讲的Keil软件仿真调试的一些排错过程

 

 

P42:非阻塞延时程序(闪烁LED灯)

P44:SYSTICK定时器的理论分析

 

 

 

重装载计数器最大数值:2的24次方

 

 

P45 :SYSTICK定时器的功能实现

 

 

 

 

 

 

 

 

 

 

 

 

 

P46:SYSTICK滴答定时器的理论分析

自己写的程序和标准的进行对比

 

 

条件一:判断定时器第0位是否为1(定时器第0位为1代表定时器开启)

 

 

 

P47:SYSTICK滴答定时器的理论分析

 

 

P48:位带操作

 

 

P49:位带操作理论分析

点亮led灯:寄存器操作,库函数操作,位带操作

 

 

P50:位带操作理论分析

0X4000 0000-0X4010 0000之间的每一位可以膨胀成32位

 

 

 

P51:位带操作理论分析

 

公式在权威指南88页:

 

下面这张图的函数会用就行,不用自己写:

 

P52:按键控制

四大步骤:

1.按键检测到低电平

2.延时X毫秒

3.再次检测是否为低电平

4.若为低电平则执行相应动作

 

KEY1配置成上拉输入模式:

 

 

 

 

P53:按键控制(高内聚低耦合)

先讲解一下extern的用法:

 

 

 

P54:按键控制:

 

注:以后每增加一个头文件,就把相应的头文件放到sys.h这里面,在其余文件里只需调用sys.h头文件即可

 

 

P55:按键控制

主要讲如何软件仿真按键程序

 

 

P56:按键控制

 

stm32F103 入门篇【阶段一、二】的评论 (共 条)

分享到微博请遵守国家法律