“线程”中讨论的其它部件:CC1310, CC1000
下午好,
我正在进行一个项目,我必须从使用 CC1000的旧传感器接收数据,并在我的 CC1310启动板上接收和解码这些数据。
旧传感器通过2FSK 发送到433MHz 频段,因此我更改了启动板上的硬件以匹配此频率,我已经测试了此硬件,我知道它可以正常工作。
我的问题如下:
旧传感器发送的数据包使用曼彻斯特 IEEE 802.3进行了完全编码,因此它也对前导码,同步字节和 CRC 进行了编码。
我也被告知旧传感器的波特率也是2400,但使用曼彻斯特 IEEE 802.3时,您必须将波特率设置为4800。
为了使事情变得更加复杂,传感器必须在发送数据包之前将其反转。
我已经知道,CC1310只能对有效负载上的曼彻斯特进行解码,而不能对前导码和同步字节进行解码。 所以,我决定以后对曼彻斯特的软件进行解码,只是尝试接收一条经过编码的信息,看看它是否起作用。
我已经将一个典型的传感器数据包转换为曼彻斯特,找到了同步字,我在智能射频中输入了同步字,并输入了所有其他所需的设置。 下面是一个示例:
传感器信息:AA AA AA AA AA 55 05 B0 2C 0C 17 3F
AA AA AA AA AA AA AA AA =前导码
55 =同步
05 B0 2C 0C 17 =有效负载
3F = CRC
然后,我将此消息转换为二进制,用曼彻斯特 IEEE 802.3对该二进制代码进行编码,并将其转换回十六进制,这就给了我:
A6 66 66 66 66 66 66 66 99 99 AA 99 65 AA A6 5A AA 5A A9 95 A5 55
因此,通过智能射频中的这些信息,我使用了:
99 99 AA 作为同步字
24个同步位
长度配置为11
有效负载中不包括地址检查和后续编号
放入8个前缀字节
4800波特率(我不知道它是否正确)
将 bBitReversal 置于 formatConf 中的0 (我认为它必须是1,因为位是反转的,但1根本没有数据包。)
这些是我收到的一些数据包:

如果我拿95 5a 95 aa A9 aa 9a aa 9a aa 9a a a a a 9a 数据包并以另一种方式进行转换,而不是反转,我就会得到这样的信息:
7C701044004
当我进行反转时,我会得到以下信息:
838FEFBBFFB
这两种方法都毫无意义,因此我的设置显然不正确。
我做了什么错误,和/或要正确接收这些数据包,我需要做些什么?
提前感谢!



