2、寄存器的一些基本概念
作者:互联网
在51中就学过寄存器,其中还分为通用寄存器,和专用寄存器。
专用寄存器,顾名思义,就是使用该寄存器进行某些特殊的功能操作。
通用寄存器,一般用来进行数值计算,比如延时程序中可以用通用寄存器来进行传值,只用一个机器周期。
不管是通用还是专用寄存器,和控制其他内存单元并无二样。
**是什么:**我理解一些专用寄存器,可能就是把内存单元的值又连接到对应的一些外部驱动电路上(P0),所以这些内存单元除了存储数值的功能外,还有可以控制外设。
除了4个专用的寄存器,还有一些寄存器的作用,是用来设置某些外设的工作模式,使能啥的。
怎么用:比如TMOD寄存器,IE寄存器这些,也是利用开启和关断某个内存单元的电压,来实现外设的设置。
为什么这样设置,就可以实现对应功能的输出?
疑问是要有的,这些是进步的种子。
为什么要用寄存器:单片机是一种面向控制的设备。控制的方式有好多种,通信协议就有好多种。
为了能在一个板子上实现各种功能,就需要使用复用这个概念。比如gpio端口,为了实现复用功能,既可以作为普通引脚进行输入输出,也可以进行串口,adc等等外设的使用。
好比你打算给村子里铺一条路,你是给每家每户门前铺单独的一条路到达出口,还是在村中建一条宽大的马路,然后为了到达每个家再建一条单独的路呢?
为了从村口到达某户人家,我们先走大路,然后再走小路。
从原子教程中学习到:
内核和外设的生产厂家
驱动总线和被驱动总线
内存映射
内存重映射
指针与地址
总线基地址,外设A基地址,偏移地址
结构体封装函数
通用寄存器Rn的作用提现在“通用”二字,应用与一般编程过程中,具体可由编程人员指定其含义,其主要有以下几个:1.将运算结果直接存放在寄存器中,免去转存到存储器的时间,因此可以提高程序的运行速度;2.作为CPU运算过程中的数据和指令的存放单元,为程序设计提供方便;3.由于累加器ACC和工作寄存器Rn在指令中不单独占用存储单元,故可以减少程序长度。特殊功能寄存器规定了特定的含义,编程时不能随意使用,要根据其规定的含义使用。
标签:通用寄存器,单元,专用,内存,寄存器,一些,基本概念,外设 来源: https://blog.csdn.net/qq_34190043/article/details/100065303