C51单片机的数据类型

时间:2023-03-11作者:佚名

C51支持C语言的所有标准数据类型,除此之外,还加入了用于专门访问80C51硬件的数据类型,如:bit、sbit、sfr和sfrl6。这些数据类型在ANSIC中是没有的。

bit:声明位变量,其值为0或1。

sbit:声明可位寻址变量中的某个位变量,其值为0或1

sfr:声明特殊功能寄存器,地址范围为:0~255。

sfr16:同上,地址范围为0~65535。

C51编译器支持表5-1列出的数据类型。除了这些变量类型外,变量能被组合到结构、联合和数组中。兼容ANSIC标准的数据类型可通过指针访问,但扩展的bit、sbit、sfr和sfrl6数据类型专用于访问80C51的特殊功能寄存器,故不能通过指针进行访问。

表5-1 C51数据类型

数据类型

位

字节

值的范围

char

8

1

-128~127

unsigned char

8

1

0~255

enum

16

2

-32768~32767

short

16

2

-32768~32767

unsigned short

16

2

0~65535

int

16

2

-32768~32767

unsigned int

16

2

0~65535

long

32

4

-2147483648~2147483647

unsigned long

32

4

0~4294967295

float

32

4

±1.175494E-38~±3.402823E 38

bit

1

-

0,1

sbit

1

-

0,1

sfr

8

1

0~255

sfr16

16

2

0~65535

80C51有21个特殊功能寄存器,它们在片内RAM安排了绝对地址,80C51的芯片说明中已经为它们用预定义标识符起了名字。C51要做的就是承认这些标识符并将其与绝对地址联系起来。可以用sfr与sfr16两种标识符。

例5.1 用sfr数据类型定义特殊功能寄存器示例。

sfr SCON = 0x98; /*声明SCON为串口控制器,地址为0x98*/

sfr P0 = 0x80; /*声明P0为特殊功能寄存器,地址为0x80*/

sfr TMOD = 0x89; /*声明TMOD为定时器/计数器的模式寄存器,地址为0x89*/

sfr PSW = 0xD0; /*声明PSW为特殊功能寄存器,地址为0xD0*/

说明:sfr之后的寄存器名称必须大写,定义之后可以直接对这些寄存器赋值。

在许多80C51派生系列中可用两个连续地址的特殊功能寄存器指定一个16位值,如:

sfr16 T2 = 0xCDCC /*声明T2为16位特殊功能寄存器,地址为0CCH(低字节)和0CDH(高字节)*/

例5.2 用 sbit的数据类型定义位变量示例。

sbit CY = PSW^7; /*从已声明的PSW中,指定PSW.7为CY*/

sbit CY = 0xD0^7;/*整数0xD0为基地址,指定0xD0的第七位为CY*/

在sbit声明中,“^”号右边的表达式定义特殊位在寄存器中的位置,值必须是0~7。

相关阅读

焊接贴片电容的过程中需要注意的事项

MLCC(片状多层陶瓷电容)现在已经成为了电子电路最常用的元件之一。MLCC表面看来,非常简单,可是,很多情况下,设计工程师或生产、工艺人员对MLCC的认识却有不足的地方。有些公...
2023-03-31
焊接贴片电容的过程中需要注意的事项

采用驱动IC和NMOS的防反电路设计

SCD----PMOS防反电路设计 引言:无论是常规的低侧NMOS防反接电路还是高侧的PMOS防反接电路均有其局限性。本节简述采用驱动IC加NMOS的方案做防反电路的设计及其优点。 1高边NMOS防反 PMO...
2023-06-28
采用驱动IC和NMOS的防反电路设计

印度最高危的电工职业,完全是用生命在工作,简直就是开挂了!

无论在哪里,电工都是高危职业。而在印度,电工在事故中常发生事故,因为印度基础设施落后,很多电线常裸露。照片中,这就是印度大街上的杂乱电线场景。 有时候电工面对这一堆...
2023-06-11
印度最高危的电工职业,完全是用生命在工作,简直就是开挂了!

3-30V/3A直流电源电路图

该直流电源电路图设计为所有通用电路的附加或永久电源,基于 3 至 30V 之间的稳定直流电压,前提是电流消耗不超过 3A。当然,这个直流电源还可以用于其他用途。通过用电位器代替...
2023-08-23
3-30V/3A直流电源电路图

电工常用照明电路——三地控制一只灯电路

电工常用照明电路——三地控制一只灯电路 由两只单刀双掷开关和一只双刀双掷开关可以实现三地控制一只灯的目的。 电路图 三地控制一只灯电路如图1-12(a)所示。 图1-12 三地控制...
2023-07-05
电工常用照明电路——三地控制一只灯电路

热销商品

12V星空顶筒灯嵌入式阳台卧室客厅氛围迷你呼吸小射灯满天星天花

12V星空顶筒灯是一款专为营造浪漫氛围而设计的迷你嵌入式射灯,适用于阳台、卧室、客厅等空间。采用低功耗LED光源,安全节能,光线柔和均匀,支持呼吸模式与满天星效果,可...
¥ 7.65

公牛官方旗舰店开关插座空调16A插座五孔10A面板暗装多孔G12白灰

公牛官方旗舰店提供一系列高质量的开关插座和空调配件。这款16A插座五孔面板采用暗装设计,适用于多种安装环境,如墙面、天花板等。它具有10A的电流容量,可以满足家庭...
¥ 5.55

电位器旋钮电流调节螺帽直流逆变电焊机二保焊送丝机通用旋钮B102

电位器旋钮电流调节螺帽适用于直流逆变电焊机和二保焊送丝机,是一款通用的旋钮B102。该旋钮采用优质材料制造,具有耐磨损、耐高温、耐腐蚀等特点,能够长时间稳定运行...
¥ 0.7

喜美诺排插插座面板多孔排插家用宿舍接线板插排国标线板延长线

喜美诺排插,一款精心设计的多孔插座面板,专为家庭和宿舍环境而造。它不仅提供便捷的接线体验,更符合国标安全标准,确保使用过程中的安全与稳定。这款排插采用高质量材...
¥ 11.9

O型圈氟橡胶圆条丁腈胶硅胶垫片防水O三元乙丙EPDM密封件骨架油封

O型圈、氟橡胶圆条、丁腈胶、硅胶垫片、三元乙丙(EPDM)密封件及骨架油封是广泛应用于机械、汽车、航空航天及建筑等领域的关键密封元件。氟橡胶耐高温、耐腐蚀,适用...
¥ 1

网站栏目