完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
`例说FPGA连载87:工业现场实时监控界面设计之LCD显示驱动模块代码解析 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc 该模块除了实现正常的LCD驱动显示逻辑,还需要实现LCD图像的数据读出控制信号产生、波形数据点的读出控制信号产生,并对LCD当前显示像素点的多个显示数据做仲裁判断,以显示我们所期望的正确色彩。该模块的功能框图如图17.15所示。 图17.15 LCD显示驱动模块功能框图 波形显示的X坐标有效区域(wave_xs,wave_xe)区域内,产生双口RAM的数据读请求信号wave_rden。之所以(wave_xs,wave_xe)区域内都需要读取当前对应的波形点,是由于波形点的数据本身决定了它处于(wave_ys,wave_ye)的具体位置,我们无法预测,所以只能在整个x轴显示区域读取并作判断。这部分设计的逻辑代码如下。 reg wave_rden; //双口RAM读使能信号 always @(posedge clk or negedge rst_n) if(!rst_n) wave_rden <= 1'b0; else if((xcnt >={2'd0,wave_xs}+(VGA_HST+VGA_HBP-5)) && (xcnt <{2'd0,wave_xe}+(VGA_HST+VGA_HBP-5))) wave_rden <= 1'b1; else wave_rden <= 1'b0; 相邻波形点在显示时不是简单的打点显示,而是划线将它们平滑的连接在一起。因此,我们就专门定义了寄存器wave_datbusr对上一个时钟周期的波形值wave_datbus打一拍,这样可以实现前后相邻两个波形点取值的比对,给这两个值之间的像素点都赋波形色,即实现平滑的波形划线效果。这部分设计的逻辑代码如下。 //显示数据处理输出 reg[15:0] lcd_djdbr; reg[7:0] wave_datbusr; //波形值缓存一拍,用于连线 always @(posedge clk) begin wave_datbusr <= wave_datbus; end //叠加层和波形处理 always @(posedge clk or negedge rst_n) if(!rst_n) lcd_djdbr <= 16'd0; else if(wave_dis) begin //波形显示区域 if((wave_datbusr == 8'd0) ||(wave_datbus == 8'd0)) begin //X轴第1个点和最后1个点显示单点 if(ycnt ==(VGA_VST+VGA_VBP)+({2'd0,wave_ye}-(wave_datbus-1'b1))) lcd_djdbr <=wave_fcor; //前景色 else lcd_djdbr <=wave_bcor; //背景色 end else begin //X轴第1个点和最后1个点之间的显示连续的连线效果 if(wave_datbusr >wave_datbus) if((ycnt >=(VGA_VST+VGA_VBP)+({2'd0,wave_ye}-(wave_datbusr-1'b1))) && (ycnt<= (VGA_VST+VGA_VBP)+({2'd0,wave_ye}-(wave_datbus-1'b1)))) lcd_djdbr <=wave_fcor; //前景色 else lcd_djdbr <=wave_bcor; //背景色 end else begin if((ycnt >=(VGA_VST+VGA_VBP)+({2'd0,wave_ye}-(wave_datbus-1'b1))) && (ycnt<= (VGA_VST+VGA_VBP)+({2'd0,wave_ye}-(wave_datbusr-1'b1)))) lcd_djdbr <=wave_fcor; //前景色 else lcd_djdbr <=wave_bcor; //背景色 end end end else lcd_djdbr <= lcd_djdb; ` |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
885个成员聚集在这个小组
加入小组4544 浏览 0 评论
特权同学 Verilog边码边学 Lesson01 Vivado下载与安装
2652 浏览 1 评论
玩转Zynq连载50——[ex69] FIR滤波器IP仿真实例
4349 浏览 2 评论
玩转Zynq连载49——[ex68] MT9V034摄像头的图像FFT滤波处理
5277 浏览 1 评论
玩转Zynq连载48——[ex67] Vivado FFT和IFFT IP核应用实例
5332 浏览 0 评论
1949浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 19:09 , Processed in 0.564101 second(s), Total 69, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号