首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

下面这个单片机程序是什么意思?

发布网友 发布时间:2022-04-22 09:13

我来回答

3个回答

热心网友 时间:2024-07-01 18:17

bdata sinthr; //sinthr定义为位寻址区域的一个变量(20~2FH)
sbit flag=sinthr^0; //flag定义为变量sinthr的D0位
{keyword=key&0x07; //keyword高5位清零,保留低三位
if(keyword!=0x07) //有键按下执行之后的程序
{
while((key&0x07)!=0x07);//等待键释放
switch(keyword)
{
case 6:{{flag=0;EA=1;}break;}//第一个按键按下(110),开中断,标志位清零
case 5:{{flag=1;EA=1;}break;}//第二个按键按下(101),开中断,标志位置1
case 3:{flag=~flag;EA=1;break;}//第三个按键按下(011),开中断,标志位取反
default:{EA=1;break;}//否则,开中断
}

sbit flag=sinthr^0; //sbit是位定义伪指令,这句意思就是变量flag是位变量,具体地址为
sinthr的第0位,51中位寻址范围为20~2FH,对应的位址为00~7FH共128个位地址

case 3:{flag=~flag;EA=1;break;}//也就是当这个键按下后,将位变量取反,0变1,1变0.

热心网友 时间:2024-07-01 18:17

那是CS1.5启动时的程序或时间追问能否具体分析一下,我对sbit flag=sinthr^0; case 3:{flag=~flag;EA=1;break;}/这两句不理解,补充一下定义#define key P1 //键盘口
uchar data keyword,v=0; //键值存放,查表指针

热心网友 时间:2024-07-01 18:18

zhxiufan| 解释的很i清楚了,没错

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com