我是从Code Composer Studio V5.4 的 welcome to ccs 中直接导入的例程 HVLLC
其中在HVLLC-Main.c文件中Line 154
extern volatile long *PWMDRV_LLC_ComplPairDB_Duty1; // 我认为是定义的外部指针变量,请问它的原体定义在什么地方?
其中在HVLLC-Main.c文件中Line 486
PWMDRV_LLC_ComplPairDB_Duty1 = &Duty1; //我认为是给此指针付值。但问题是我找不到此指针在何时有用到。我用搜索
功能在整个工作空间也就搜索到此两处。请帮忙解答,谢谢。
Jun Zhang10:
PWMDRV_LLC_ComplPairDB_Duty1 在PWMDRV_LLC_ComplPairDB.asm 中,见代码
_PWMDRV_LLC_ComplPairDB_Duty:n: .usect "PWMDRV_LLC_ComplPairDB_Section",2,1,1 ; input terminal for PWM duty percentage
初始化时实例化n为1。
“ PWMDRV_LLC_ComplPairDB_Duty1 = &Duty1; //我认为是给此指针付值。但问题是我找不到此指针在何时有用到。我用搜索
功能在整个工作空间也就搜索到此两处。请帮忙解答,谢谢。“
这个指针变量 PWMDRV_LLC_ComplPairDB_Duty1在上面提到的汇编代码里面会被用来计算更新PWM的比较值。指针变量指向Duty1,实际运算时就是Duty1的值。这样写的目的:因为汇编代码是库,实际变量Duty1在其他地方定义,模块化编程易于代码复用。