问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

单片机C语言怎么声明一个可以位寻址的变量

发布网友 发布时间:2022-05-17 12:36

我来回答

4个回答

热心网友 时间:2023-08-21 12:12

是这个样子的,你只要声明了位变量,比如bit a;而且这个变量是全局变量,或者是函数内部的静态变量,那么,这个位变量的地上就恒不变了,只是地址是多少这个是编译器随机分配的,不敢十分确定,但是在以后的运行中,地址肯定是不变的。

如果你声明的是函数内部的动态变量,比如在函数内部声明:bit a,那么,这个位变量是随着函数的调用变化的,其地址也是变化的。

所以,你只要声明一个全局的位变量,那么,这个变量就肯定是地址不变的,当然,不知道其地址具体是多少罢了。

如果你非要知道每个地址是多少,那么,有两个办法:

1 你集中把128个位全部都定义出来。
比如,你在某个C文件里,这样写:
bit Bit00 = 0;
bit Bit01 = 0;
bit Bit02 = 0;
bit Bit03 = 0;

一直定义128个,把所有位空间占满,那么,这样,就可以肯定Bit00的地址是0x20的最低位,bit01的地址是0x20的次低位了。

2 用sbit,而不用bit.

比如:unsigned char data B_Var[16] = 0;

sbit Led_Status1 = B_Var[0]^7;那么,就表示Led_Status 是第20H地址中的最高位。

sbit Led_Status2 = B_Var[6]^3;那么,就表示Led_Status 是第26H地址中的第3位。
这个其实并不是定义了位变量,只是起了个别名而已。但效果一样,只是注意,你更改B_Var[6],可能会更改26H的地址第3位,所以,如果你只用位,那么,就不要操作B_Var[6]这个数组元素。

其实呢,你只要定义个全局变量就行了,没有必要知道这个bit变量的地址,因为没有什么实际意义。

热心网友 时间:2023-08-21 12:13

单片机中,可以位寻址的有两个地方,第一是特殊功能寄存器中可以被8整除的寄存器,第二就是20H~2FH这个位址空间。两个地方的位变量申明不一样。
第一个地方的申明是: sbit 位变量
比如:sbit pwm=P1^0;
第二个地方的申明是:bit 位变量
比如: bit flag;

热心网友 时间:2023-08-21 12:13

首先是你的头文件是#include<reg51.h>
在这个头文件中包含着一些声明比如:sfr scan ;
这个声明是你在程序中不必写出来的,只需要#include<reg51.h>
然后你再在你的程序中写语句:sbit 变量名 P0^1;
注意这个P0^1是指P0输出/输入的第一个位。希望对你有帮助

热心网友 时间:2023-08-21 12:14

int *cc;
cc=(int*)0X6300 ;
*cc=3;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...爱你你是我的罗密欧 , 我愿意变成你的朱丽叶' 谁知 有句歌词是“我爱你你是我的朱丽叶,我愿意变成你的梁山伯”是哪... 为什么打印出来的文档页码和原来的不一样 ...两台电脑用路由器上网一台是W7一台是XP如何实现两台电脑共享文件 win7怎么联另一台电脑win7怎么让网络和另一台电脑共享 w7的系统怎么共享电脑w7系统里面文件怎么共享另一台电脑 共享win7电脑w7系统里面文件怎么共享另一台电脑 翡翠有收藏价值吗,我们玩家如何去投资 价格一两万元的翡翠如何挑选 ppt怎么转换成视频?简单四步法,轻松搞定ppt微课录制 你好我用的是STC自带ad的单片机,ad转换结果怎么样呢,怎么和十进制数比较啊,ad口做模拟量输入是高电平? 请给一个STC 90C58AD 的单片机AD转换的C程序。谢谢。 有的话发到我的邮箱里lylhe@163.com 谢谢! AK03的基本参数是什么,能用IN4148代换吗 我今天买了一个苹果5s帮忙查查是否为翻新机序号:F93NR03SFR9K 4K 电视 对播放普通的蓝光光碟 画面有提升吗 ? 开空调吹衣服用热风干的快还是冷风干的快? 空调吹干衣服是调制冷还是去湿,哪个模式吹干衣服快? 大学家长意见和建议咋写 QQ号被暂时冻结20年后还能解封吗 2021年江苏成人高考145分能过吗 梦见自己脱光被人打两个耳光 推荐点耽美甜文吧。。最好完结了 酸奶水果沙拉的详细做法。要好吃的。 黄桃酸奶水果沙拉怎么做 三个女儿他爸爸陪育出三个研究生 HTML里编辑论坛,字出框了,是怎么回事? 了字下面一个框 漂唇做出框了怎么办? 桌面上的软件被框住了如何去掉框架? 上框里一个了读什么 keil编译错误missing &#39;;&#39; before &#39;code&#39; 求51单片机超声波避障程序 走着走着 花就开了出自哪里 数字温度计设计 我的手机IMEI:353986053422401/03,请问产地是哪里,何时生产, 请问型号MF407CH&#47;A 序列号DNPNC00SFR9V IMEI351982069372690是真机么? 河南老教授校园唱歌意外圈粉走红,这位老教授为何会让学生喜欢? 我们走着走着花开花落是什么歌? 请教各位,如何设置EXCEL公式,大道想要的效果,见图片? 我是应届毕业生,找工作用哪个软件比较靠谱? Excel函数 请看图片 姓罗女孩缺水缺金的名字有什麽 比特币,百川币,摩根币出至那个国家? 非洲比特币挖矿合法的国家 世界各国比特币合法化都进行到哪一步 flashvars 怎么用 只差了2天,渣滓洞的革命者没能被我军成功营救,原因何在? 如果郑耀先没有从渣滓洞逃走,会是什么结局? 韩子栋到底救了渣滓洞成员没? 百度为什么杨虎城被关十二年无人解救