MSP430
- 430单片机超过64K Flash访问方法
IAR默认Data Model数据模型为Small。需要改为Large。
- 430硬件CRC使用方法
MSP430x5xx 和 MSP430x6xx 系列都带有硬件CRC计算单元。CRC校验公式为f(x) = x16+ x12+ x5+1。符合CRC-CCITT标准。在标准CRC-CCITT标准中,LSB在前,MSB在后.但是由于在430内部中的其他大部分寄存器都是MSB在前,LSB在后,为了消除这种困惑,430单片机提供了位取反寄存器,用于支持上述2种格式.
程序流程:
- 初始化CRC单元。CRCINIRES设置为0xffff。
- 依次往CRC移位寄存器(CRCDI)输入要校验的数。注意:CRC移位寄存器为低位在前。
- 从CRC运算结果寄存器(CRCINIRES)中读取运算结果。
实例代码:
_U16 CRC_Calculate(_U8 *baseAddress,_U16 length)
{
_U16 i=length;//计算长度
_U16 recode=0;//计算结果
_U8 *address=baseAddress;//计算数首地址
CRCINIRES=0X0000;//初始化CRC单元
for(;i>0;i--)
{
CRCDI_H=*address;
address++;
}
recode = CRCRESR;//读取运算结果
return recode;//返回运算结果
}
- 5438A使用超过4K RAM程序跑飞问题