音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

很奇怪的函數(shù)原型問題

作者:wikiexe 欄目:單片機(jī)
很奇怪的函數(shù)原型問題
在編譯的時(shí)候碰到了一個(gè)很奇怪的“Warning [2058] call of function without prototype”問題,百思不得其解

所以拿出來,請(qǐng)大家指點(diǎn)

程序如下:
BYTE SPI_write(BYTE VALUE)
{
    SSPIF = 0;
    do
    {
        WCOL = 0;
        SSPBUF = VALUE;
    } while( WCOL );

    while( SSPIF == 0 );

    return SSPBUF;
}

BYTE SPI_read()
{
    SPI_write(0x00);
    return SSPBUF;
}

BYTE halSpiReadReg(BYTE addr)
{
    unsigned CHAR VALUE;
    P_CSn=0;
    while(P_SO);
    addr|=READ_SINGLE;
    SPI_write(addr);
    
    VALUE = SPI_read();
         ~~~~~~~~~~~~~~~~~~~~~~~~~  
    P_CSn=1;
    P_SI=0;
    return VALUE;
}

編譯時(shí)提示打波浪線的那句有“Warning [2058] call of function without prototype”警告,但是讓人很納悶的是為什么會(huì)有這個(gè)提示呢?而SPI_write卻沒有這個(gè)提示

2樓: >>參與討論
hotpower
BYTE VALUE;
 
3樓: >>參與討論
yuanjian79
字面理解是函數(shù)沒有原型。
字面理解是函數(shù)沒有原型。把調(diào)用放最后看看;騽t在最前面聲明下調(diào)用原型。
另外,最好給出問題發(fā)生的環(huán)境(至少也得告訴別人用的是什么編譯器啊)。

4樓: >>參與討論
wikiexe
我用的編譯器是mcc18
抱歉,忘說了 :)

5樓: >>參與討論
平常人
樓上的hotpower已經(jīng)告訴你答案了,查一下你的BYTE是什么類型?
問題出在BYTE很可能不是unsigned CHAR類型的,所以SPI_read()不能向變量VALUE賦值。


6樓: >>參與討論
wikiexe
BYTE的定義
是在Generic.h中定義的
typedef unsigned CHAR BYTE;

在最上面的程序中這樣包含了這個(gè)文件:
#include "Generic.h"

而且這兩個(gè)文件放在了同一個(gè)目錄下

7樓: >>參與討論
wikiexe
問題找到了!
SPI_read()的函數(shù)定義由
BYTE SPI_read()改為
BYTE SPI_read(void)就ok了

原來是mcc18編譯器要求比較嚴(yán)格
對(duì)于空參數(shù)也必須以void注明

終于搞定了,好開心 ^_^

謝謝各位了!



8樓: >>參與討論
su_mj000
兩者其實(shí)是等價(jià)的。
MCC18畫蛇添足,反倒給人添麻煩。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
比較PIC16C54/EMC78P156/MDT1005(新版MDT10P05)性能。
16c57\\cf775在什么行業(yè)用的比較多?
請(qǐng)教18F2525數(shù)據(jù)出錯(cuò)的問題
pic16c73定時(shí)器trm2定時(shí)不準(zhǔn)---在線等
單片機(jī)發(fā)的正旋波是怎么回事?????????
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)