嵌入式大屏幕LED显示屏的设计与实现
在扫描显示中,首先上半屏的8组控制信号的时钟脉冲信号有效,并且在这个过程中,8组控制信号的数据信号R有效,所以就可以先将上半屏的8个单独显示模块中的最小模块的某一行灌满数据。然后用同样的方法将下半屏的8个单独显示模块中的最小模块的某一行灌满数据,当然上半屏和下半屏灌满的都是最小模块的相同的一行。最后数据锁存信号和行锁存信号有效,使其显示。在这个过程中要注意的是数据信号R,因为要显示整屏的数据,在软件编写的过程中要将某个位置显示的数据准确的显示在该位置,就要从内存中准确的取出这个数据。
每一帧显示的数据大小为32768B,对于2块RAM交替工作的情况是完全符合要求的。并且SRAM的存取速度快,换帧的时候也能够很好地显示出预期的数据。程序中用一个RAM选择模块,用来选择某个时间是读出哪一块RAM,还是写入哪一块RAM。
FPGA与存储器联接的信号为am1A[16..0], Ram1D[7..0], Ram1Rd, Ram1 Wr; Ram2A[16..0], Ram2D[7..0], Ram2Rd, Ram2Wr。当FPGA从Ram1取出数据进行显示时,其中有关Ram1的信号就有效;同时就给Ram2写数据。程序中还用到4个内部变量Rt[7..0][7..0],Gt[7..0][7..0],Rs[7..0][7..0]和Gs[7..0][7..0]分别代表4个数组,每个数组里有8个字节。
程序中用到1个全局时钟clk,他用来驱动1个内部全局信号counter_temp,他是1个15位的矢量。TSCK和TNsck信号将8个clk时钟周期作为他们的1个时钟周期,也就是说8个clk时间送出1位数据。FPGA读RAM的时序为:首先地址信号出现在RamxA[16..0]上,然后RamxRd,RamxWr分别置为低电平和高电平,经过1工字电感2~15ns,读出的数据就会出现在RamxD[7..0]上以便FPGA读这个数来显示。
FPGA写Ram的时序是外部MPU信号控制,首先地址信号出现在Ram2A[16..0]上,然后RamRd, RamWr分别置为高电平和低电平,写的数据出现在Ram2D[7..0]上。经过很短的时间,数据就写入了。
程序设定FPGA中的Ram1D和Ram2D为双向口,可写可读。在内部要设相应的缓冲器。因为写RAM是MPU写给RAM,MPU要指明写的地址和数据,所以在程序中要有地址和数据输入口。实际设计中为了减少FP2GA的端口,设计成低地址和数据复用线AD[7..0],用一个信号ALE选择;当其为低电平时,AD[7..0]有效的数据是地址,为高电平时为要写入RAM中的数据。
静态图像显示过程中为了使眼睛看上去不闪烁,就要使一帧图像在一秒内至少显示50次,即使一帧图像在最多20ms显示完。要达到这个要求,就要使一个最小模块的8行在最多20ms内完成一个循环显示。因为是上半屏与下半屏分开传输数据,所以要求在最多1.25ms内传完半屏数据,时钟周期需要在0.6μs以下,而选用的FPGA的时钟频率可以达到50MHz以上,完全符合显示的要求。
4 结 语
硬件连接和软件设计是融为一体的,在最初系统的整体规划中,就是要兼顾两者。本设计从硬件连接到最后的软件实现,都是优化以后的结果。所以按照本设计中的硬件连接情况而设计的软件,只需要一片差模电感器2万门的FPGA就可以实现如此大规模的点阵显示,并且本设计的LED显示屏,画面非常清晰稳定,并且在换帧的过程中能够做到流畅自如,看不出停滞。
平面变压器厂家 | 平面电感厂家可以通过电路实现同或和异或电路吗?网上看到有用二极管实现与或非的,想知道同或异或有没有可能实现。
看到了一个说可以用三极管实现的,如下图
肯定可以的,只有想不到的,没有做不
NME0505隔离电源问题使用0505作为模拟电源,芯片输入VCC=5V,输出的AVCC和AGND变为5.4~5.5V,差这么多,这个想象正常吗?满意回复+10youluo235 查看完整内容自己用过的0505就是5V的。 你这个精度太不高了吧。 不过能用的话楼主凑合用吧。 +5mmuuss586 查看完整内容芯片资料传上来看看;有稳压和非稳压的DCDC模块,如楼上所说,你这个输出值确实太差了;+5wh6ic 查
将MicroTCA导入无线基带设计MicroTCA正在成为嵌入信号处理应用,尤其是高性能的多处理器系统中日益普及的标准。这些标准采用了可满足“运营商级”电信设备需求的先进中间卡(AdvancedMC),从而找到了进入电信应用的途径,如