看板Programming
标 题Re: 请问macro如何被C 呼叫?
发信站无名小站 (Sun May 4 16:23:34 2008)
转信站ptt!ctu-reader!ctu-gate!news.nctu!news.ntu!news.ee.ttu!csnews.cs.nctu!
※ 引述《[email protected] (甘愿为你~)》之铭言:
> ※ [本文转录自 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海
1F:推 ast9869:这部分我了解了,现在是想办法用macro...123.110.225.167 05/04 17:31