__interrupt void timerA0_ISR()
{
////tempe=Do1Convert();//读取温度
if(!setF)//如果没选择设置功能,时间会自动走
{
ShowTime();
disp_hz(0x80,tishi_W,5);
disp_temp(tempe);//执行到这里的时候堆栈溢出
}
jiance_Key();//
程序写的不好,只贴一部分吧,
溢出函数
void disp_temp(uint tempe)
{
write_cmd(0x85);
if(tempe<0)
{
write_data(temp[0]+0x30);
tempe=0-tempe;
}
else
write_data(0x30);
if(tempe>=100&tempe<=125)
{
write_data(temp[1]+0x30);
write_data(temp[2]+0x30);
write_data(temp[3]+0x30);
}
if(tempe<100&tempe>=10)
{
write_data(0x30);
write_data(temp[2]+0x30);
write_data(temp[3]+0x30);
}
if(tempe<10&tempe>0)
{
write_data(0x30);
write_data(0x30);
write_data(temp[3]+0x30);
}
}