#pragma DB CD LA
#pragma disable
/*禁止中断*/
单片机
C 语言之二______________________________________________________________
_______________________
一》数据类型:
char int long
1:unsinged 0~255 0~65535 0~4294967295
2:signed -128~127 -32768~32767 -2147483648~2147483647
指针:
* 3 字节
位标量:
sbit
特殊功能寄存器:
sfr
16 位特殊功能寄存器:sfr16 占 2 个内存单元,0~65535
可寻址位:
sbit 利用他可访问 51 单片机的内部 RAM 中的可寻址位或特殊功能寄存器中的
可寻址位
sfr P0=0x80;
sbit P0_1=P0^1;
/*将 P0 口的口地址定义为 80H,将 P0.1 位定义为 P1_1*/
二》数据存贮类型
表 1. C51 数据存贮类型
━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━
数据存贮类型
┃
与存贮空间的对应关系
━━━━━━━╋━━━━━━━━━━━━━━━━━━━━━━━━━━
data
┃ 直接寻址片内数据存贮区,访速度快
bdata
┃ 可位寻址片内数据存贮区,允许位与字节混合访问
idata
┃ 间接寻址片内数据存贮区,可访问片内全部 RAM 地址空间
pdata
┃ 分页寻址片外数据存贮区(256 字节)由 MOVX @R0 访问
xdata
┃ 片外数据存贮区(64K),由 MOVX @DPTR 访问
code
┃ 代码存贮区(64K),由 MOVC @DPTR 访问
━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━
变量的存贮类型定义:
char data var
/*字符变量 var 被定义为 data 存贮类型,C51 编译器将把该变量定位在 51 单片机片内数
据区存贮区中
*/
bit bdata flag
/*位变量 flag 被定义为 bdata 存贮类型,C51 编译器将把该变量定位在 51 单片机片内数
据区存贮区
(RAM)中的位寻址区:20H--2FH*/
三》
typedef:重新定义数据类型