虽然这里是MSP430的版块,但是对于TI公司同样低功耗的芯片TMS320C5509A(DSP)也具有低功耗模式(IDLE)可以通过关闭外设等降低系统功耗,但是本人在调试过程中没有达到理想效果,故在此求教各位大佬。
请教各位大神,怎么才能将C5509A的功耗降到芯片手册上的水平呢?请求各路大神给一些参考,如果有例程就更好了,先谢过各位大神了。下面附上本人写的关于DSP休眠的一个程序的主要部分,包含CSL库等头文件就不加了。但是测试发现没有达到理想的效果,而且发现同样的程序,在几块一样的板子上跑功耗还不一样,如果不是程序有问题就只能怀疑DSP芯片有差异了。编译环境使用的是CCS6.1,外设的编程调用了CSL库。系统时钟使用的24M有源晶振,经PLL倍频到192M给CPU和外设,内核电压1.6V,IO电压3.3V。也想麻烦大家帮忙看看什么地方存在问题,和使用有源晶振是否有关系。
ioport unsigned int *Usbdpll= (unsigned int *)0x1E00;//由于在CSL库中没有找到这些寄存器的映射,所以在这里自己定义了
ioport unsigned int *Usbpllsel= (unsigned int *)0x1E80;
ioport unsigned int *Usbapll= (unsigned int *)0x1F00;
ioport unsigned int *Usbidlectl= (unsigned int *)0x7000;
ioport unsigned int *Usbctl= (unsigned int *)0x67FC;
ioport unsigned int *Ebsr= (unsigned int *)0x6c00;
附上一些相关的参考资料,大家有需要可以下载。
其中C55.pdf为外设介绍手册,里面有关于C5509a IDLE的详细介绍。在第8节(18页)
Disabling the Internal Oscillator on the.pdf给出了关闭片上振荡器的介绍,理论上可以将C5509A功耗降低到最低。
TMS320C55x Chip Support Library API Reference Guide.pdf为CSL库函数的使用参考,当时也是看了这个文件知道的哪些外设有IDLE功能,又分别去对应外设的详细参考资料中确认的。