看了一段时间的单片机视频,下来一些视频看了看,看了几节之后感觉会了,突然有一天需要去操作一个外设时,却不知从何下手了,,。
自己想了想,其实我不明白,一些很基础的东西一开始学的时候就没有认真的去思考过,到后导致看了很多的视频都白看了,(听视频很简单,自己动手问题就来了)
例如:一直不明白有stm32中AHB总线、APB2总线、APB1总线这些是是什么??
所谓地址映射,就是将芯片上的存储器 甚至I/O等资源与地址建立一一对应的关系。如果某地址
对应着某寄存器,我们就可以运用c语言的指针来寻址并修改这个地址上的内容,从而实现修改该寄存器的内容。
正是因为<reg52.h>头文件中有了对于各种寄存器和I/O端口的地址映射,我们才可以在51单片机
程序中方便地使用P2^0 =0xFF; TMOD =0xFF等赋值句子对寄存器进行配置,从而控制单片机。
其实地址总线就是就是用来存放地址的,Cortex-M3的地址映射也是类似的,Cortex-M3有32根地址线,所以它的寻址空间大小为2^32
bit=4GB。(这里什么32跟地址线不需要去纠结了,只要知道配置成了4G的地址就行)
然后APB2总线就是指特定的一段地址,如:0x4001 0000—XXXX
具体的解释见\stm