2011-10-20 50 views
3

當我編譯我的代碼時,我收到一個未知的操作碼'.pword'錯誤。我的項目中唯一具有.pword的代碼行爲:未知操作碼'.pword'

do { 
    __asm__ volatile (" .pword 0xDA4000"); 
    Nop(); 
} while(0) 

註釋行不做任何事情。

我搜索了.pword 0xDA4000,知道它是由IDE MPLab for PICs支持的。

在我的情況下,我使用的是用於STMf32f2xx芯片的CrossStudio。

我有更新的CrossStudio附帶的binutils 2.21和gcc 4.6.0

我最初曾與編譯無名的結構和聯合,但加入-fms-extensions到固定它額外的C編譯器選項的問題。

我不知道我是否需要做類似的操作來修復操作碼'.pword'錯誤。

難道只是.pword只是一個PIC操作碼嗎?

+0

當你碰上進一步PIC具體問題Electronics.Stackexchange.com有相當多的問題,不少專家。如果我們能夠得到幫助,請放在一邊。 – Kortuk

回答

2

在MPLAB ASM30彙編程序中,.pword在代碼存儲器中聲明24位常量。它也可以是任何MPLAB ASM30指令。

檢查:MPLAB ASM30 assembler

+0

好吧,這聽起來似乎是.pword是MPLAB彙編程序特有的唯一操作碼。 – microb

+0

@microb:不,.pword'不是操作碼。 「.pword」(它是一個常量類型)的含義是代碼存儲器中的24位常量聲明,該常量可以是操作碼。 –

+0

哦,像一個int浮字等 – microb