请各位大哥帮忙看一下程序错在哪里

[复制链接]
3237|4
 楼主| 楼亮亮 发表于 2008-3-15 21:18 | 显示全部楼层 |阅读模式
这个程序编译的时候总是出现下面这个情况<br />MedWin&nbsp;v2.39&nbsp;Translating&nbsp;F:\单片机\挑战杯\程序1\tzb.c......<br />&nbsp;&nbsp;&nbsp;&nbsp;C51&nbsp;COMPILER&nbsp;V7.50&nbsp;-&nbsp;SN:&nbsp;K1DZP-5IUSHE<br />&nbsp;&nbsp;&nbsp;&nbsp;COPYRIGHT&nbsp;KEIL&nbsp;ELEKTRONIK&nbsp;GmbH&nbsp;1987&nbsp;-&nbsp;2004<br />&nbsp;&nbsp;&nbsp;&nbsp;C51&nbsp;COMPILATION&nbsp;COMPLETE.&nbsp;&nbsp;0&nbsp;WARNING(S),&nbsp;&nbsp;1&nbsp;ERROR(S)<br />&nbsp;&nbsp;&nbsp;&nbsp;ERROR&nbsp;C249&nbsp;IN&nbsp;LINE&nbsp;238&nbsp;OF&nbsp;TZB.C:&nbsp;'DATA':&nbsp;SEGMENT&nbsp;TOO&nbsp;LARGE<br />Translate&nbsp;completely&nbsp;and&nbsp;find&nbsp;errors!<br /><br />程序如下<br />/*------------------------------------------------------**<br />**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程序的基本简介&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**定义:<br />**<br />**------------------------------------------------------*/<br />#include&nbsp;&ltreg52.h&gt<br />#include&nbsp;&ltabsacc.h&gt<br />#include&nbsp;&ltintrins.h&gt<br />#define&nbsp;uchar&nbsp;unsigned&nbsp;char&nbsp;<br />uchar&nbsp;sbuf[10],rbuf[60],chgbuf[60];<br />uchar&nbsp;count,second=0,minute,hour;<br />bit&nbsp;fgsm,fghot,fgrd;<br />bit&nbsp;revfg,intfg;<br />sbit&nbsp;p20=P2^0;<br />sbit&nbsp;p21=P2^1;<br />/*------------------------------------------------------**<br />**函数声明<br />**------------------------------------------------------*/<br />void&nbsp;delay50ms(unsigned&nbsp;int&nbsp;nb);<br />void&nbsp;init();&nbsp;&nbsp;<br />dat_bulid();<br />void&nbsp;data_chg();<br />M_contor();<br />send();<br /><br />/*-----------------------------------------------------**<br />**&nbsp;函数原型:void&nbsp;delay50ms(unsigned&nbsp;int&nbsp;nb)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**&nbsp;函数功能:50ms定时<br />**&nbsp;入口参数:&nbsp;nb<br />**-----------------------------------------------------*/<br />void&nbsp;delay50ms(unsigned&nbsp;int&nbsp;nb)<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;while(nb--)<br />&nbsp;&nbsp;{&nbsp;for(i=0;i&lt125;i++);<br />&nbsp;&nbsp;}<br />}<br />/*-----------------------------------------------------**<br />**函数原型:void&nbsp;init()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:串口定时器初始化,方式2,波特率9600&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**&nbsp;&nbsp;&nbsp;&nbsp;<br />**入口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**-----------------------------------------------------*/<br />void&nbsp;init()&nbsp;&nbsp;&nbsp;<br />{&nbsp;TMOD=0x21;<br />&nbsp;&nbsp;TL1=0xfd;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;TH1=TL1;<br /><br />&nbsp;&nbsp;TH0=0x0c;<br />&nbsp;&nbsp;TL0=0xdc;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;SCON=0x50;<br />&nbsp;&nbsp;PCON=0x00;<br />&nbsp;&nbsp;TR1=1;<br />&nbsp;&nbsp;EA=1;<br />}<br />/*-------------------------------------------------------**<br />**函数原型:void&nbsp;time0()&nbsp;interrupt&nbsp;1&nbsp;using&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:时间定时,用于开启家用电器&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:无<br />**-------------------------------------------------------*/<br />void&nbsp;time0()&nbsp;interrupt&nbsp;1&nbsp;using&nbsp;1&nbsp;<br />{&nbsp;count++;<br />&nbsp;&nbsp;TH0=0x0c;<br />&nbsp;&nbsp;TL0=0xdc;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(count==16)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;second++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(second==60)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;second=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minute++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(minute==60)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minute=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hour++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(hour==24)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hour=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br />/*------------------------------------------------------**<br />**函数原型:void&nbsp;int0()&nbsp;&nbsp;interrupt&nbsp;0&nbsp;using&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:外部中断入口,p15代表烟雾传感器,p16代表&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**热释电传感器,p17代表无线模块接受中断&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**fgsm烟雾传感器,fghot热释电传感器,fgrd无线&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**-------------------------------------------------------*/<br />void&nbsp;int0()&nbsp;&nbsp;interrupt&nbsp;0&nbsp;using&nbsp;0<br />{&nbsp;<br />&nbsp;&nbsp;intfg=1;<br />&nbsp;&nbsp;switch(P1&0xe0)<br />&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;case&nbsp;0x20:&nbsp;&nbsp;fgsm=1;&nbsp;break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0x40:&nbsp;&nbsp;fghot=1;&nbsp;break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0x80:&nbsp;&nbsp;{&nbsp;if((P1&0x0f)==0x0f)&nbsp;fgrd=1;&nbsp;}break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default:&nbsp;break;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br />/*------------------------------------------------------**<br />**函数原型:void&nbsp;uart1()&nbsp;interrupt&nbsp;4&nbsp;using&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:串口接受中断&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**出口参数:全局变量rbuf[]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**------------------------------------------------------*/<br />void&nbsp;uart1()&nbsp;interrupt&nbsp;4&nbsp;using&nbsp;1<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;revfg=1;<br />&nbsp;&nbsp;RI=0;<br />&nbsp;&nbsp;for(i=0;i&lt5;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;rbuf=SBUF;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(RI==0);&nbsp;RI=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br />/*-----------------------------------------------------**<br />**函数原型:dat_bulid()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:实现发送前的数据处理&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**&nbsp;<br />**p20热水器,p21空调&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**------------------------------------------------------*/<br />dat_bulid()<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;P2=0xff;<br />&nbsp;&nbsp;for(i=0;i&lt60;i++)<br />&nbsp;&nbsp;&nbsp;{&nbsp;delay50ms(20);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay50ms(20);<br />&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//延时两分钟,等待主人遥控信息<br />&nbsp;&nbsp;if(fgsm)&nbsp;sbuf[0]=0x01;&nbsp;&nbsp;<br />&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sbuf[0]=0x00;<br />&nbsp;&nbsp;if(fghot&(!fgrd))&nbsp;sbuf[1]=0x03;<br />&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sbuf[1]=0x02;<br />&nbsp;&nbsp;i=P2&0x03;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//读取家电运行状况<br />&nbsp;&nbsp;switch(i)<br />&nbsp;&nbsp;&nbsp;{&nbsp;case&nbsp;0x00:&nbsp;{sbuf[2]=0x05;sbuf[3]=0x07;}break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0x01:&nbsp;{sbuf[2]=0x04;sbuf[3]=0x07;}break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0x02:&nbsp;{sbuf[2]=0x05;sbuf[3]=0x06;}break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0x03:&nbsp;{sbuf[2]=0x04;sbuf[3]=0x06;}break;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default:break;<br />&nbsp;&nbsp;&nbsp;}<br />}<br /><br />/*----------------------------------------------------------**<br />**函数原型:void&nbsp;data_chg()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:16进制转换10进制&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**出口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**-----------------------------------------------------------*/<br />void&nbsp;data_chg()<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;for(i=0;i&lt60;i++)<br />&nbsp;&nbsp;&nbsp;chgbuf=(rbuf/16)*10+rbuf%16;<br />}&nbsp;&nbsp;<br />/*-----------------------------------------------------------**<br />**函数原型:M_contor()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:实现对家用电器的定时控制&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**出口参数:无&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**-----------------------------------------------------------*/<br />M_contor()<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;data_chg();<br />&nbsp;&nbsp;hour=chgbuf[1];<br />&nbsp;&nbsp;minute=chgbuf[2];<br />&nbsp;&nbsp;TR0=1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//开定时中断<br />&nbsp;&nbsp;for(i=3;i&lt60;i++)<br />&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;if((chgbuf&0x0e)==0x00)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((chgbuf&0x01)==0x01)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p20=1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p21=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;<br />&nbsp;&nbsp;&nbsp;else&nbsp;if((chgbuf&0x0e)==0x02)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((chgbuf&0x01)==0x01)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p20=1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p21=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;else&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((chgbuf&0x01)==0x01)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p20=1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;if((hour=chgbuf[i+1])&(minute=chgbuf[i+2]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p21=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;}<br />}<br />/*------------------------------------------------------**<br />**函数原型:void&nbsp;send()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**函数功能:数据的发送&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**入口参数:全局变量sbuf[]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**<br />**------------------------------------------------------*/<br />send()<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;dat_bulid();<br />&nbsp;&nbsp;ES=0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//发送时关串口中断<br />&nbsp;&nbsp;for(i=0;i&lt4;i++)<br />&nbsp;&nbsp;&nbsp;{&nbsp;SBUF=sbuf;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(TI==0);&nbsp;TI=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;ES=1;<br />}<br />/*----------------------------------------------------------------**<br />**函数原型:<br />**函数功能:<br />**-----------------------------------------------------------------*/<br />void&nbsp;main()<br />{&nbsp;<br />&nbsp;&nbsp;init();<br />&nbsp;&nbsp;send();<br />&nbsp;&nbsp;while(1)<br />&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;if(revfg)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;revfg=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;M_contor();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(intfg)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;intfg=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;send();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />}
NE5532 发表于 2008-3-16 09:16 | 显示全部楼层

大哥,给点专业精神好不好

起码说一下程序意图和问题所在吧。<br /><br />另外你搞挑战杯这种正规比赛,好歹还是换个像样的编译器哈。
canger 发表于 2008-3-16 14:39 | 显示全部楼层

你用的是哪一款51啊

uchar&nbsp;sbuf[10],rbuf[60],chgbuf[60];<br />这些好象太大了,将他们放到idate中去.
ayb_ice 发表于 2008-3-17 15:47 | 显示全部楼层

DATA空间只有128字节

而且还包括寄存器空间
 楼主| 楼亮亮 发表于 2008-3-28 12:13 | 显示全部楼层

谢谢 大家

&nbsp;&nbsp;谢谢&nbsp;大家能帮我&nbsp;现在问题得到解决了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

37

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部