使用时申明extern void DSP28x_usDelay(Uint32 Count);
我看了下汇编DSP2803x_usDelay.asm代码如下:
.def _DSP28x_usDelay
.sect "ramfuncs"
.global __DSP28x_usDelay
_DSP28x_usDelay:
SUB ACC,#1
BF _DSP28x_usDelay,GEQ ;; Loop if ACC >= 0
LRETR
我想问下,使用时DSP28x_usDelay(Uint32 Count)里面的参数是怎么传递进去的?
Eric Ma:
应该是把count的值与__DSP28x_usDelay这个全局变量关联起来。
ERIC
使用时申明extern void DSP28x_usDelay(Uint32 Count);
我看了下汇编DSP2803x_usDelay.asm代码如下:
.def _DSP28x_usDelay
.sect "ramfuncs"
.global __DSP28x_usDelay
_DSP28x_usDelay:
SUB ACC,#1
BF _DSP28x_usDelay,GEQ ;; Loop if ACC >= 0
LRETR
我想问下,使用时DSP28x_usDelay(Uint32 Count)里面的参数是怎么传递进去的?
Mak he:
回复 Eric Ma:
我找了一下,解析有下面的内容,但还是不知道哪里关联起来的?
;//;// The C assembly call from the DELAY_US(time) macro will;// look as follows: ;//;// extern void Delay(long LoopCount); ;//;// MOV AL,#LowLoopCount;// MOV AH,#HighLoopCount;// LCR _Delay;//;// Or as follows (if count is less then 16-bits):;//;// MOV ACC,#LoopCount;// LCR _Delay;//
使用时申明extern void DSP28x_usDelay(Uint32 Count);
我看了下汇编DSP2803x_usDelay.asm代码如下:
.def _DSP28x_usDelay
.sect "ramfuncs"
.global __DSP28x_usDelay
_DSP28x_usDelay:
SUB ACC,#1
BF _DSP28x_usDelay,GEQ ;; Loop if ACC >= 0
LRETR
我想问下,使用时DSP28x_usDelay(Uint32 Count)里面的参数是怎么传递进去的?
mangui zhang:
从汇编代码来看 只能是_DSP28x_usDelay和Count有关系