找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求助:STC8G.H頭文件增加內(nèi)容后編譯錯誤

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:883818 發(fā)表于 2022-8-18 22:05 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 歡歌 于 2022-8-18 22:19 編輯

STC8G.H頭文件編譯錯誤,截圖見下
C:\Users\jzy\Desktop\STC8G_H.png

ADC_CONTR在STC8G.H頭文件里有定義,
我自己添加了ADC_CONTR的幾個位的名稱,然后編譯就出錯了
sfr         ADC_CONTR   =           0xBC;
sbit        ADC_POWER                =                                                ADC_CONTR^7;
sbit        ADC_START                =                                                ADC_CONTR^6;
sbit        ADC_FLAG                =                                                ADC_CONTR^5;

錯誤顯示
STC8G.H(125): error C146: 'ADC_CONTR': invalid base address
STC8G.H(126): error C146: 'ADC_CONTR': invalid base address
STC8G.H(127): error C146: 'ADC_CONTR': invalid base address
Target not created.
Build Time Elapsed:  00:00:01

請大神幫忙看看是咋回事,謝謝。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:491577 發(fā)表于 2022-8-20 00:07 | 只看該作者
ADC_CONTR不支持位尋址,不是所有寄存器都可以位尋址的,不能夠隨意改。ADC_CONTR只支持8位同時操作,不可以單獨戶操作其中一位。
回復(fù)

使用道具 舉報

板凳
ID:509408 發(fā)表于 2022-8-20 09:20 | 只看該作者
1特殊寄存器地址能被8整除的才能進行位操作,不能被8整除的不可以進行位操作,此錯誤消息表明,為sbit字節(jié)指定的基地址是無效的。sbit的字節(jié)地址必須是低位是0或8的SFR
回復(fù)

使用道具 舉報

地板
ID:1042960 發(fā)表于 2022-8-25 23:03 | 只看該作者
無效地址位。ADC_CONTR寄存器不支持位尋址,不能sbit,只能整體賦值。
回復(fù)

使用道具 舉報

5#
ID:192294 發(fā)表于 2022-9-6 21:18 | 只看該作者
STC32G 是增強C251  內(nèi)核,可方便C51升級,而且所有寄存器均支持位操作,值得嘗試。

評分

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

查看全部評分

回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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