如下单片机温度报警器程序的意思?(画问号的地方都不太明白,计算机小白求大佬帮忙解释)

2024-12-22 22:31:34
推荐回答(3个)
回答1:

distab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff,0xfe,0xf7};❓
uchar dismod=0,xiaodou1=0,xiaodou2=0,currtemp;
bit flag;❓定义一个位变量
void t0isr() interrupt 1
{
TH0=(65536-5000)/256;❓定时器0  5ms溢出一次参数高八位
TL0=(65536-5000)%256;❓定时器0  5ms溢出一次参数低八位
switch(number)❓显示第number位
{
case 0:
P2=0x08;❓第一位选
P0=distab[TempBuffer1[0]];❓第一段码
break;❓退出switch
case 1:
P2=0x04;
P0=distab[TempBuffer1[1]];
break;
case 2:
P2=0x02;
P0=distab[TempBuffer1[2]]&0x7f;
break;
case 3:
P2=0x01;
P0=distab[TempBuffer1[3]];❓第四段码
break;
default:
break;
}
number++;
if(number>3)number=0;
}
void delay_18B20(unsigned int i)❓延时
{
while(i--);
}
/**********ds18b20初始化函数**********************/
void Init_DS18B20(void) 
{
bit x=0;
do{
DQ=1;
delay_18B20(8);
DQ = 0; //单片机将DQ❓数据位送0
delay_18B20(90); //精确延时 大于 480us
DQ = 1; //拉高总线❓数据位送1
delay_18B20(14);
x=DQ; //稍做延时后 如果x=0则初始化成功 x=1则初始化失败,继续初始化
}while(x);
delay_18B20(20);
}
/***********ds18b20读一个字节**************/ 
unsigned char ReadOneChar(void)
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; // 给脉冲信号❓数据送0
dat>>=1;
DQ = 1; // 给脉冲信号
i

回答2:

我的天,你这个问号打的,给你老师看到能气死不?

回答3:

看不懂问号阿
懂事电子设计 Vgz