Re: 請問macro如何被C 呼叫?

看板Programming作者時間17年前 (2008/05/04 17:01), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/5 (看更多)
※ 引述《ast9869.bbs@ptt.cc (甘願為妳~)》之銘言: > ※ [本文轉錄自 ASM 看板] > 作者: ast9869 (甘願為妳~) 看板: ASM > 標題: 請問macro如何被C 呼叫? > 時間: Sat May 3 17:35:14 2008 > =================================================================== > //C51 的 code > //ice_func.c > #pragma asm > getXRAM MACRO _Address, _Shift, _Data > mov DPTR, #_Address > movx _Data ,@DPTR+_Shift > ENDM > #pragma endasm > =================================================================== > //ice_func.h > BYTE d1, d2; > extern getXRAM(_Address, _Shift, _Data); 小弟雖沒寫過asm 不過在這裡的extern 必須是要一個function 而不能是個macro 如果你想要用的話 我想你應該可以在ice_func.c中 把那個macro 包成function 才能用 > #define Download64(pBuf) \ > { \ > getXRAM(pBuf, 0, d1);\ > getXRAM(pBuf, 1, d2);\ > DownTwoByte(0x02, d1, d2); \ > } > =================================================================== > 小弟不才… > 這樣好像不能用耶?請問各位先進要如何設定才能調用getXRAM呢? > ※ 編輯: ast9869 來自: 123.110.225.167 (05/03 17:49) -- 我的程式設計網誌 http://blog.yam.com/swwuyam -- 夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子 之器不得已而用之恬淡為上勝而不美而美之者是樂殺人夫樂殺人者則不可得志於天下 矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以 喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫 之令而自均始制有名名亦既有夫亦將知止知止可以不殆譬道之在天 61.57.152.222

05/04 17:31, , 1F
這部分我了解了,現在是想辦法用macro...
05/04 17:31, 1F
文章代碼(AID): #187NjE00 (Programming)
文章代碼(AID): #187NjE00 (Programming)