本帖最后由 xyz549040622 于 2023-4-13 20:21 编辑
任务 1 的目的是使用 CRC 代码对 MSPM0 LaunchPad 进行编程,并验证 CRC 模块是否正常工作。 实际上,无法直观明确地确定 CRC 是否正常工作,因此,可以将得到的校验和与在线 CRC 计算器得出的结果进行比较。 以下代码示例中提供了预期输出,并将 CRC 输出与之进行了比较。 对于该任务,无需修改代码示例。
1.将 crc_calculate_checksum 从 TI Resource Explorer 导入 CCS。
#include "ti_msp_dl_config.h"
#define CRC_NUM_OF_WORDS (3)
#define CRC_EXPECTED_RESULT (0x91A5D23B)
uint32_t gData32[CRC_NUM_OF_WORDS] = {0x3B4A5812, 0x0C74FECA, 0x0000842F};
const uint32_t gCrcSeed = CRC_SEED;
int main(void)
{
volatile uint32_t crcChecksum;
volatile bool crcChecksumMatch __attribute__((unused));
SYSCFG_DL_init();
crcChecksum =
DL_CRC_calculateBlock32(CRC, gCrcSeed, &gData32[0], CRC_NUM_OF_WORDS);
if (CRC_EXPECTED_RESULT == crcChecksum) {
crcChecksumMatch = true;
} else {
crcChecksumMatch = false;
}
/* Stop the debugger to verify crcChecksumMatch == true */
__BKPT(0);
while (1) {
__WFI();
}
}
此程序包含以下几个步骤:
|