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

QQ登錄

只需一步,快速開始

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

對(duì)不起我我我真的不知道為什么溫控2.0.C(47): error C141: syntax error near ';'

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:260413 發(fā)表于 2017-12-19 20:24 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include<reg52.h>
#include<intrins.h>   
#define  uint unsigned int;   
#define  uchar unsigned char;
uchar dat,i,cmd,temp,num;
uint AD_Value;
uint x,y,z;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit wela=P2^6;
sbit dula=P2^7;
sbit DOUT = P3 ^ 7;  
sbit CLK  = P3 ^ 6;  
sbit DIN  = P3 ^ 4;   
sbit CS   = P3 ^ 5;   
void delay(uint);
void SPI_Write();
uint SP_Read()  ;
uint Read_AD_Data();
void main()
{ while(1)
    {
SP_Read();
SPI_Write(dat);
Read_AD_Data(cmd);
    temp=0xfe;
    P1=temp;
    dula=1;
P0=table[AD_Value];
dula=0;
wela=1;
P0=0xc0;
wela=0;
num=1;
delay(10);
temp=_crol_(temp,1);
P1=temp;
delay(100);
   
}
}

void delay(uint z)
{  uint x,y;
   for(x=z;x>0;x--){
   for(y=110;y>0;y--){};
   };
}  
void SPI_Write(uchar dat)
{
    uchar i;
    CLK = 0;
    for(i=0; i<8; i++)
    {
        DIN = dat >> 7;     
        dat <<= 1;
        CLK = 0;            
        CLK = 1;
    }
}
uint SP_Read(void)
{
    uint i, dat = 0;
    CLK = 0;
    for(i = 0; i < 12; i++)     
    {
        dat <<= 1;
        CLK = 1;
        CLK = 0;
        dat |= DOUT;
    }
    return dat;
}
uint Read_AD_Data(uchar cmd)
{
    CLK = 0;
    CS  = 0;
    SPI_Write(cmd);
    for(i = 6; i > 0; i--);   
    CLK = 1;      
    _nop_();
    _nop_();
    CLK = 0;
    _nop_();
    _nop_();
    AD_Value = SPI_Read();
    CS = 1;
    return AD_Value;   
}


耽誤各位時(shí)間了真的抱歉,我就是想用xpt2046做一個(gè)簡(jiǎn)單的溫度測(cè)試裝置....讀了芯片資料,看了時(shí)序圖,寫了這個(gè)東西....但是
Build target 'Target 1'
compiling 溫控2.0.c...
溫控2.0.C(19): error C141: syntax error near ';'
溫控2.0.C(47): error C141: syntax error near ';'
溫控2.0.C(53): error C141: syntax error near ';'
溫控2.0.C(83): error C141: syntax error near ';'
Target not created

可以幫我看看哪兒有問題嗎。。。main函數(shù)先不管也行,那個(gè)ad操作有問題嗎QAQ
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:260413 發(fā)表于 2017-12-19 20:44 | 只看該作者
我改了一下....可還是錯(cuò)的void main() {        while(1)     {         SP_Read();         Read_AD_Data(0xD4);     temp=0xfe;     P1=temp;     dula=1;         P0=table[AD_Value];         dula=0;         wela=1;         P0=0xc0;         wela=0;         num=1;         delay(10);         temp=_crol_(temp,1);         P1=temp;         delay(100);                             } }
回復(fù)

使用道具 舉報(bào)

板凳
ID:260413 發(fā)表于 2017-12-19 20:45 | 只看該作者
大佬可以考慮留下支付寶我交學(xué)費(fèi)QAQ
回復(fù)

使用道具 舉報(bào)

地板
ID:47286 發(fā)表于 2017-12-19 20:45 | 只看該作者
你別扔上來讓我們找啊 你直接雙擊 "溫控2.0.C(83): error C141: syntax error near ';'" 會(huì)直接到出錯(cuò)的位置 自己看啊 少寫了";"
回復(fù)

使用道具 舉報(bào)

5#
ID:260413 發(fā)表于 2017-12-19 23:01 | 只看該作者
dzbj 發(fā)表于 2017-12-19 20:45
你別扔上來讓我們找啊 你直接雙擊 "溫控2.0.C(83): error C141: syntax error near ';'" 會(huì)直接到出錯(cuò)的位 ...

我雙擊了....但是這個(gè)意思不是句法錯(cuò)誤嗎?我沒有漏打;....
回復(fù)

