找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3226|回復(fù): 9
打印 上一主題 下一主題
收起左側(cè)

這段程序keil報(bào)錯(cuò)怎么修改啊,希望能有前輩指點(diǎn)一下

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主


單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit lcden=P2^2;
  5. sbit lcdrs=P2^0;
  6. sbit lcdrw=P2^1;
  7. sbit sd =P2^3;
  8. sbit bj =P2^7;
  9. uchar code table[]="Humidity:     ";
  10. uchar code table1[]="   Normal    ";
  11. uchar code table2[]="Humidity:     ";
  12. uchar code table3[]="   Deviant    ";

  13. uchar num;                //延時(shí)程序
  14. void delay(uint z)
  15.   {
  16.   uint x,y;
  17.   for(x=z;x>0;x--)
  18.   for(y=110;y>0;y--)
  19.   }

  20. void write_com(uchar com) 、、//寫(xiě)入地址
  21. {
  22.   lcdrs=0;
  23.   P0=com;
  24.   delay(5);
  25.   lcden=1;
  26.   delay(5);
  27.   lcden=0;
  28. }

  29. void write_date(uchar date)   //寫(xiě)入數(shù)據(jù)
  30. {
  31.   lcdrs=1;
  32.   P0=date;
  33.   delay(5);
  34.   lcden=1;
  35.   delay(5);
  36.   lcden=0;
  37. }

  38. void init()   //初始化程序
  39. {
  40.   P0=0xff;
  41.   lcdrw=0;
  42.   lcden=0;
  43.   write_com(0x80);   //地址指針初始化
  44.   write_com(0x38);   //初始化液晶顯示器
  45.   write_com(0x0c);         //控制光標(biāo)
  46.   write_com(0x06);         //寫(xiě)一個(gè)字符后地址加一
  47. }

  48. void main()
  49. {
  50.   init();
  51.   sd=1;
  52.   while(1);
  53.   {
  54.     if(sd==1)  //正常情況顯示
  55.         {
  56.           write_com(0x80+0x00);   //lcd第一排寫(xiě)入地址
  57.           for(num=0;num<15;num++)
  58.           write_date(table[num]);  //lcd第二排寫(xiě)入地址
  59.           for(num=0;num<13;num++)
  60.           write_date(table1[num]);  //lcd第二排寫(xiě)入數(shù)據(jù)
  61.           bj=1;   //不報(bào)警
  62.          }
  63.       
  64.         else if(sd==0)   //不正常顯示情況報(bào)警
  65.         {
  66.           write_com(0x80+0x00);   //lcd第一排寫(xiě)入地址
  67.           for(num=0;num<15;num++)
  68.           write_date(table2[num]);  //lcd第二排寫(xiě)入地址
  69.           for(num=0;num<13;num++)
  70.           write_date(table3[num]);  //lcd第二排寫(xiě)入數(shù)據(jù)
  71.           bj=0;   //報(bào)警
  72.          }
  73.         }
  74. }         
復(fù)制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:203000 發(fā)表于 2018-3-28 08:34 | 只看該作者
19行的代碼:for(y=110;y>0;y--)后面缺;修正后不會(huì)報(bào)錯(cuò)。
回復(fù)

使用道具 舉報(bào)

板凳
ID:85702 發(fā)表于 2018-3-28 08:57 | 只看該作者
void write_com(uchar com) 、、//寫(xiě)入地址  后面加、、啥意思??刪除了試下
回復(fù)

使用道具 舉報(bào)

地板
ID:280682 發(fā)表于 2018-3-28 09:48 | 只看該作者
19行少分號(hào),22行多頓號(hào)
回復(fù)

使用道具 舉報(bào)

5#
ID:290391 發(fā)表于 2018-3-28 09:56 | 只看該作者
七彩繽紛 發(fā)表于 2018-3-28 08:57
void write_com(uchar com) 、、//寫(xiě)入地址  后面加、、啥意思??刪除了試下

嗯嗯,好的我試試
回復(fù)

使用道具 舉報(bào)

6#
ID:282519 發(fā)表于 2018-3-28 09:56 | 只看該作者
樓上的兩位工程師都指出來(lái)了,第19行少;  而第22行多了、、

評(píng)分

參與人數(shù) 1黑幣 +4 收起 理由
yocan + 4 很給力!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

7#
ID:290391 發(fā)表于 2018-3-28 09:57 | 只看該作者
qiangcn 發(fā)表于 2018-3-28 08:34
19行的代碼:for(y=110;y>0;y--)后面缺;修正后不會(huì)報(bào)錯(cuò)。

嗯嗯,我這就試試
回復(fù)

使用道具 舉報(bào)

8#
ID:290391 發(fā)表于 2018-3-28 09:59 | 只看該作者
七彩繽紛 發(fā)表于 2018-3-28 08:57
void write_com(uchar com) 、、//寫(xiě)入地址  后面加、、啥意思??刪除了試下

是輸入法的問(wèn)題,切換到漢語(yǔ)輸入時(shí)、、沒(méi)有顯示,然后我沒(méi)看到就沒(méi)刪掉....真是尷尬
回復(fù)

使用道具 舉報(bào)

9#
ID:298530 發(fā)表于 2018-3-28 20:16 | 只看該作者
上面錯(cuò)誤時(shí)有提示出來(lái)的,例如C(22),表示22行有錯(cuò)誤了。這樣你就回頭看一下就知道錯(cuò)在哪里了
回復(fù)

使用道具 舉報(bào)

10#
ID:290391 發(fā)表于 2018-4-1 11:14 | 只看該作者
hpshhh 發(fā)表于 2018-3-28 20:16
上面錯(cuò)誤時(shí)有提示出來(lái)的,例如C(22),表示22行有錯(cuò)誤了。這樣你就回頭看一下就知道錯(cuò)在哪里了

好的謝謝呢
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表