"Unreachable code"是什么错误?

在这里插入图片描述在这里插入图片描述
这个警告怎么解决啊 怎么回事不能执行到的程序呢?
这是我的程序
#include “stc15f2k60s2.h”
#include “absacc.h”
#include “onewire.h”
#include “iic.h”

typedef unsigned char u8;
typedef unsigned int u16;

sbit S7=P3^0;
sbit S6=P3^1;
sbit S5=P3^2;
sbit S4=P3^3;

u8 Temper_Low;
u8 Temper_High;
u16 Temper_Now;

u8 shumaguan_duan[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

void E2PROM_Write(u8 address,u8 dat);
u8 E2PROM_Read(u8 address);
void Delay(u16 t);
void Delay1(u16 t);
void SMG_Init(u8 pos,u8 dat);
void SMG_Show();
void System_Init();
void Key_Scan();
void rd_temperature();

void main()
{
System_Init();
Temper_High=E2PROM_Read(0x00);
Delay1(200);
Temper_Low=E2PROM_Read(0x01);
Delay1(200);
while(1)
{
rd_temperature();
Key_Scan();
}
}

void E2PROM_Write(u8 address,u8 dat)
{
IIC_Start();
IIC_SendByte(0xa0);
IIC_WaitAck();
IIC_SendByte(address);
IIC_WaitAck();
IIC_SendByte(dat);
IIC_WaitAck();
IIC_Stop();

}

u8 E2PROM_Read(u8 address)
{
u8 dat;

IIC_Start();
IIC_SendByte(0xa0);
IIC_WaitAck();
IIC_SendByte(address);
IIC_WaitAck();

IIC_Start();
IIC_SendByte(0xa1);
IIC_WaitAck();
dat=IIC_RecByte();
IIC_SendAck(0);
IIC_Stop();

return dat;

}

void rd_temperature()
{
u8 LSB;
u8 MSB;
init_ds18b20();
Write_DS18B20(0xcc);
Write_DS18B20(0x44);
Delay(900);
init_ds18b20();
Write_DS18B20(0xcc);
Write_DS18B20(0xbe);
LSB=Read_DS18B20();
MSB=Read_DS18B20();
init_ds18b20();

Temper_Now=0x0000;
Temper_Now=MSB;
Temper_Now<<=8;
Temper_Now|=LSB;
if(Temper_Now&0xf800==0)
{
	Temper_Now=Temper_Now*0.0625;
}

}

void SMG_Show()
{
SMG_Init(0,shumaguan_duan[Temper_High/10]);
SMG_Init(1,shumaguan_duan[Temper_High%10]);

SMG_Init(2,shumaguan_duan[Temper_Low/10]);
SMG_Init(3,shumaguan_duan[Temper_Low%10]);

SMG_Init(6,shumaguan_duan[Temper_Now/10]);
SMG_Init(7,shumaguan_duan[Temper_Now%10]);

}

void SMG_Init(u8 pos,u8 dat)
{
XBYTE[0xe000]=0xff;
XBYTE[0xc000]=0x01<<pos;
XBYTE[0xe000]=dat;
Delay1(400);
}

void Key_Scan()
{
if(S40)
{
while(!S4)
SMG_Show();
if(Temper_High<100)
{
Temper_High++;
E2PROM_Write(0x00,Temper_High);
Delay(300);
}
}
if(S5
0)
{
while(!S5)
SMG_Show();
if((Temper_High>Temper_Low)&&(Temper_Low>0))
{
Temper_Low++;
E2PROM_Write(0x01,Temper_Low);
Delay(300);
}
}
if(S60)
{
while(!S6)
SMG_Show();
if(Temper_High>Temper_Low)
{
Temper_High–;
E2PROM_Write(0x00,Temper_High);
Delay(300);
}
}
if(S7
0)
{
while(!S5)
SMG_Show();
if(Temper_Low>0)
{
Temper_Low–;
E2PROM_Write(0x01,Temper_Low);
Delay(300);
}
}
}

void System_Init()
{
XBYTE[0xa000]=0x00;
XBYTE[0x8000]=0xff;
}

void Delay(unsigned int t)
{
while(t–)
{
SMG_Show();
}
}

void Delay1(u16 t)
{
while(t–);
}

求大佬解决 万分感谢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值