使用道具 舉報(bào)

6#
ID:213173 發(fā)表于 2017-12-20 07:04 | 只看該作者
錯(cuò)誤如下:
#define  uint unsigned int; #define  uchar unsigned char;多了冒號(hào)。
void SPI_Write();uint Read_AD_Data();括號(hào)內(nèi)少了參數(shù)數(shù)據(jù)類型聲明。
AD_Value = SPI_Read();與聲明的函數(shù)名稱不一致。
回復(fù)

使用道具 舉報(bào)

7#
ID:213173 發(fā)表于 2017-12-20 07:28 | 只看該作者
這是改后的程序,編譯可以通過。
#include<reg52.h>
#include<intrins.h>   
#define  uint unsigned int//;   
#define  uchar unsigned char//;
uchar dat,i,cmd,temp,num;
uint AD_Value;
uint x,y,z;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit wela=P2^6;
sbit dula=P2^7;
sbit DOUT = P3 ^ 7;  
sbit CLK  = P3 ^ 6;  
sbit DIN  = P3 ^ 4;   
sbit CS   = P3 ^ 5;   
void delay(uint);
void SPI_Write(uchar);
uint SPI_Read();
uint Read_AD_Data(uchar);

void main()
{
        while(1)
        {
                SPI_Read();
                SPI_Write(dat);
                Read_AD_Data(cmd);
                temp=0xfe;
                P1=temp;
                dula=1;
                P0=table[AD_Value];
                dula=0;
                wela=1;
                P0=0xc0;
                wela=0;
                num=1;
                delay(10);
                temp=_crol_(temp,1);
                P1=temp;
                delay(100);        
        }
}

void delay(uint z)
{  
    uint x,y;
    for(x=z;x>0;x--)
        for(y=110;y>0;y--);
}  
void SPI_Write(uchar dat)
{
    uchar i;
    CLK = 0;
    for(i=0; i<8; i++)
    {
        DIN = dat >> 7;     
        dat <<= 1;
        CLK = 0;            
        CLK = 1;
    }
}
uint SPI_Read()
{
    uint i, dat = 0;
    CLK = 0;
    for(i = 0; i < 12; i++)     
    {
        dat <<= 1;
        CLK = 1;
        CLK = 0;
        dat |= DOUT;
    }
    return dat;
}
uint Read_AD_Data(uchar cmd)
{
    CLK = 0;
    CS  = 0;
    SPI_Write(cmd);
    for(i = 6; i > 0; i--);   
    CLK = 1;      
    _nop_();
    _nop_();
    CLK = 0;
    _nop_();
    _nop_();
    AD_Value = SPI_Read();
    CS = 1;
    return AD_Value;   
}
回復(fù)

使用道具 舉報(bào)

8#
ID:164602 發(fā)表于 2017-12-20 08:01 | 只看該作者
你的程序,最大的錯(cuò)誤在3行、4行:不能有分號(hào)。
20行:沒有行參
22行:沒有行參

這些都改好了,還有三個(gè)警告,自己看看吧。
回復(fù)

使用道具 舉報(bào)

9#
ID:231046 發(fā)表于 2017-12-20 08:27 | 只看該作者
看看定位到錯(cuò)誤的附近這幾行也看看那里漏:
回復(fù)

使用道具 舉報(bào)

10#
ID:264113 發(fā)表于 2017-12-20 10:17 來自觸屏版 | 只看該作者
#define后面不用;啊
回復(fù)

使用道具 舉報(bào)

11#
ID:260413 發(fā)表于 2017-12-21 14:53 來自觸屏版 | 只看該作者
沐林楓 發(fā)表于 2017-12-20 10:17
#define后面不用;啊

哇真的!謝謝大佬。。
回復(fù)

使用道具 舉報(bào)

12#
ID:260413 發(fā)表于 2017-12-21 14:54 來自觸屏版 | 只看該作者
wulin 發(fā)表于 2017-12-20 07:28
這是改后的程序,編譯可以通過。
#include
#include   

謝謝!真的w
回復(fù)

使用道具 舉報(bào)

13#
ID:268713 發(fā)表于 2018-1-3 22:38 | 只看該作者
大佬,看看你原理圖
回復(fù)

使用道具 舉報(bào)

14#
ID:231046 發(fā)表于 2018-1-4 09:20 | 只看該作者
不是一古腦子看出來就編譯呀,寫一會(huì)兒先編譯通過 再寫
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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