【问题标题】:VGA Video using an ARM7使用 ARM7 的 VGA 视频
【发布时间】:2011-01-12 05:13:18
【问题描述】:

我需要从 AT91SAM7SE512 输出一个 VGA 信号。如何在不使用额外控制器的情况下做到这一点?我在网上看到了一些东西,但是它需要能够修改特定的像素。

【问题讨论】:

  • stackoverflow.com/a/59893678/2521214 它使用 AVR32 UC3 MCU 完成,它的性能不如你的……没有额外的 IC,只有 3 个电容和 3 个二极管。目标分辨率取决于您的 RAM 数量和使用的接口速度 ...

标签: vga arm7


【解决方案1】:

您的 ARM 芯片有一个 ADC。不过,它没有 DAC。 VGA 是多通道模拟输出,因此您需要某种 DAC,进而需要一个外部组件。您可能遇到的另一个问题是需要合适的驱动程序(电子驱动程序,而不是软件)。 VGA 线可能很长,这意味着您需要克服的容量很大,而且它还可以用作天线。

【讨论】:

    【解决方案2】:

    您可能会使用类似于旧技巧的东西来制作带有PWMNTSC 信号,它可能看起来很糟糕。更好的选择是获得某种形式的视频控制器,甚至是便宜的低分辨率。

    您也可以尝试将某种形式的FPGA 转换为VGA,例如this

    【讨论】:

    • 好吧,我可以将 FPGA 连接到 ARM,或者让 FPGA 从 ARM 写入的 SDRAM 中读取吗?
    • FPGA 只是一个可编程逻辑单元芯片。您可以使用任意数量的 I/O 引脚将其连接到任何您想要的东西。您甚至可以使用它们来模拟/模拟有限状态机 (CPU)。如果要将其直接连接到 SDRAM,则需要一个内存控制器(也可以是 FPGA)在 ARM 和 FPGA 之间切换。 ARM 会上传内存页面,而 FPGA 会下载这些页面。您可能还需要一个外部时钟,例如晶体。除非您将其作为“学习体验”,否则我真的会推荐一个真正的视频控制器。
    【解决方案3】:

    除非你的 ARM7 有某种控制器,能够在没有 CPU 干预的情况下读取内存和输出视频信号,即某种帧缓冲区,否则我认为你不能用 ARM7 做到这一点。嗯,你可能可以,但不能在像 linux 这样的通用操作系统中。

    您可以做的是将您的 ARM7 转换为 VGA 专用控制器,它会花时间启动从 SDRAM 到外部总线的 dma 传输。这将使 IMO 不会留下大量资源来做其他事情。

    【讨论】:

      猜你喜欢
      • 2014-04-20
      • 1970-01-01
      • 1970-01-01
      • 2010-11-16
      • 2020-10-29
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多