CMSIS,(cortex microcontroller software interface standard)微控制器软件接口标准。CMSIS函数库文件是,ARM厂商提供的函数库文件,为开发者提供API应用程序接口,用户可以通过调用这些接口函数,直接访问ARM核的寄存器。这样开发者便可聚焦于自己需要实现的功能,而不用去过多关注这些功能是如何配置ARM内核来实现的。
FWlib,(firmware library)固件库。
STDPERIPH ,是指标准外设库(Standard Peripheral Library),是意法半导体(STMicroelectronics)针对 STM32 微控制器的一套标准驱动程序库。在魔术棒的C/C++选项卡的宏定义栏中声明“USE_STDPERIPH_DRIVER”, 宏定义控制使用标准外设驱动程序,而非直接使用寄存器。如果定义了该宏,则可以使用库函数来初始化和操作外设。否则,你需要手动编写寄存器级代码来配置和操作外设。
TTL(Transistor-Transistor Logic)晶体管-晶体管逻辑电平。TTL电平信号规定,+5V等价于逻辑“1”,0V等价于逻辑“0”(采用二进制来表示数据时)。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。TTL的电源工作电压是5V,那么5V就可为高电平,0V为低电平。但TTL传送数据高低电平有标准规定要求,输入高电平2.4V~5V,输入低电平0V~0.8V。
+-----------------+ +-----------------+
| 内部RC振荡器 | | 外部晶振或信号源|
| HSI/LSI | | HSE/LSE |
+-----------------+ +-----------------+
| |
+----------+----------+
|
v
+-----------+
| 时钟源选择 |
+-----------+
|
v
+-------------+
| 锁相环(PLL)|
+-------------+
|
v
+------------------+
| 系统时钟(SYSCLK)|
+------------------+
|
+----------+------------+-----------+
v v v v
+-------+ +-------+ +---------+ +-------+
| AHB总线| | APB1总线| | APB2总线| | 外设时钟|
| HCLK | | PCLK1 | | PCLK2 | | TIMxCLK|
+-------+ +-------+ +---------+ +-------+
HSE(high speed external)高速外部时钟;
HSI(high speed internal)高速内部时钟;
LSE(low speed external)低速外部时钟;
LSI(low speed internal)低速内部时钟;内部RC振荡器;
PLL(Phase-Locked Loop)锁相环;
PLL时钟源:PLL时钟源本质上是HSE、HSI通过PLL锁相环倍频输出产生的,STM32F4有两个PLL、分为主PLL、专用PLL;
主PLL由HSE、或者HSI提供时钟信号在倍频后可以输出两个不同的时钟PLLP、PLLQ,PLLP主要用于系统时钟(频率最高可达168MHz),PLLQ作为USB OTG FS的时钟源(48MHz)、随机数发生器、SDIO的时钟;
专用PLL(PLLI2S)用于生成精确的时钟源,可以在I2sjiekou实现高品质音频性能;
具体的时钟频率计算:HSE或HSI时钟源除以值为M的分频系数后、经过倍频系数为N的倍频器、在经过分频系数为P或Q的分频器后,得到PLLP或PLLQ的时钟频率
PLLP = 时钟输入源/M*N/P;
PLLQ= 时钟输入源/M*N/Q;
SYSCLK:系统时钟频率,即CPU主频时钟频率
CSS:时钟安全系统。
AHB(Advanced High-performance Bus),高级高性能总线
APB (Advanced Peripheral Bus) ,高级外围总线
BSP(Board Support Package),板级支持包,
总线,大致可以将其分为片上总线和片外总线。其中片外总线一般指的是两颗芯片或者两个设备之间的数据交换传输方式,包括UART、I2C、CAN、SPI等都可以纳入这一范畴。而AMBA总线为片上总线,即同一个芯片上不同模块之间的一种规范化交换数据的方式。基于片上总线,我们可以非常迅速的搭建SoC,AMBA总线在片上总线处于绝对统治的地位,对于芯片工程师而言,必须掌握AMBA总线。
对于总线而言,有以下比较重要的性能指标或者是概念需要掌握:
带宽:指的是单位时间内总线上传送的数据量;其大小为总线位宽*工作频率(单位为bit,但通常用Byte表示,此时需要除以8)。
位宽:指的是总线有多少比特,即通常所说的32位,64位总线。
时钟频率:以MHz或者GHz为单位。
延迟:一笔传输从发起到结束的时间。在突发传输中,通常指的是第一笔的发起和结束时间之间的延迟(什么事是突发传输后面再讲)。
传输方式:总线传输数据的方式主要有同步传输和异步传输两种模式。同步传输通过时钟信号来控制数据的传输,而异步传输则是直接在总线上进行数据交换
常用的标识:
VCC:C=circuit 表示电路的意思, 即接入电路的电压;
VDD:D=device 表示器件的意思, 即器件内部的工作电压;
VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压。
1、对于数字电路来说,VCC是电路的供电电压,VDD是芯片的工作电压(通常Vcc>Vdd),VSS是接地点。
2、有些IC既有VDD引脚又有VCC引脚,说明这种器件自身带有电压转换功能。
3、在场效应管(或COMS器件)中,VDD为漏极,VSS为源极,VDD和VSS指的是元件引脚,而不表示供电电压。
4、一般来说VCC=模拟电源,VDD=数字电源,VSS=数字地,VEE=负电源