×
嵌入式 > 技术百科 > 详情

单片机的引脚是如何被控制的

发布时间:2020-06-20 发布时间:
|
    表2-1是在芯片手册里截取出来的,比如SCON这个寄存器它的地址是98h,那么可以从reg52.h头文件中找到“sfr SCON =0x98;”,用一个SCON的符号与0x98这个地址挂钩,在51单片机的源代码中直接操作SCON,就等于操作0x98这个地址,再对应一下手册,0x98就是98h这个地址,也就是单片机内部真正的SCON寄存器的地址。
表2-1  STC89C51RC/RD+ 系列 8051单片机 串行口特殊功能寄存器 Serial I/O Port SRFs

    所以说,98h、99h、B9h、A9h等都是单片机的内部地址,而“Reset Value”这一列都是该寄存器复位后的默认值,比如98h的复位后默认值是0000 0000。
    还有更多的关联和挂钩的。截取reg52.h文件中的部分代码如下:





    可以看到代码中对P0、P1、P2、P3都有定义,例如“sfr P0=0x80;”可以与下表2-2的对应上。
表 2-2 8051单片机特殊功能寄存器

    那么如果要访问P0.0和P0.1这两个引脚该怎么处理呢?只需要使用sbit关键词和符号“^”就可以,例如:
     Sbit  aa = P0^0;
     Sbit  bb = P0^1;
可以使得aa代表P0.0引脚,而bb代表P0.1管脚,并且可以看到通过这个sbit的定义,访问到80h这个寄存器P0里的任何一位,如表2-3所列。
表 2-3 访问P0口寄存器

    51单片机就是这样,可以用代码控制所有的寄存器。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
激光跟踪仪市场2023年有望达5.216亿美元