本文参考地址:
内核对外部存储器的访问信号发送到AHB总线后,通过FSMC转换为符合外部存储器通信协议的信号发送到外部存储器的相应引脚,实现内核与外部存储器之间的数据交互。外部存储器。
2、FSMC中DATASET和ADDSET的设置需要参考外部存储器的时序图来确定。
一般来说,DATASET是指数据建立时间,即从读/写信号开始到读/写信号停止的持续时间(数据在上升沿存储)。 (写作通常比阅读快!)。
ADDSET指的是地址建立时间,指的是片选之后、读/写操作之前的时间。 这是针对 SRAM 的。 如果操作TFT的话,没有地址线,所以此时的ADDSET就是读/写信号结束到RS电平的转换时间。
3.
4.
5、FSMC的三个配置寄存器:FSMC_BCRx(片选控制配置)、FSMC_BTRx(片选时序)、FSMC_BWTRx(片选写入时序)。
6. BKP 寄存器必须用于RTC 时钟配置。 BKP 寄存器在微控制器复位、电源复位和待机唤醒模式期间不会改变其值。 其电源由VDD供电。 VDD切断后,自动切换至外部VBAT供电。 。
7. 要修改BKP 寄存器的值,必须取消其写保护标志。 BKP 寄存器在上电时自动写保护。
8、stm32具有三种省电模式:
三种省电模式中,功耗自上而下递减,待机电流仅为2uA。
9、从待机模式唤醒单片机相当于复位单片机,但电源寄存器的值会有一个标志,表明单片机被唤醒,而不是复位。
10. ADC时钟不要超过14MHz,否则转换精度会下降。 最大转换速率为1MHz,即转换周期为1us(14MHz,采样周期为1.5个ADC时钟)
11. Tcovn = 采样时间 + 12.5 个周期。 尽量选择较长的采样时间,这样精度较高,但转换率下降,这也有优点和缺点。
12.
13、以ARM7TDMI为例,T代表Thumb指令集,D代表支持JTAG调试(Debugging),M代表快速乘法器,I对应嵌入式ICE模块。
14. MMU是嵌入式处理器和应用处理器之间的分水岭。 具有内存管理单元的嵌入式处理器可以定位为应用处理器。
所以M系列和A系列处理器的区别在于A系列处理器具有可以管理内存模块的MMU单元。
15. ARM处理器有两种状态:ARM状态和Thumb状态。
16、这张图说明了一切:Thumb2指令集做了一件伟大的事情:将16位和32位指令集合二为一,兼容性很强! (所以CM3不支持某些32位ARM指令集??)
17.
18. MSP是系统复位后使用的堆栈指针,PSP是用户代码使用的。 两个堆栈指针是4字节对齐的!
19、在ARM编程领域,凡是中断程序运行的事件统称为异常。
20、由于LR(链接寄存器)的存在,可以支持1级子程序调用,无需将堆栈压入内存,大大提高了运行速度。 —à这意味着我们在编程的时候,一级调用不会花费太多时间,除非是二级调用!