CC1310是否可以修改CRC的 polynomial 和 initialization
CC1310的默认 Poly = 0x8005,Init = 0xFFFF。 问:是否可以修改 Poly 和 Init ? 怎样修改?
注:在swcu117g - CC13x0, CC26x0 SimpleLink™ Wireless MCU Technical Reference Manual.pdf 的 23.7.5.2(page 1696)中有下面这一段话,似乎是说可以修改Poly和Init,但我再SDK中并没有找到在何处修改。
可以的
参见以下链接
http://dev.ti.com/tirex/content/simplelink_cc13x0_sdk_1_40_00_10/docs/proprietary-rf/proprietary-rf-users-guide/rf-proprietary/packet-format.html#crc-calculation
If necessary, it is possible to configure new CRC settings via the RF setup override list. The following code sets the CRC polynom to 0x1021:
static uint32_t overrides[] = { // ... // Configure new CRC16 polynom HW32_ARRAY_OVERRIDE(0x2004, 1), // The CRC16 polynome: CRC-16-CCITT normal form, 0x1021 is x^16 + x^15 + x^5 + 1 0x10210000, // ... };
The following override programs the init value to 0x4711:
static uint32_t overrides[] = { // ... // Configure new CRC init value 0xC0040051, // The new init value 0x47110000, // ... };
有用SmartRF studio测试,确实可以修改 Poly 和 Init。 还有一点疑问:
哪里有override 所有相关 register 和 parameter 的介绍 ? 例如上面的0x4004 2004寄存器,以及0xC0040051对应的parameter, 我翻遍了所有文档也没有找到
没有这个文档的