首页 理论教育 单片机原理及接口技术实用教程一书

单片机原理及接口技术实用教程一书

时间:2023-10-22 理论教育 版权反馈
【摘要】:mcs-51系列单片机中,地址范围为80h~ffh的单元为sfr寄存器。例如:mcs-51系列单片机的特殊功能寄存器的数量与类型不尽相同,因此建议将所有特殊的“sfr”定义放入一个头文件中,该文件应包括mcs-51系列单片机机型中的sfr定义。对于位寻址的sfr中的位,cx51的扩充功能支持特殊位的定义,像sfr一样不与标准c兼容,使用“sbit”来定义位寻址单元。

单片机原理及接口技术实用教程一书

mcs-51系列单片机中,地址范围为80h~ffh的单元为sfr寄存器。

为了能直接访问这些sfr,keilcx51提供了一种自主形式的定义方法,这种定义方法与标准c语言不兼容,只适用于对8051系列单片机进行c语言编程。

cx51中定义特殊功能寄存器的一般语法格式:sfrname=intconstant;

“sfr”是定义语句的关键字,其后必须为mcs-51系列单片机中真实存在的特殊功能寄存器名;“=”后面必须是一个整型常数,不允许带有运算符的表达式,是特殊功能寄存“sfr name”的字节地址,这个常数值的范围必须在sfr地址范围内,位于0x80~0xff。

例如:

mcs-51系列单片机的特殊功能寄存器的数量与类型不尽相同,因此建议将所有特殊的“sfr”定义放入一个头文件中,该文件应包括mcs-51系列单片机机型中的sfr定义。cx51编译器的“reg51h”头文件就是这样一个文件。

对于位寻址的sfr中的位,cx51的扩充功能支持特殊位的定义,像sfr一样不与标准c兼容,使用“sbit”来定义位寻址单元。

1)第一种格式:(www.xing528.com)

“sbit”是定义语句的关键字,后跟一个寻址位符号名(该位符号名必须是80c51系列单片机中规定的位名称);“=”后的“sfr-name”必须是已定义过的sfr的名字;“^”后的整常数是寻址位在特殊功能寄存器“sfr-name”中的位号,必须是0~7范围中的数。

例如:

2)第二种格式:

例如:

3)第三种格式:

例如:

特殊功能位代表了一个独立的定义类,不能与其他位定义和位域互换。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