发布网友 发布时间:2022-04-24 01:49
共4个回答
热心网友 时间:2023-10-19 21:22
c51中"bdata"是片内RAM,位寻址方式;存储器类型说明的意思。
c51中"bdata"的用法:
C51中的两种位变量,除了特殊功能寄存器中的可位寻址的位外,还有位于单片机内部RAM字节。
地址0x20~0x2F的16个字节的128个可寻址位,位地址从0x00~0x7F。
比如我有一个变量:uchar(unsigned char) BData;
这是一个字节,我可以用:bdata BData=0x00;
然后用:sbit BData_0=BData^0;
sbit BData_1=BData^1;
sbit BData_2=BData^2;
……
就是把字节拆成8个位
参考资料
博客:http://blog.csdn.net/wxx258369/article/details/78675065
热心网友 时间:2023-10-19 21:22
bdata用于将变量定义在可位寻址片内数据存储区,允许位与字节混合访问。
例:bit bdata flag
位变量flag被定义为bdata存储类型,编译时编译器将把该变量定位在51单片机片内数据存储区(RAM)中的位寻址区(地址:20H----2FH)
热心网友 时间:2023-10-19 21:22
c51中"bdata"是片内RAM,位寻址方式;存储器类型说明的意思。
c51中"bdata"的用法:
C51中的两种位变量,除了特殊功能寄存器中的可位寻址的位外,还有位于单片机内部RAM字节。
地址0x20~0x2F的16个字节的128个可寻址位,位地址从0x00~0x7F。
比如我有一个变量:uchar(unsigned char) BData;
这是一个字节,我可以用:bdata BData=0x00;
然后用:sbit BData_0=BData^0;
sbit BData_1=BData^1;
sbit BData_2=BData^2;
……
就是把字节拆成8个位
参考资料
博客:http://blog.csdn.net/wxx258369/article/details/78675065
热心网友 时间:2023-10-19 21:22
bdata用于将变量定义在可位寻址片内数据存储区,允许位与字节混合访问。
例:bit bdata flag
位变量flag被定义为bdata存储类型,编译时编译器将把该变量定位在51单片机片内数据存储区(RAM)中的位寻址区(地址:20H----2FH)
热心网友 时间:2023-10-19 21:23
C51中的两种位变量,除了特殊功能寄存器中的可位寻址的位外,还有位于单片机内部RAM字节地址0x20~0x2F的16个字节的128个可寻址位,位地址从0x00~0x7F。
比如我有一个变量
uchar(unsigned char) BData;
这是一个字节,我可以用
bdata BData=0x00;
然后用
sbit BData_0=BData^0;
sbit BData_1=BData^1;
sbit BData_2=BData^2;
……
就是把字节拆成8个位
热心网友 时间:2023-10-19 21:23
C51中的两种位变量,除了特殊功能寄存器中的可位寻址的位外,还有位于单片机内部RAM字节地址0x20~0x2F的16个字节的128个可寻址位,位地址从0x00~0x7F。
比如我有一个变量
uchar(unsigned char) BData;
这是一个字节,我可以用
bdata BData=0x00;
然后用
sbit BData_0=BData^0;
sbit BData_1=BData^1;
sbit BData_2=BData^2;
……
就是把字节拆成8个位
热心网友 时间:2023-10-19 21:23
在51中的位变量包含2类,一类是特殊功能寄存器中的可位寻址的位,比如EA,TR0等;这部分位在C中通过sbit来特殊声明,比如sbit Beep=P1^0; ;另一种即为bdata存储模式的位变量。
bdata是布尔变量的存储方式,表示位变量存储在位于单片机内部RAM字节地址0x20~0x2F的16个字节中,每个字节8位,共计16x8=128个可寻址位,位地址从0x00~0x7F。bdata所指只包含这个区域。
热心网友 时间:2023-10-19 21:23
在51中的位变量包含2类,一类是特殊功能寄存器中的可位寻址的位,比如EA,TR0等;这部分位在C中通过sbit来特殊声明,比如sbit Beep=P1^0; ;另一种即为bdata存储模式的位变量。
bdata是布尔变量的存储方式,表示位变量存储在位于单片机内部RAM字节地址0x20~0x2F的16个字节中,每个字节8位,共计16x8=128个可寻址位,位地址从0x00~0x7F。bdata所指只包含这个区域。