STM32学习笔记(一)---基础知识
STM32学习笔记(一)—基础知识 知识点 1.所有芯片的引脚顺序都是逆序排列的 2.芯片主要由内核和片上外设组成。 3. volatile :在 C 语言中该关键字用于修饰易变的变量,要求编译器不要优化。 存储器映射 存储器本身不具有地址,给存储器分配地址的过程就称为 存储器映射 。 给存储器再分配一个地址的过程就叫做 存储器重映射 。 寄存器映射 设计片上外设时,以四个字节为一个单元,共32bit,每个单元对应不同的功能,我们控制这些单元就可以驱动外设工作。 根据每个单元的功能不同,以功能为名给这个内存单元起别名,这个别名就是寄存器。 给已经分配好地址的有特定功能的内存单元取别名的过程就叫做 寄存器映射 例子: GPIOF端口的输出数据寄存器ODR的内存地址为0x4002 1414(ODR寄存器32位,低16位有效,控制16个IO端口输出高低电平) 通过绝对地址访问内存单元: * ( unsigned int * ) 0x40021414 = 0xFFFF ; 通过寄存器方式访问内存单元 # define GPIOF_BASE 0x40021400 # define GPIOF_ODR (unsigned int *)(0x40021400 + 0x14) * GPIOF_ODR = 0xFFFF ; c语言封装寄存器 /* 外设基地址 */ # define PERIPH