This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM3352:BeagleBone Green Wireless 和 CC1101

Guru**** 2609925 points
Other Parts Discussed in Thread: CC1101, AM3352, AM3358

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/580435/am3352-beaglebone-green-wireless-and-cc1101

器件型号:AM3352
主题中讨论的其他器件:CC1101AM3358

大家好、团队、

但愿你一切顺利。

是否有可与 AM335x 上的 CC1101轻松兼容的驱动程序?

客户 的研究表明、用户空间 SPI 使用将被内核进程抢占并延迟其使用。

他们 已经开始查看 PRU、但希望有一种方法来加快开发速度。

有什么建议吗?

问题:

CC1101通过 SPI 进行响应、但数据不正确。 让 CC1101与竞争对手的 MCU 合作 多年。

AM335是一种全新的器件、开发环境也是如此。 电路板上的用户空间代码似乎不适用于以下实现:

  struct SPI_IOC_transfer [3];          //传输结构

  //发送 SPI 消息(上述所有字段,包括缓冲区)

  int status = ioctl (fd、SPI_IOC_MESSAGE (3)、&transfer);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    有关 CC1101支持、请在低功耗射频论坛上咨询: e2e.ti.com/.../155
    顺便说一下、BeagleBone Green Wireless 是第三方电路板、在任何 TI 发布的 SDK 中都不受支持。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、团队、
    但愿你一切顺利。 有关 AM335x 和 CC1101应用的客户问题的任何反馈。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请参阅我之前的帖子。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    从 Randhir 的帖子中可以看到、问题似乎出在 AM3352方面。 Randhir:需要更多详细信息才能了解正在发生的情况。

    此论坛支持 BTW、CC1101: e2e.ti.com/.../156
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    成功! 问题来源仍然未知。

    CC1101从未出现过问题。 "spidev1.0"在我读取时工作不正常。 通信已转移到 spidev2.0和 spidev2.1、代码按编写的方式工作。


    spidev1.0问题的进一步症状:

    可以使用 ioctl 命令将数据写入 CC1101并进行读取。 CC1101更改的寄存器和器件可在433MHz 下传输正确的数据。 在示波器上读取和确认寄存器。 SCLK 和 MOSI 以及 MISO 均正常工作。

    唯一不匹配的是在 ioctl()函数之后的 AM3358上的接收缓冲区。

    ioctl (fd、SPI_IOC_MESSAGE (3)、传输(transfer));

    分配给 transfer[0].rx_buf 的数组始终会导致最低有效半字节"加倍"。 返回的数据可以是一个数据为"0x2A"的字节、但如果为"0xCC"、则缓冲区中记录的数据。 如果在返回数据的第一个半字节后双倍记录返回的数据、则看起来接收缓冲区是接收缓冲区。 每一口的问题都是一样的。 示例:0x15 = 0x33; 0x01 = 0x03;

    如果有人知道此问题的根源、请回复。 如果可能、我想使用该端口。