首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于ARM+FPGA的大屏幕显示器控制系统设计(5)

基于ARM+FPGA的大屏幕显示器控制系统设计(5)

3.初始化CPU堆栈Initstack(源代码略) 3.2 FPGA内部的功能模块
      图4为FPGA内部的功能模块图。FPGA将ARM传送过来的信号包括灰度数据(DATA)、系统时钟(CLK)、帧同步信号(VSYNC)、行同步信号(HSYNC)、片选信号(CS2)和写信号(WRITE)送入存储器切换电路,存储器切换电路将图像数据(DAIA)分时送到静态存储器SRAM1和静态存储器SKAM2进行存储。SRAM1和SRAM2工作在交替读写状态,即向一片SRAM写人数据的同时,从另一片SRAM中读出数据;静态存储器的读写状态由系统时钟、帧同步、行同步以及片选信号来控制。读地址发生器用于计算所需数据信息在存储器中存储的地址,以便保证LED大屏幕的正确显示,它是由移位时钟来控制产生15位读地址信号,移位时钟信号的工作频率为4 MHz。读地址发生器产生的读地址信号在移位时钟的作用下,产生4个分区锁存信号,4个分区的显示数据同时送人屏体,只有当锁存信号有效时,才点亮显示屏。从SRAM读出的灰度数据DAIA送入灰度值发生器,并根据屏体显示结构进行数据重组,转化成LED显示屏要求的上屏数据信号(红、绿、蓝灰度数据)。三色的上屏数据送入串行发送数据寄存器,并在移位时钟的作用下串行发送至屏体。在将一片SRAM中的数据转换后上屏的同时,通知微处理器发送下一屏数据。此外,ARM还发送两位亮度控制信号COMM0、COMM1和亮度数据信号COMM2。串行发送的亮度数据信号进入8位串并转换电路,在COMM0、COMM1的控制下,产生亮度信号。

4 仿真及系统验证
      使用ModelSim仿真用VHDL编写的扫描驱动电路波形如图5。从图5可知,从ARM接收到的数据data(01010101)存入到外部扩展的存储器SRAM2,m2ma是存储器2的地址线,它根据控制信号(tp1,tp2,cs2,swite)的控制作用连续增加;cm2d是存储器2的数据线,将data数据存入,则cm2d为01010101,同时从存储器1中读出数据,转换后送给red0、ged0、bed0,从而验证驱动电路的正确性。

   经硬件设计和软件编码与调试后,将ARM软件源代码通过ISP下载到ARM中的FLASH后复位运行,系统验证了该设计的可靠性和正确性。
继承事业,薪火相传
返回列表