欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3270|回復: 12
打印 上一主題 下一主題
收起左側

求助,幫忙看一下這個程序為啥不能編譯

  [復制鏈接]
跳轉到指定樓層
樓主
ID:661596 發表于 2019-12-12 15:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
20黑幣
樓主是剛學習單片機的,在書上看到的這個程序,可是不能編譯,求大神幫忙解答一下

#include <reg51.h>                  
#include <intrins.h>
sbit RS=0xb0;
sbit RW=0xb1;
sbit E=0xb2;
void lcd_w_cmd ( unsigned char com);
void lcd_w_dat ( unsigned char dat );
unsigned char lcd_r_start ( );
void lcd_int();
void delay ( unsigned int i ) ;
void delay1 ( );
void main
{
unsigned char lcd[]="SHEN ZHEN";
unsigned char i;
P1=0xff;
lcd_int();
delay(255);
lcd_w_cmd(0x83);
delay(255);
for(i=0;lcd[i]!='\0';i++)
{ lcd_w_dat        (lcd[i]);
delay(200);}
while (1);
}
  viod delay1()
{
_nop_();
_nop_();
_nop_();
}
viod lcd_int()
{
lcd_w_cmd(0x3c);
lcd_w_cmd(0x0e);
lcd_w_cmd(0x01);
lcd_w_cmd(0x03);
lcd_w_cmd(0x80);
}
unsigned char lcd_r_start()
{
unsigned char s;
RW=1;
delay1();
RS=0;
delay1();
E=1;
delay1();
S=P2;
delay1();
E=0;
delay1();
RW=0;
delay1();
return(s);
}
   viod lcd_w_cmd(unsigned char com)
{
unsigned char i;
do{
i=lcd_r_start();
i&0x80;
delay(2);
}while (i!=0);
RW=0;
delay1()
RS=0;
delay1();
E=1;
delay1();
P1=COM;
delay1();
E=0;
delay1();
RW=1;
delay1(255);
}                         viod lcd_w_dat(unsigned char dat)
{
unsigned char i;
do{
i=lcd_r_start();
i&0x80;
delay(2);
}while(!=0);
RW=0;
delay1();
RS=1;
delay1();
EM=1;
delay1();
P1=dat;
delay1();
E=0;
delay1();
RW=1;
delay1(255);
}
viod delay(unsigned int i)
{
unsigned int k;
for(k=0;k<i,;k++);
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:394424 發表于 2019-12-12 15:39 | 只看該作者
你把編譯報的錯誤發出來
回復

使用道具 舉報

板凳
ID:627214 發表于 2019-12-12 16:31 | 只看該作者
你能否發一下你的程序,我看看哪里有問題,你都沒有主函數,我哪里知道有什么問題,并且你也沒有發你的錯誤提示
回復

使用道具 舉報

地板
ID:282850 發表于 2019-12-12 16:51 | 只看該作者
不能編譯!!!!!腦壞了?軟件壞了?出錯了?沒有電了?
回復

使用道具 舉報

5#
ID:662647 發表于 2019-12-12 18:02 | 只看該作者
注意括號之間的分行,也可也重新輸進去試一下
回復

使用道具 舉報

6#
ID:213173 發表于 2019-12-12 19:35 | 只看該作者
自始至終錯誤百出!!!樓主看的是什么書?究竟是書印錯了還是樓主看書不認真?照抄都不會?
回復

使用道具 舉報

7#
ID:396245 發表于 2019-12-12 19:45 | 只看該作者
void main   //最明顯的一處,main后面沒有括號
{
unsigned char lcd[]="SHEN ZHEN";

評分

參與人數 1黑幣 +40 收起 理由
admin + 40 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

8#
ID:523970 發表于 2019-12-12 20:50 | 只看該作者
不能編譯是有可能是軟件問題,像有些步驟沒有對。
回復

使用道具 舉報

9#
ID:278179 發表于 2019-12-12 20:57 | 只看該作者
粗心大意,大小寫不分,引用大寫COM,定義是小寫,void寫成viod還有就是標點符號寫重復的
#include <reg51.h>                  
#include <intrins.h>
sbit RS=0xb0;
sbit RW=0xb1;
sbit E=0xb2;
void lcd_w_cmd ( unsigned char com);
void lcd_w_dat ( unsigned char dat );
unsigned char lcd_r_start ( );
void lcd_int();
void delay( unsigned int i ) ;
void delay1( );

main()
{
unsigned char lcd[]="SHEN ZHEN";
unsigned char i;
P1=0xff;
lcd_int();
delay(255);
lcd_w_cmd(0x83);
delay(255);
for(i=0;lcd[i]!='\0';i++)
{
        lcd_w_dat(lcd[i]);
delay(200);
}

while (1);
}

void delay1()
{
_nop_();
_nop_();
_nop_();
}

void lcd_int()
{
lcd_w_cmd(0x3c);
lcd_w_cmd(0x0e);
lcd_w_cmd(0x01);
lcd_w_cmd(0x03);
lcd_w_cmd(0x80);
}

unsigned char lcd_r_start()
{
unsigned char s;
RW=1;
delay1();
RS=0;
delay1();
E=1;
delay1();
s=P2;
delay1();
E=0;
delay1();
RW=0;
delay1();
return(s);
}

void lcd_w_cmd(unsigned char com)
{
unsigned char i;
do
        {
        i=lcd_r_start();
        i&=0x80;
        delay(2);
        }while (i!=0);
RW=0;
delay1();
RS=0;
delay1();
E=1;
delay1();
P1=com;
delay1();
E=0;
delay1();
RW=1;
delay1();
}                        

void lcd_w_dat(unsigned char dat)
{
unsigned char i;
do{
i=lcd_r_start();
i&=0x80;
delay(2);
}while(i!=0);
RW=0;
delay1();
RS=1;
delay1();
E=1;
delay1();
P1=dat;
delay1();
E=0;
delay1();
RW=1;
delay1();
}

void delay(unsigned int i)
{
unsigned int k;
for(k=0;k<i;k++);
}
回復

使用道具 舉報

10#
ID:627214 發表于 2019-12-14 20:02 | 只看該作者
把編譯的錯誤發一下,謝謝  
回復

使用道具 舉報

11#
ID:662729 發表于 2019-12-15 16:07 | 只看該作者
#include <reg51.h>                  
#include <intrins.h>
sbit RS=0xb0;
sbit RW=0xb1;
sbit E=0xb2;
void lcd_w_cmd ( unsigned char com);
void lcd_w_dat ( unsigned char dat );
unsigned char lcd_r_start ( );
void lcd_int();
void delay ( unsigned int i ) ;
void delay1 ( );
void main()
{
unsigned char lcd[]="SHEN ZHEN";
unsigned char i;
P1=0xff;
lcd_int();
delay(255);
lcd_w_cmd(0x83);
delay(255);
for(i=0;lcd[i]!='\0';i++)
{ lcd_w_dat        (lcd[i]);
delay(200);}
while (1);
}
  void delay1()
{
_nop_();
_nop_();
_nop_();
}
void lcd_int()
{
lcd_w_cmd(0x3c);
lcd_w_cmd(0x0e);
lcd_w_cmd(0x01);
lcd_w_cmd(0x03);
lcd_w_cmd(0x80);
}
unsigned char lcd_r_start()
{
unsigned char s;
RW=1;
delay1();
RS=0;
delay1();
E=1;
delay1();
s=P2;
delay1();
E=0;
delay1();
RW=0;
delay1();
return(s);
}
   void lcd_w_cmd(unsigned char com)
{
unsigned char i;
do{
i=lcd_r_start();
i&=0x80;
delay(2);
}while (i!=0);
RW=0;
delay1();
RS=0;
delay1();
E=1;
delay1();
P1=com;
delay1();
E=0;
delay1();
RW=1;
delay1();
}                         void lcd_w_dat(unsigned char dat)
{
unsigned char i;
do{
i=lcd_r_start();
i&=0x80;
delay(2);
}
while(i!=0);
RW=0;
delay1();
RS=1;
delay1();
E=1;
delay1();
P1=dat;
delay1();
E=0;
delay1();
RW=1;
delay1();
}
void delay(unsigned int i)
{
unsigned int k;
for(k=0;k<i;k++);
}
//錯誤已更改;需特別注意符號,“void"不要寫成”viod",
回復

使用道具 舉報

12#
ID:429598 發表于 2019-12-15 22:32 | 只看該作者
代碼里有很多錯誤,第12行void main之后要有一個()
第26、32、57、77、98行 viod 改為 void,o和i的字母寫反了
第101行多了一個逗號“,”
89行EM未定義,我不知道你這個EM是什么,所以只查到了這里,還有一些錯誤。自己好好好得檢查檢查代碼,拼寫,標點,英文狀態下的標點都不用龍錯了
回復

使用道具 舉報

13#
ID:524818 發表于 2019-12-16 08:46 | 只看該作者
只看到主函數main后面沒有小括號
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表