主题中讨论的其他器件:MSPDRIVERLIB
工具/软件:Code Composer Studio
当我使用附加的代码设置时钟时、我获得以下输出(如预期的那样)。
正在配置时钟...
正在验证时钟...
MCLK_Frequency:8000000
SMCLK_Frequency:8000000
如果我使用注释"CS_initClockSignal"行而不是其后面的行、我将获得以下输出。
正在配置时钟...
无法识别地址(0x4000)处 CIO 缓冲器中的无效 CIO 命令(24)。 请检查器件和程序存储器映射。
无法识别地址(0x4000)处 CIO 缓冲器中的无效 CIO 命令(24)。 请检查器件和程序存储器映射。
无法识别地址(0x4000)处 CIO 缓冲器中的无效 CIO 命令(24)。 请检查器件和程序存储器映射。
我希望获得以下输出。
正在配置时钟...
正在验证时钟...
MCLK_Frequency:16000000
SMCLK_Frequency:8000000
当我在不同的程序中运行代码时、代码工作正常、但在该程序中无法正常工作。 请提供任何帮助。
#include
include "driverlib.h"
#include "gpio.h"
#include "stdio.h"
#include "string.h"
int main (void)
{
WDT_A_HOLD (WDT_A_base); //停止看门狗计时器
//配置和验证时钟。
//******** 由于 MCLK 的某种原因,无法使用 CS_clock_divider _1 -在另一个程序中工作,尽管*****
printf ("配置时钟... \n");
CS_setDCOFreq (CS_DCORSEL_1、CS_DCOFSEL_4); // 16MHz
CS_initClockSignal (CS_SMCLK、CS_DCOCLK_select、CS_Clock_divider); // 8MHz
// CS_initClockSignal (CS_MCLK、CS_DCOCLK_select、CS_clock_divider); // 16MHz
CS_initClockSignal (CS_MCLK、CS_DCOCLK_select、CS_Clock_divider); // 8MHz
CS_TurnOnSMCLK();
printf ("检验时钟... \n");
uint32_t MCLK_Frequency;
uint32_t SMCLK_Frequency;
MCLK_Frequency = CS_getMCLK ();
SMCLK_Frequency = CS_getSMCLK ();
printf ("MCLK_Frequency:%ld \n"、MCLK_Frequency);
printf ("SMCLK_Frequency:%ld \n"、SMCLK_Frequency);
while (1){;}
}
