基于FPGA EP1K10QC208-3芯片实现256级灰度LED点阵屏控制系统的设计

引言
256级灰度led点阵屏在很多领域越来越显示出其广阔的应用前景,本文提出一种新的控制方式,即逐位分时控制方式。随着大规模可编程逻辑器件的出现,由纯硬件完成的高速、复杂控制成为可能。
逐位分时点亮工作原理
所谓逐位分时点亮,即从一个字节数据中依次提取出一位数据,分8次点亮对应的像素,每一位对应的每一次点亮时间与关断时间的占空比不同。如果点亮时间从低位到高位依次递增,则合成的点亮时间将会有256种组合。定义点亮时间加上关断时间为一个时间单位,设为t 。表1列出了每一位的点亮与关断的时间分配。
如果定义数据位“1”有效(点亮),“0”无效(熄灭),则表2列出了数据从00h到ffh时的不同点亮时间。由表2可知:数据每增1,点亮时间增加t/128。根据点亮时间与亮度基本为线性关系的原理,从0~255t/128的点亮时间则对应256级亮度。当然,这个亮度是时间上的累加效果。如果把一个led点阵屏所有像素对应的同一数据位点亮一遍称为一场的话,那么8位数据共需8场显示完,称为“8场原理”。
理论上讲,8场即可显示出256级灰度,然而通过表2可看出,即使数据为ffh时,在8t时间内也只是点亮了255t/128时间。关断时间可接近6t,点亮时间仅为总时间的约25%,因此,8场原理虽也能实现256级灰度显示,但亮度损失太大。为了提高亮度,可采用“19场原理”,即8位数据分19场显示完,其中d7位数据连续显示8场,d6位连续显示4场,依次递减。表3列出了各位的点亮与关断时间。
由表3可推导出数据从00h~ffh范围的总点亮时间,如表4所示。在19t时间内,最大点亮时间可达近16t, 占总时间的84.21%,远大于“8场原理”的25%。数据每增1,点亮时间增加了t/16 ,该值大于“8场原理”的t/128。所以 ,“19场原理”较“8场原理”的对比度更明显,图像层次分明、表现力强。
电路设计
256级灰度led点阵屏通常要具有能远程同步实时显示计算机视频信号的功能,涉及到的电路包括:数字视频信号的采集、数字信号的格式转换及非线性校正、远程传输及接收、灰度显示控制电路、led点阵显示电路等。 本文重点讨论“灰度显示控制电路”的设计,控制对象以红、绿双基色led点阵屏、1/16扫描显示电路为例。fpga内部电路如图1所示。
因为被控对象为1/16扫描显示电路,所以显示屏每16行只需要一路数据信号即可。drout1、 dgout1即为第一个16行的红、绿基色输出信号;drout2、dgout2为第2个16行的红、绿基色输出信号。以此类推。
ha、hb、hc、hd的二进制编码,定义当前的数据输出应是16行中的哪一行。cp信号为数据串行输出的同步移位脉冲。le信号为一行串行数据输出结束后的锁存脉冲, le每有效一次,ha、hb、hc、hd二进制编码状态增1。ea为灰度控制信号,其宽度为在一个时间单位t内led的点亮时间。当然, 不同的数据位其宽度不同, 具体由表3决定。一个时间单位t即一行串行数据的传输时间,也即le信号的周期,其大小取决于屏宽的像素点数量和cp信号的频率。
drin1~8和dgin1~8为红、绿数据输入信号,分别对应第1个16行点阵区到第8个16行点阵区。cpin为同步脉冲,一个脉冲对应一位数据,8个脉冲对应一个像素点的8位数据输入。h信号为行同步脉冲,一行数据输入结束,h信号有效一次。v为帧同步脉冲,一帧(16行)数据输入结束,v信号有效一次。上述信号均为前级系统提供的信号。
fpga外部接有两组高速静态ram(图中未画出),dra1~8、dga1~8为a组ram的红、绿数据线,drb1~8、dgb1~8为b组ram的红、绿数据线;/wra、/rda为a组的读、写控制信号,/wrb、/rdb为b组的读、写控制信号;aa0~16为a组的地址线,ab0~16为b组的地址线。使用两组ram的目的是保证对ram的读写操作能同时进行。当写ram(a)时,读ram(b);当写ram(b)时,读ram(a)。二者的写/读切换由帧信号v控制。v每有效一次,就进行一次切换。
cpin为前级系统提供的写脉冲,同时亦作为写地址生成电路的计数脉冲,计数地址范围为a0~a16, 共128k字节, 其中a0~a2为灰度位数据地址(决定访问8位的哪一位)。a3~a12为x方向的像素地址,a13~a16为y方向的像素地址,即行地址。h信号到来时,清零a0~a12,同时a13~a16地址加1。v信号到来时,a0~a12及a13~a16全部清零。上述地址作为ram的写地址。
clk为读地址生成电路计数脉冲(外电路提供),计数地址范围亦为a0~a16, 共128k字节, 其中a0~a9为x方向的像素地址,a10~a13为y方向的像素地址,即行地址。a14~a16为灰度位数据地址。上述地址 作为ram的读地址,这些地址的变化规律应符合“19场原理”对地址要求的变化规律,即:a0~a9计满后清零,产生一个行信号即le信号。le信号作为a10~a13的计数脉冲,a10~a13计满后清零,产生一个场信号。场信号作为a14~a16的计数脉冲。不过,a14~a16并不是一简单的二进制计数,其规律如表5所示。为了能正确地读取写到ram中的数据,生成的读地址应按表6所示的方法与ram连接。
读写控制电路的作用是向两组ram提供读写控制信号,逻辑关系如表7所示。数据输入/输出电路的作用是切换数据的传输方向,如表8所示。
帧切换电路的作用是产生上述电路所需要的切换信号s。实现的方法是,帧同步脉冲v每有效一次,s的逻辑状态翻转一次。帧切换电路保证了两组ram随v信号不断进行读写转换。
灰度信号生成电路产生被控对象需要的ea信号,它随读地址a14、a15、a16的状态而变化。逻辑关系如表9所示。
依据帧周期tp=20ms,一帧=19场原理,可得如下计算结果: 场周期tv=tp/19=1.05ms; 行周期t=tv/16=66ms; 输出移位脉冲周期tcp=t/1024=64ns;输出移位脉冲频率fcp=1/tcp=15.6mhz。clk信号频率fclk=fcp=15.6mhz; 实际应用时,选取clk时钟信号频率为16mhz。
在max plusii10.0环境下,使用图形和硬件描述语言完成了以上电路的设计。
fpga选型及仿真结果
由图1可知,fpga必须提供113个i/o引脚,内部资源、工作频率须满足电路设计要求。采用altera公司的acex1k系列ep1k10qc208-3芯片,该fpga芯片速度高、价位低、有114个i/o引脚,576个逻辑宏单元,可兼容输入输出电路的ttl电平。仿真结果报告: 引脚利用率达99%,内部逻辑单元利用率达到85 %,达到了充分利用资源、提高性价比的目的。

农业小型气象站的详细介绍
亿智电子完成数千万元天使轮融资,将量产AI芯片
2018年半导体产业预测:并购计划继续,进一步整合细分领域
加大5G技术投入,联发科力争缩小与高通的差距
苹果iPhone未来或将支持融合通信服务
基于FPGA EP1K10QC208-3芯片实现256级灰度LED点阵屏控制系统的设计
深度解析TVS管的原理和参数
原厂96层3D NAND技术发展,后续SSD价格将持续下滑趋势
基于PBS生物反应器的共享控制平台解决方案
iPhone15全系采用USB-C,订单数量将少于上代
英伟达:更强的GPU,更快的AI超算
美国证监会再次拒绝了比特币ETF申请
联通14日起全线下调iPhone系列售价
亲锂-疏锂双骨架助力锂金属电池
IDTechEx最新发布《新兴光伏领域的材料机遇-2020版》报告
五种最流行的聊天机器人介绍
华为发力智能家居 未来还有很多路要走
adc模数转换器的作用
SEGGER调试低功耗模式
紫光云“云智原生”战略加速业务转型与创新