標(biāo)題:
有沒(méi)有大佬看一下這個(gè)程序怎么改,編譯時(shí)候的錯(cuò)誤如圖
[打印本頁(yè)]
作者:
長(zhǎng)情久暮
時(shí)間:
2019-4-21 00:47
標(biāo)題:
有沒(méi)有大佬看一下這個(gè)程序怎么改,編譯時(shí)候的錯(cuò)誤如圖
QQ截圖20190421004520.png
(7.82 KB, 下載次數(shù): 25)
下載附件
2019-4-21 00:45 上傳
********************************AT89C52源程序************************
#include<reg52.h> //包含頭文件reg52.h
#define uchar unsigned char //無(wú)符號(hào)字符形變量定義為uchar
#define uint unsigned int
sbit biaozhun= P1^0; //定義端口
sbit jingji = P1^1;
sbit dandu = P1^2;
sbit paishuiled= P1^3;
sbit qiangxi = P1^4;
sbit ruoxi = P1^5;
sbit xidi = P1^6;
sbit piaoxi = P1^7;
sbit tuoshui = P2^0;
sbit jinshui = P2^2;
sbit paishui = P2^3;
sbit zz = P2^4;
sbit fz = P2^5;
sbit baojing = P2^1;
********************************鍵盤(pán)接口************************
sbit CX_key = P3^0;
sbit QR_key = P3^1;
sbit SW_key = P3^6;
sbit GKG_key = P3^7;
********************************全局變量定義************************
uchar tt,num,qr,qidong;
uint tt1=0;
bit XDshanshuo;
bit PXshanshuo;
bit TSshanshuo;
bit BJshanshuo;
******************************** 延時(shí)一秒************************
void delay(uint i)
{
uchar x;//,a,b,c
while(i--)
T2CON=0X01
for(x=0;x<20;x++) //定時(shí)器定時(shí)5秒
{
TH2=0x3c; //設(shè)置定時(shí)器初值
TL2=0xb0;
TR2=1;
while(!TF2); //查詢計(jì)數(shù)是否溢出
TF2=0 //定時(shí)時(shí)間到,將定時(shí)器溢出標(biāo)志位TF2清零
while(!qidong); //暫停語(yǔ)句
}
}
******************************** 延時(shí)毫秒************************
void delayms(uint i)
{
uchar x;
while(i--)
for(x=0;x<110;x++);
}
*******************************標(biāo)準(zhǔn)運(yùn)行方式************************
void biaozhunfangshi() //標(biāo)準(zhǔn)方式運(yùn)行
{
jinshui=0; //進(jìn)水打開(kāi)
delay(4); //延時(shí)
jinshui=1; //進(jìn)水關(guān)閉
xidi=0; //洗滌打開(kāi)
TR1=1; XDshanshuo=1; //啟動(dòng)定時(shí)器1洗滌閃爍
delay(20); //延時(shí)
xidi=1; //洗滌打開(kāi)
TR1=0; 1 XDshanshuo=0; //關(guān)掉定時(shí)器,洗滌閃爍
zz=0; //正轉(zhuǎn)打開(kāi)
fz=0; //反轉(zhuǎn)打開(kāi)
paishui=0; BJshanshuo=1; //排水打開(kāi)
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
jinshui=0; //打開(kāi)進(jìn)水
delay(4); //延時(shí)
jinshui=1; BJshanshuo=0; //關(guān)掉進(jìn)水
piaoxi=0; //打開(kāi)漂洗
TR1=1; PXshanshuo=1; //打開(kāi)定時(shí)器1漂洗閃爍
delay(20); //延時(shí)
piaoxi=1; //關(guān)掉漂洗
TR1=0; PXshanshuo=0; //關(guān)掉定時(shí)器1.漂洗閃爍
zz=0; //打開(kāi)正轉(zhuǎn)
fz=0; //打開(kāi)反轉(zhuǎn)
paishui=0; BJshanshuo=1; //打開(kāi)排水
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
jinshui=0; //打開(kāi)進(jìn)水
delay(4); //延時(shí)
jinshui=1; BJshanshuo=0; //關(guān)掉進(jìn)水
piaoxi=0; //打開(kāi)漂洗
TR1=1; PXshanshuo=1; //打開(kāi)定時(shí)器1
delay(20); //延時(shí)
piaoxi=1; //關(guān)掉漂洗
TR1=0; PXshanshuo=0; //關(guān)掉定時(shí)器1
zz=0; //打開(kāi)正轉(zhuǎn)
fz=0; //打開(kāi)反轉(zhuǎn)
paishui=0; BJshanshuo=1; //打開(kāi)排水
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
tuoshui=0; Tsshansuo=1; //打開(kāi)脫水
delay(2); //延時(shí)
tuoshui=1; Tsshansuo=0; //關(guān)掉脫水
biaozhun=1; //關(guān)掉標(biāo)準(zhǔn)
}
****************************經(jīng)濟(jì)運(yùn)行方式************************
void jingjifangshi() //經(jīng)濟(jì)方式
jinshui=0; //打開(kāi)進(jìn)水
delay (4); //延時(shí)
jinshui=1; //關(guān)掉進(jìn)水
xidi=0; //打開(kāi)洗滌
TR1=1; //打開(kāi)定時(shí)器1
XDshanshuo=1; //打開(kāi)洗滌閃爍
delay(30); //延時(shí)
xidi=1; //關(guān)掉洗滌
TR1=0; XDshanshuo=0; //關(guān)掉定時(shí)器1
zz=0; //打開(kāi)正轉(zhuǎn)
fz=0; //關(guān)掉反轉(zhuǎn)
paishui=0; //打開(kāi)排水
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
jinshui=0; //打開(kāi)進(jìn)水
delay(4); //延時(shí)
jinshui=1; //關(guān)掉進(jìn)水
piaoxi=0; //打開(kāi)漂洗
TR1=1; PXshanshuo=1; //打開(kāi)定時(shí)器1
delay(20); //延時(shí)
piaoxi=1; //關(guān)掉漂洗
TR1=0; PXshanshuo=0; //關(guān)掉定時(shí)器1
zz=0; //正轉(zhuǎn)
fz=0;//反轉(zhuǎn)
paishui=0; //打開(kāi)排水
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
tuoshui=0; TSshanshuo=1; //打開(kāi)脫水
delay(2); //延時(shí)
tuoshui=1; TSshanshuo=0; //關(guān)掉脫水
jingji=1; //關(guān)閉進(jìn)水
}
******************************單獨(dú)運(yùn)行方式************************
void dandufangshi() //單獨(dú)方式
{
jinshui=0; //打開(kāi)進(jìn)水
delay(4); //延時(shí)
jinshui=1; //關(guān)掉進(jìn)水
xidi=0; XDshanshuo=1; //打開(kāi)洗滌
TR1=1; //打開(kāi)定時(shí)器1
delay(30); //延時(shí)
xidi=1; //關(guān)掉洗滌
TR1=0; XDshanshuo=0; //關(guān)掉定時(shí)器1
zz=0; //正轉(zhuǎn)
fz=0; //反轉(zhuǎn)
dandu=1;
}
*******************************排水運(yùn)行方式************************
void paishuifangshi() //排水方式
{
paishui=0; //打開(kāi)排水
delay(2); //延時(shí)
paishui=1; //關(guān)掉排水
tuoshui=0; TSshanshuo=1; //打開(kāi)脫水
delay(2); //延時(shí)
tuoshui=1; TSshanshuo=1; //打開(kāi)脫水
paishuiled=1;
}
*******************************強(qiáng)弱切換程序************************
void QiangRuoQieHuan(); //強(qiáng)弱切換子程序
switch(qr)
case 1:{qiangxi=0;ruoxi=1;}break; //強(qiáng)洗
case 2:{qiangxi=1;ruoxi=0;}break; //弱洗
case 3:{qr=1;}break; //強(qiáng)弱
}delayms(1);
}
*******************************主函數(shù)************************
void main()
EA=1 //打開(kāi)中斷總允許位
EX0=1; //打開(kāi)外部中斷0允許位
IT0=1; //設(shè)置外部中斷為下降沿觸發(fā)方式
EX1=1; //外部中斷1中斷
IT1=1; //設(shè)置邊沿觸發(fā)方式
TMOD=0x11; //工作在方式三
TH0=(65536-50000)/256; //設(shè)定初值
TL0=(65536-50000)%256; //設(shè)定初值
ET0=1; //T0中斷允許位
TR0=1; //啟動(dòng)定時(shí)器
TH1=(65536-50000)/256; //設(shè)定初值
TL0=(65536-50000)%256; //設(shè)定初值
ET0=1; //T0中斷允許位
TR0=1; //啟動(dòng)定時(shí)器
TH1=(65536-50000)/256; //設(shè)定初值
TL0=(65536-50000)%256; //設(shè)定初值
ET1=1; //T1中斷允許位
T2CON=0x01; //定時(shí)器2工作方式1
num=1;
qr=1; //關(guān)閉強(qiáng)弱
qidong=0; //打開(kāi)啟動(dòng)
while(1)
{
QiangRuoQieHuan(); //強(qiáng)弱切換子程序
switch(num) //程序LED指示
{
case 1:{biaozhun=0;jingji=1;dandu=1;paishuiled=1;}break; //標(biāo)準(zhǔn)
case 2:{biaozhun=1;jingji=0;dandu=1;paishuiled=1;}break; //經(jīng)濟(jì)
case 3:{biaozhun=1;jingji=1;dandu=0;paishuiled=1;}break; //單獨(dú)
case 4:{biaozhun=1;jingji=1;dandu=1;paishuiled=0;}break; //排水
}delayms(1);
if(qidong==1)
{
while(1)
{
switch(num) //程序方式切換
{
case 1:{biaozhunfangshi();}break; //標(biāo)準(zhǔn)方式
case 2:{jingjifangshi();}break; //經(jīng)濟(jì)方式
case 3:{dandufangshi();}break; // 單獨(dú)方式
case 4:{paishuifangshi();}break; //排水方式
}delayms(1); return;
}
}
}
}
*******************************中斷 *********************************
void int0() interrupt 0 //運(yùn)行/暫停
{
qidong++; //啟動(dòng)
if(qidong==2) //如果啟動(dòng)打開(kāi)
{qidong=0;TR1=0;zz=0;fz=0;} //啟動(dòng)打開(kāi)
}
void int0() interrupt 2 //蓋開(kāi)關(guān)
EA=0; //關(guān)閉中斷總允許位
TR0=0; //關(guān)閉定時(shí)器0
TR0=1; //啟動(dòng)定時(shí)器1
zz=0; //打開(kāi)正轉(zhuǎn)
fz=0; //打開(kāi)反轉(zhuǎn)
TR2=0; //關(guān)閉定時(shí)器2
TF2=0; //定時(shí)時(shí)間到,將定時(shí)器溢出標(biāo)志位TF2清零
void time0() interrupt 1 //定時(shí)器中斷0中斷類(lèi)型號(hào)1
{
TH0=(65536-50000)/256; //設(shè)定初值
TL0=(65536-50000)%256; //設(shè)定初值
tt++;
if(QR_key==0) //強(qiáng)弱切換開(kāi)關(guān)
{
delayms(5); //延時(shí)
if(QR_key==0) //如果強(qiáng)弱開(kāi)關(guān)鍵按下
{
qr++; //強(qiáng)弱
}while(!QR_key);
}
if(CX_key==0) //程序選擇鍵
{
delayms(5) //延時(shí)
if(CX_key==0) //如果按下程序鍵
{num++;
if(num==5)num=1;
}
while(!CX_key);
}
*******************************蓋開(kāi)關(guān)************************
if(GKG_key==0) //蓋開(kāi)關(guān)
{
while(!GKG_key)
{TR1=0;zz=0;fz=0;} //關(guān)閉定時(shí)器1 正轉(zhuǎn)、反轉(zhuǎn)打開(kāi)
TR1=1; //打開(kāi)定時(shí)器1
}
if(tt==14) //LED 0.7s 閃爍
{
tt=0;
{
if(XDshanshuo==1) //如果是高電平
{xidi=!xidi;} //不洗滌
if(PXshanshuo==1) //如果是高電平
{piaoxi=!piaoxi;} //不漂洗
if(TSshanshuo==1) //如果是高電平
{tuoshui=!tuoshui;} //不脫水
}
}
}
void time1() interrupt 3 //定時(shí)器中斷1中斷類(lèi)型號(hào)3
{
TH1=(65536-50000)/256; //定初值
TL1=(65536-50000)%256; //定初值
if(tt1==0) //電機(jī)正傳
{
zz=0;
fz=1;
}
if(tt1==120) //6秒后電機(jī)停止
{
zz=1; //電機(jī)停止
fz=1;
}
tt1++; //電機(jī)繼續(xù)
if(tt1==200) //4秒后電機(jī)反轉(zhuǎn)
{
zz=1; //反轉(zhuǎn)
fz=0;
}
if(tt1==320) //6秒后電機(jī)停止
{
zz=1;/ //電機(jī)不轉(zhuǎn)
fz=1;
}
if(tt1==400) //4秒后電機(jī)正傳
{
tt1=0; //電機(jī)正轉(zhuǎn)
}
復(fù)制代碼
作者:
wc86110
時(shí)間:
2019-4-21 02:14
刪除 NO.1 再編譯
作者:
qxdqx
時(shí)間:
2019-4-21 08:20
帶*的地方在前面加//,有的地方?jīng)]加大括號(hào),標(biāo)點(diǎn)符號(hào)一定在英文輸入的時(shí)候加,否則容易出錯(cuò).
作者:
HC6800-ES-V2.0
時(shí)間:
2019-4-21 08:32
錯(cuò)誤類(lèi)型是發(fā)現(xiàn)非法字符,第一行。
這樣問(wèn)題就清楚了:注釋不是你這樣寫(xiě)的,
要么這樣寫(xiě)://注釋?zhuān)@種寫(xiě)法一般只管一行
要么這樣寫(xiě):/*注釋*/,這種寫(xiě)法也以管很多行,只要在/*和*/之間的,都是注釋?zhuān)徽撚卸嗌傩?hr noshade size="2" width="100%" color="#808080">
作者:
喜樂(lè)
時(shí)間:
2019-4-23 13:30
好了嗎
作者:
研A02
時(shí)間:
2019-4-23 16:34
你的花括號(hào){}丟了好幾個(gè),
作者:
wushiye54
時(shí)間:
2019-4-24 20:09
建議好好看書(shū)再寫(xiě)代碼:(1)注釋錯(cuò)誤;
(2)函數(shù)聲明缺少分號(hào);
(3)主函數(shù)居然沒(méi)有“{}”花括號(hào);
(4)排版太亂了
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1