Other Parts Discussed in Thread: C2000WARE
问题一:ADC Clock
官方规格书TMS320F2803x Piccolo Technical Reference Manual第510页给出不同ADC Clock采样时间的计算,目前对ADC Clock有疑问
当使用内部10MHZ晶振的时候,经过配置则 SYSCLKOUT为60MHZ,并且SysCtrlRegs.LOSPCP.all = 0x0002;//Low speed clock = SYSCLKOUT/4 (reset default)
故Low speed clock =15MHZ,请问这个时候的ADC Clock是60M还是15M?
问题二:ACQPS
此外根据官方勘误手册里面提到,AD采样的时候第一个通道采集数据可能不准确,解决方法是一:ACQPS不设置为6或者7 二:AD时钟30MHZ一下的 For 30-MHz operation and below, this is fixed completely by writing a 1 to the ADCNONOVERLAP and CLKDIV2EN bits in the ADCTRL2 register. This will give a 30-MHz ADC clock when the CPU clock = 60 MHz, and will only allow the sampling of ADC channels when the ADC is finished with any pending conversion.
这条英文是不是针对ACQPS 设置为6或者7 的时候?其他ACQPS是不是就没上述错误
问题三:AdcOffsetSelfCal()
AD采取内部基准,并且CMD文件配置为f28035.cmd即程序文件是在flash存储,但程序会卡在AdcOffsetSelfCal()处,这个问题以前在使用TMS320F2807也遇到过,但没解决掉,故旧的问题重新提出来
AdcOffsetSelfCal()次函数使用到了ADCINT1和ADCINT2 如果不使用 PieVectTable.ADCINT1 = &adc1_isr;PieVectTable.ADCINT2 = &adc2_isr; 这样的语句是否对AD校准结果有影响?如果没这两条语句的话因为已经开了中断是否对中断有影响?
问题四:CMD文件配置为f28034.cmd,但随着代码增多提示flash分配失败,故加大flash,对F28035而言FLASH为64K但分了8个扇区,请问这个时候不同扇区组合是否有地址顺序要求,不同的地址顺序是否对程序有影响?
FLASHH : origin = 0x3E8000, length = 0x002000 /* on-chip FLASH */
FLASHG : origin = 0x3EA000, length = 0x002000 /* on-chip FLASH */
FLASHF : origin = 0x3EC000, length = 0x002000 /* on-chip FLASH */
FLASHE : origin = 0x3EE000, length = 0x002000 /* on-chip FLASH */
FLASHD : origin = 0x3F0000, length = 0x002000 /* on-chip FLASH */
FLASHC : origin = 0x3F2000, length = 0x002000 /* on-chip FLASH */
FLASHA : origin = 0x3F6000, length = 0x001F80 /* on-chip FLASH */
如上则 .text : >> FLASHC | FLASHA | FLASHD PAGE = 0 这种配置对不?
谢谢!F28034.TXT