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

QQ登錄

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

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

error C141: syntax error near 'bit' 有大神幫我改下錯(cuò)嗎?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:401631 發(fā)表于 2018-9-23 18:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
錯(cuò)誤提示:

Rebuild target 'Target 1'
compiling main.c...
main.c(21): error C141: syntax error near 'bit'
Target not created

我想顯示漢字出來(lái),用的是與飛電子YF_K1的開(kāi)發(fā)板。


#define LCD_12864DB P0
#include<reg52.h>
#define uchar unsigned char
#include<intrins.h>
#define lcd.h
#define delay.h
#define delayNop()
sbit LCD_RS=P2^3;
sbit LCD_RW=P2^4;
sbit LCD_EN=P2^5;
sbit LCD_PSB=P3^3;

uchar code dis1[]={"Óë·Çµç×Ó"};
uchar code dis2[]={"wwwyfmcucom"};
uchar code dis3[]={"YF_K1 °¡°¡°¡"};
uchar code dis4[]={"ÊÇÄú×îºÃµÄÑ¡Ôñ"};
void delayNop()

bit led_busy()
{
bit result;
LCD_RS=0;
LCD_RW=1;
LCD_EN=1;
delayNOP();
result=(bit)(P0&0x80);
LCD_EN=0;
return(result);
}

void lcd_wcmd(uchar cmd)
{
while(led_busy());
{
  LCD_RS=0;
LCD_RW=0;
LCD_EN=0;
_nop_();
_nop_();
P0=cmd;
delayNOP();
LCD_EN=0;
}
}
void lcd_wdat(uchar dat)
{
while(lcd_busy());
{
LCD_RS=1;
LCD_RW=0;
LCD_EN=0;
P0=dat;
delayNOP();
LCD_EN=1;
delayNOP();
LCD_EN=0;
}
}
void lcd_init()
{
LCD_PSB=1;
lcd_wcmd(0x34);
delay(5);
lcd_wemd(0x30);
delay(5);
lcd_wcmd(0x0c);
delay(5);
lcd_wcmd(0x01);
delay(5);
}



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

使用道具 舉報(bào)

沙發(fā)
ID:277374 發(fā)表于 2018-9-23 20:51 | 只看該作者
uchar code dis4[]={"êÇÄú×îoÃμÄÑ¡Ôñ"};
void delayNop()


注意了嗎?我提取出來(lái)的最后一行,沒(méi)有“;”這個(gè)符號(hào)。每一行結(jié)束都應(yīng)該有分號(hào)的,加上就行了
回復(fù)

使用道具 舉報(bào)

板凳
ID:388197 發(fā)表于 2018-9-23 21:20 | 只看該作者
編譯報(bào)錯(cuò)是void delayNop()后面少了個(gè)分號(hào)
result = (bit)(P0&0x80)這樣寫(xiě)也不好.
如果P0作為輸入口.
應(yīng)寫(xiě)為
result = P0>>7;
尤其是當(dāng)P0位輸出口時(shí),可能輸出是1,但是接在IO口上的負(fù)載電阻如果小于內(nèi)部上拉電阻,會(huì)造成將整個(gè)IO口電位拉低,這時(shí)候你再去讀者個(gè)IO口,很有可能讀出來(lái)的是0.這問(wèn)題可以通過(guò)編譯,但是一旦影響程序運(yùn)行排查起來(lái)會(huì)比較費(fèi)時(shí).
作為輸出口,建議這樣操作
U8 TEMP;           //建立一個(gè)變量用于緩沖
BIT FLAG;          //標(biāo)志位
TEMP = 0xXX; //TEMP賦值
P0 = TEMP;      //TEMP的值再賦予 P0
/*P0賦值后,當(dāng)需要查詢(xún)P0具體一位的值,只需要在P0再次賦值前,查詢(xún)TEMP 相應(yīng)的位即可*/

FLAG = TEMP>>n ;   (n=0--7)n值取決于你想FLAG等于TEMP的那一位


評(píng)分

參與人數(shù) 1黑幣 +40 收起 理由
admin + 40 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

地板
ID:387733 發(fā)表于 2018-9-23 21:39 | 只看該作者
uchar code dis1[]={"óë·Çμç×ó"};
uchar code dis2[]={"wwwyfmcucom"};
uchar code dis3[]={"YF_K1 °¡°¡°¡"};
uchar code dis4[]={"êÇÄú×îoÃμÄÑ¡Ôñ"};
void delayNop()

最后一句缺少“;”
回復(fù)

使用道具 舉報(bào)

5#
ID:135253 發(fā)表于 2018-9-23 21:42 | 只看該作者
void delayNop()后面加個(gè)分號(hào)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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