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.

[参考译文] CC3100BOOST:IntSpiGPIOHandler 和 SlDrvRxIrqHandler?

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/567014/cc3100boost-intspigpiohandler-and-sldrvrxirqhandler

器件型号:CC3100BOOST
主题中讨论的其他器件:CC3100

大家好、

我正在尝试将 CC3100移植到另一个微处理器(Atmel Samd21)。 我已经在 Code Composer Studio 上查看了 CC3100的 TI 入门示例。 基本上 、我了解从 cc3100向主机发送数据的过程如下所示。

当数据准备好发送到主机时、CC3100向 IRQ 引脚发送一个信号、主机微控制器触发该引脚、然后进入中断。 读取(spawns)数据。

对于我来说、示例代码中的部分令人困惑;有 IntSpiGPIOHandler 和_SlDrvRxIrqHandler 函数。 这两个都是中断处理程序。 只要我知道有一个中断是来自 IRQ 引脚的外部中断、 此中断将由 SlDrvRxIrqHandler 处理。 IntSpiGPIOHandler 是如何被触发的? 是否有另一个 SPI 中断?  那么、有人能否解释这些函数任务是什么以及它们是如何触发代码的? (未对代码进行注释)

谢谢。

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

    您好、Omar、

    我认为,这个问题可以通过以下帖子加以解决:

    https://e2e.ti.com/support/wireless_connectivity/simplelink_wifi_cc31xx_cc32xx/f/968/t/550866

    区别在于您所指的中断服务例程是 IntSpiGPIOHanlder、而不是 GPIOB_intHandler。 _SlDrvRxIrqHandler 不会被驱动程序直接调用、因为它将连接到不同主机的不同中断源。 它由与 GPIO 关联的 ISR 调用、该 GPIO 充当主机中断线(即 IntSpiGPIOHandler)。 作为移植过程的一部分,您提供了 registerInterruptHandler()函数,该函数使 pIraEventHandler 成为_SlDrvRxIrqHandler 的函数指针。

    此致、

    本·M

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