This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好,
我尝试使用sysctl_setclock() 函数设置F2.8379万D时钟。 我已经引用 了Launchxl-f28.0025万C的一个示例,它也使用相同的函数 sysctl_setclock()。
从hal c
#IF已定义(BSXL8323RS_REVA)||已定义(BSXL8323RH_RevB)||\
已定义(BSXL8353RS_REVA)||已定义(BSXL3PHGAN_REVA)||\
已定义(BSXL8316RT_REVA)
//外部20米Crystal On LaunchXL
//设置PLL控制器和时钟分频器
// CPU时钟频率=100MHz
// PLLSYSCLK = 20MHz (XTAL_OSC)* 30 (IMULT)/(2 (REFDIV)* 3 (ODIV)* 1 (SYSDIV))
sysctl_setclock (sysctl_OSCSRC_XTAL | sysctl_IMULT(30)|
sysctl_REFDIV(2)| sysctl_ODIV(3)|
sysctl_SYSDIV(1)| sysctl_pll_enable |
sysctl_dcc_base_0);
以下是 sysctl.h上Launch XL上f28.0025万C的参数值
//选择DCC模块以检查PLL时钟有效性
//
//配置中DCC模块基本地址的掩码和移位
//
#define sysctl_dcc_base_M (UINT32_t)0x3000万U
#define sysctl_DCC_base_S 28U
#define sysctl_dcc_base_0 0x0万U //!< DCC0模块
#define sysctl_DCC_base_1 0x1000万U //!< DCC1模块
#define sysctl_dcc_base_2 0x2000万U //!< DCC2模块
如果我对 sysctl_setclock ()使用相同的函数,我将收到以下错误和警告。
问题是 当 与控制卡一起使用时,F2.8379万D的sysctl_DCC_base_0值是什么。
下面是我的设置详细信息:
Jagbir,
F2837xD器件没有DCC模块,这就是您从CCS收到错误的原因,您将无法使用此方法进行时钟验证。
您可以使用以下应用说明来确定每个设备 https://www.ti.com/lit/spru566上的IP
我建议在以下位置重新使用F2837x驱动程序LIB中的时钟设置:C:\ti\c2000\C2000Ware_4_01_00\device_support\f2837xd。2000。</s>2837 这具有类似的功能来比较PLL输出频率,但使用CPUTimers与DCC。 由于缺少专用硬件,使用此方法会增加CPU开销。
最佳,
Matthew