單片機特殊功能寄存器(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