2014-03-04 22 views
2

我已經通過CCITT和TI關於msp430的文檔。是否可以使用任何內置函數爲MSP430F5438A計算CRC?或者我必須爲每次採集的數據計算CRC。使用內置函數計算crc爲msp430f5438a的方法

+0

你見過這個線程:它可以實現如下? http://e2e.ti.com/support/microcontrollers/msp430/f/166/t/19030.aspx – bblincoe

回答

0

可以使用軟件實現代替在MSP430F5438A上使用硬件外設。

unsigned short crc16(volatile unsigned char *sbuf,unsigned char len){ 
    unsigned short crc=0xFFFF; 

    while(len){ 
     crc=(unsigned char)(crc >> 8) | (crc << 8); 
     crc^=(unsigned char) *sbuf; 
     crc^=(unsigned char)(crc & 0xff) >> 4; 
     crc^=(crc << 8) << 4; 
     crc^=((crc & 0xff) << 4) << 1; 
     len--; 
     sbuf++; 
    } 
    return crc; 
}//crc16() 

斯 - 邁克爾·格羅斯的代碼禮貌@ e2e.ti.com(http://e2e.ti.com/support/microcontrollers/msp430/f/166/t/19030.aspx