单片机特殊功能寄存器(SFR)


单片机如8051有21个SFR,地址为80H~0FFH的128个字节中,可以直接用寻址方式来操作SFR。(类似于sbit)

为了能直接访问这些SFR,keil提供饿了一种自汉族形式的定义方法。这种方法只适用于8051系列单片机进行C编程。

方法:引入关键字“sfr”,语法为:sfr sfr_name=int address

如:sfr SCON=0x98;

  sfr TMOD=0x89;

具体值应该参照SFR表。

 

关于sbit的使用有三种方式:

1、sfr PSW=0xD0;//

   sbit OV=PSW^2;

   sbit CY=PSW^7;

2、sbit OV=0xD0^2;

   sbit CY=0xD0^7;

3、sbit OV=0xD2;

  sbit CY=0xD7;

在工作中,这个sfr定义都包括在头文件<reg51.h>等头文件中了,不需要再自己定义。但是很多工程上的文件,都加上了这些定义,是为了防止<reg51.h>没有定义到这些寄存器

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM