关于M3核寄存器的疑惑,新人求拍砖
M3核的R0~R15还有xPSR和手册上的GPIO,UART那些32位的寄存器的联系是什么呀? R0到R15每一个都是32位的寄存器,是说这些寄存器都是被那些GPIO32位之类的复用的吗? R0到R7是线程权限时复用,随机选用,8~12是内核级的时候使用,13,14,15是特殊用处,这样理解对吗?这两个不是同一个东西,
R0-R15是MCU运行时用到的寄存器,而UART那是外设寄存器,每个都有具体的地址
写汇编语句时,MCU不知道你写的UART寄存器是哪个,它只认地址,你往某个外设寄存器地址写数据,其实就是在修改外设寄存器,也就是修改外设参数,而stm32库已经帮你把地址都写好了,所以就直接用。
R0-R15是汇编时你只能使用的寄存器,所有C语言转换为汇编后,都只能用这几个寄存器进行移位,赋值等操作,比如你把某个外设寄存器地址给R1,然后修改R1的值,就实现对这个外设寄存器的修改 外设有自己的寄存器,和内核通用寄存器不是一码事,内核寄存器是设计内核时固定的比如由ARM公司设定,外设寄存器由芯片厂家自己设定的,寄存器的地址,多少具体都不太一样。 :o:o:o:o我也不懂 似乎懂一点了
页:
[1]