主题中讨论的其他器件:CC3220SF
您好!
我正在使用 CC3220SF 板和 IR 传感器。 我已经通过 GPIO 引脚将传感器连接到电路板、我正在尝试读取传感器输出的值。 传感器的 LED 将会亮起或熄灭、具体取决于其方向上的任何障碍物、我希望看到该输出。 我已经浏览过 GPIO 功能、我认为使用的最佳功能是 GPIO_READ。
如果我做得对、请告诉我!
谢谢
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.
您好!
我正在使用 CC3220SF 板和 IR 传感器。 我已经通过 GPIO 引脚将传感器连接到电路板、我正在尝试读取传感器输出的值。 传感器的 LED 将会亮起或熄灭、具体取决于其方向上的任何障碍物、我希望看到该输出。 我已经浏览过 GPIO 功能、我认为使用的最佳功能是 GPIO_READ。
如果我做得对、请告诉我!
谢谢
请查看 GPIO API :http://dev.ti.com/tirex/content/simplelink_cc32xx_sdk_3_30_00_04/docs/tidrivers/doxygen/html/_g_p_i_o_8h.html 和 
但是:如果您使用的是具有逻辑'1'/'0'输出的 IR 传感器、那么使用中断来警告 MCU 发生了事件是否更好。 请参阅 http://dev.ti.com/tirex/explore/node?node=AETkzQjy1ybfsOe8hghlYw__fc2e6sr__LATEST)
在中断示例中、它们具有一个中断功能、当按下按钮时、该功能会点亮 LED。 对于我的实现方案、我想打开 LED 并向 UART 输出文本。
它们具有:
/* === gpioButtonFxn0 === * CONFIG_GPIO_button_0上 GPIO 中断的回调函数。 */ void gpioButtonFxn0 (uint_least8_t index) { /*清除 GPIO 中断并切换 LED */ GPIO_TOGGLE (CONFIG_GPIO_LED_0); }
我是否会读取 GPIO 而不是我的中断、因为我希望在调用中断后读取数据? 我对如何为传感器使用中断感到困惑。
此外、我希望持续读取 GPIO 值并输出到 UART。 如所示、只要前面有东西、LED 就会关闭或打开。 现在、当我运行代码一次时、它就会起作用、如果我想要另一个值(障碍物或障碍物)、我必须重置电路板。 我只是想知道我如何能够持续地做到这一点。
谢谢!
这是一个具有二进制输出的红外传感器、对吧? 然后、如果您收到中断、则您知道输出为"1"、但可以使用 GPIO_READ 进行确认。 如果您在两个边沿上都有中断、则应执行读取操作以确保您已成功跟踪边沿。
-您应该在回调中布置一个信标、并且在信标上有一个单独的"打印到 UART"任务等待。 回调是中断处理、您不希望在这方面花费太长的时间、以防您收到新的中断。
您应该在某处有一段时间(1)、以确保您能继续执行任务。 请参阅我们的示例。