主题: controlSUITE中讨论的其他部件
工具/软件:Code Composer Studio
我已经调整了2个示例程序,以构成我的代码项目的基础:
1.我已将setup_m3和UART_ECHO_m3合并为M3代码,它根据我的新 set_pinout f28m35x.c &.h文件设置GPIO,此M3主程序还指示运行c28内核。
2.我已调整 CPU_TIMER_c28以运行计时器中断,以便Timer0每秒触发2.16万 时间,我已在外部LED闪烁的情况下进行了测试
接下来我要做的是触发一对(理想情况下)并发ADC转换,一个在ADC1上,另一个在ADC2上,每秒2.16万 次数。 每个通道的结果需要进入滚动结果缓冲区(压缩为每个通道3个8k共享RAM块)。 我认为SOC将在timer0_isr中触发,然后EOC ISR将获取每个读数,压缩并存储到缓冲RAM中。
还有8个其他ADC通道需要不经常读取,可能每秒读取一次,因此这些通道需要在每秒2个2.16万 采样之间交叉存取,因为我只有2个ADC通道。 在这里,我认为timer0_isr将运行一个计数器,它会触发不常发生的SOC,如果这些SOC是在每秒主2.16万 样本之后编码的。
当c28的时钟频率为150 MHz时,SDC时钟(ASYSCLK)可以运行的最大频率为37.5 MHz,而这些是我选择的时钟编号。 ACQPS为25的ADC周期需要大约1 us,因此两个采样之间有足够的时间(46.3 us at 2.16万 Hz)来采集更多的采样,但我希望主要的2.16万 Hz采样是在其他采样的同时进行的第一个采样。
另一个问题是有关通道使用的问题;在CPU的RM中,(spru22h.pdf) para 10.3 .3.3 (p861)表示"ADCINA0与VREFHI共享,因此在使用时不能用作可变输入源
外部参考电压模式。"这是否意味着,如果使用外部Vref,我根本不能使用ADCINA0?
感谢您的任何意见和建议等