TI中文支持网
TI专业的中文技术问题搜集分享网站

如何进入汇编中断程序中的汇编宏单元进行调试?

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Troublemaker:

回复 秋之初:

那个宏是汇编语言写的,后缀也是.asm,不可以进入那个宏调试吗?我在那个宏里修改了一条语句,得不到我要的结果。可是我讲那个修改过的宏在程序里取代那个宏指令之后,运行,发现可以得到我要的那个结果,请问这是怎么回事?应该在宏里修改是可以的,为什么运行不行,非要把那个宏里的程序抄过来代替那条宏指令之后才可以得到我要的结果呢?

谢谢解答!

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Jones Chen:

回复 Troublemaker:

.asm是汇编语言的文件。

建议楼主给我们把例子贴上,尽量简短,不要贴整个大段大段的代码,谢谢!

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Troublemaker:

回复 Jones Chen:

宏:

PWMDRV_LLC_ComplPairDB .macro n

_PWMDRV_LLC_ComplPairDB_Duty:n:   .usect "PWMDRV_LLC_ComplPairDB_Section",2,1,1 ; input terminal for PWM duty percentage_PWMDRV_LLC_ComplPairDB_Period:n:  .usect "PWMDRV_LLC_ComplPairDB_Section",2,1,1 ; input terminal for PWM period value  MOVW DP, #_PWMDRV_LLC_ComplPairDB_Duty:n:    MOVL XAR0, @_PWMDRV_LLC_ComplPairDB_Duty:n:   MOVL XAR1, @_PWMDRV_LLC_ComplPairDB_Period:n: 

  MOVL ACC, *XAR1  SFR  ACC, #14                  ;  MOVW DP, #_EPwm:n:Regs.TBPRD  MOV  @_EPwm:n:Regs.TBPRD, AL     

  MOVL XT, @_EPwm:n:Regs.TBPRD  QMPYL ACC, XT, *XAR0                                SFR  ACC, #8         

  MOVW DP, #_EPwm:n:Regs.CMPA  MOV  @_EPwm:n:Regs.CMPA.half.CMPA, AL         .endm

调用宏的汇编程序:(汇编程序)

.cdecls   C,LIST,"DSP2833x_Device.h".include "PWMDRV_LLC_ComplPairDB.asm" _PWM_ISR:

  .if(INCR_BUILD = 2)

    PWMDRV_LLC_ComplPairDB 1;宏调用   .endif

如果只执行“汇编程序”,得到的结果和将“汇编程序”中的宏调用指令用具体的宏汇编代替后的结果,两者不一致,不知道为什么!!!

请给予解答!谢谢!

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Forrest:

回复 Troublemaker:

楼主这个问题解决没?

macro 和普通的汇编不太一样,CCS编译的时候不支持增量编译,需要全部清空project后重新编译。

这可能是导致“我在那个宏里修改了一条语句,得不到我要的结果。可是我讲那个修改过的宏在程序里取代那个宏指令之后,运行,发现可以得到我要的那个结果”的原因。

楼主也可以看看反汇编,看看是为什么导致。

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Troublemaker:

回复 Forrest:

我的程序是在CCS3.3下编的,目的是在EPWM1A端口产生一个波形,为了便于请教问题,我把程序付出来。因为被程序搞得有些头疼,就改名为caodao文件。

这个程序的目的是通过EPWM1A口产生一个方波信号。

在中断程序HVLLC_DPL_ISR.asm程序中用到了一个PWMDRV_LLC_ComplpairDB.asm 宏文件。我经过实验发现,将这个宏文件放入到程序include文件夹中和放到SRC文件夹中,编译运行后的结果是不一样的。请问这是什么原因呢?

 

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Troublemaker:

回复 Troublemaker:

补充下,那个程序我忘看改个句子了,程序重新 粘贴。

你说那个增量编译不行,其实是可以的。

可以通过修改include里的宏文件来编译运行,得到不同的结果。不知道你说的增量编译是不是CCS5.2里的“小锤子”。

顺便问下,你说的反汇编窗口,就是在汇编程序里能显示指针等信息的窗口,怎么设置出来,以前知道,现在忘了,谢谢!

如何进入汇编中断程序中的汇编宏单元进行调试?

可以在c语言跳转进入的汇编中断程序中进行调试,可以单步执行一条汇编宏指令,但是想进入宏汇编程序中 进行调试,请问怎么办?

谢谢

Troublemaker:

回复 Troublemaker:

经过调试,你说的macro修改后,需要清空project的说法是对的。谢谢 !

赞(0)
未经允许不得转载:TI中文支持网 » 如何进入汇编中断程序中的汇编宏单元进行调试?
分享到: 更多 (0)