【问题标题】:Steps to read data from ARM microcontroller port从 ARM 微控制器端口读取数据的步骤
【发布时间】:2010-12-21 04:19:19
【问题描述】:

我无法从 ARM LPC2378 微控制器读取串行数据。我必须使用 UART 还是可以使用任何 GPIO 端口? 有人有c代码吗?

【问题讨论】:

  • 您是在谈论从 PC 与您的微控制器通信吗?

标签: c embedded arm microcontroller


【解决方案1】:

从技术上讲,使用 GPIO 端口是可行的,但是您的软件负责位时序、帧、错误检查等。它通常被称为"bit-banging",因为您的代码必须执行每个位,因此它是 CPU 密集型的。对于较低的数据速率,您可以从定时器中断运行它。

使用 UART 要容易得多 - UART 负责位时序、帧、错误检查等繁重的工作。

根据the LPC2378 data sheet,微控制器有4个UART。所以使用UART是可行的方法。您的串行数据输入的是哪个引脚?串行数据必须连接到可以连接到 4 个 UART 之一的引脚。您必须在微控制器上设置一些寄存器来设置它以供 UART 使用:

  • 启用 UART 及其设置(那里有很多设置)
  • 设置哪个引脚是 UART 的输入(可能)
  • 其他一些引脚设置

首先,您可以尝试轮询 UART — 读取其“RX 字节可用”标志,直到它显示“有可用字节”,然后从接收字节寄存器中读取该字节。还要读取 RX 错误标志寄存器,看看是否有任何错误。

完成后,您可以让 RX 中断正常工作,因此会生成接收中断来处理传入数据。

这类事情需要一些阅读user manualdatasheet 的时间。享受吧!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多