1、LED 点阵书写显示屏摘 要本设计运用了基于 Nios II 嵌入式处理器的 SOPC 技术。系统以 ALTERA 公司的 Cyclone II 系列 FPGA 为数字平台,将微处理器、 Avalon 总线、LED 点阵扫描控制器、存储器和人机接口控制器等硬件设备集中在一片 FPGA 上,利用片内硬件来实现 LED 点阵的带地址扫描,降低系统总功耗和简化 CPU 编程的同时,提高了系统的精确度、稳定性和抗干扰性能。关键词:SOPC FPGA 带地址扫描AbstractThis design using the Nios II based on embedded processor SOPC t
2、echnology.ALTERA system to the company for the Cyclone II FPGA digital platform、 series、Will microprocessor、 Avalon bus of LED dot matrix scanning controller、memory and human-computer interface controller hardware device focused on such a FPGA,Using the piece of hardware to achieve inside of LED dot
3、 matrix with address scanning, reduce the total power of the programming and simplify the CPU, improve the precision and stability of the system and the anti-jamming performance.Keyword: SOPC FPGA Address scanning目 录1 引言.32 系统方案.32.1 主控器选择方案论证.32.2 点阵驱动方案论证.33 理论分析与计算.43.1 光笔选取与参数设计.53.2 LED 点阵屏驱动参数
4、设计. .53.3 屏亮自动调节设计.63.4 超时关显示节电设计.64 系统电路设计.74.1 系统工作原理.74.2 系统工作时序.75 系统程序设计.85.1 系统流程概述.85.2 系统总流程图.86 系统测试与结果.97 结论.9参考文献.10附录:.10附 1:电路原理图.10附 2:扫描电路硬件描述.11附 2:软核 NIOS II 程序.17附 4:完整的测试结果.471 引言LED 点阵显示屏被用到很多领域,随着电子技术的发展,LED 点阵书写显示屏的广泛应用是一种趋势。传统的 LED 点阵显示是由微处理器实现的,但是以 FPGA 做控制器将成为发展趋势。FPGA 的结构灵活
5、,其逻辑单元、可编程内部连线和 IO 单元都可以由用户编程,可以实现复杂逻辑功能,满足各种设计需求。其速度快,功耗低,通用性强,特别适用于大型系统的设计。使用 FPGA 还可以实现动态配置、在线系统重构(可以在系统运行的不同时刻,按需要改变电路的功能,使系统具备多种空间相关或时间相关的任务)及硬件软化、软件硬化等功能。用 FPGA 做为控制器对本系统进行设计,利用它灵活丰富的 I/0资源简化了电路,降低了系统的成本。本作品用 FPGA 做为控制器,来实现 LED 点阵书写显示屏的功能。2 系统方案2.1 主控器选择方案论证方案一:以 ARM 为系统控制器采用 32 位 RISC 微处理器 AR
6、M 实现点阵屏的控制和编码功能,基本上能完成题目的要求,但是 ARM 不适合多线程操作,如果应用在系统中会使电路和软件设计变得复杂。方案二:用 FPGA 作为系统控制器FPGA 可以直接用硬件扫描、编码、解码、纠错,速度快、稳定性高、扩展性能好、体积小,可以提供丰富的逻辑单元和 I/O 资源。用 SOPC 工具可以快速生成片上软核处理器,将所有的控制单元集成在一片 FPGA 芯片内,降低了额外的功耗开支。采用并行的输入/输出方式,可以达到很快的速度。这样合理的分配了 FPGA 资源,具有很强的实时性和准确性。可以实现各种灵活控制。综合考虑,最后采用方案二。2.2 点阵驱动方案论证方案一:串行方
7、式显示这种显示方式由译码器单元74HC138、数据移位寄存器74HC595和列驱动器组成,点阵显示屏可以用少量 I/O 口接收控制器传输下来的大量数据,此方案为点阵显示屏系统中比较常用的,所用器件也比较常用,容易买到。但是它存在一个致命的缺点,就是刷新速度不够快,高速度的地址编码信息无法发送。方案二:并行方式显示可以通过锁存器芯片来增强 FPGA 的 I/O 口的驱动能力,将32位宽的数据同时输入到 LED 点阵列中,达到并行控制 LED 点阵的目的。方案中运用4片锁存器74HC573来组成双缓冲寄存器,驱动 LED 点阵行线,用5片3-8译码器74HC138组合成5-32译码器对 LED 点
8、阵的32列进行选取。这样就避免了各行数据显示不同步的问题。由于并行数据传输速度非常快,所以高速度的地址编码信息可以同步发出。综上所述,本设计最终选择了第二个方案。3 理论分析与计算3.1 光笔选取和参数设计光笔用光电三极管 3DU33 做为的感光元件,LM393 为比较器。由于点阵的光强相对较弱,通过光电三极管的电流很小,通过串接硅二极管来提升光电三极管发射极电压,方便后级比较器作业。光笔原理图如下图:图 1 光笔原理图3.2 LED 点阵屏驱动设计本电路采用 74HC573 做电平转换及行驱动,8550 三极管做列驱动,用 5片 74HC138 扩展成 5-32 译码器对列选信号进行译码,显
9、示亮度和器件参数均可达到系统要求的功能设计。系统原理图如下: 图 2 LED 点阵驱动原理图 省略 4 行3.3 屏亮自动调节设计利用片外 A/D 转换芯片将当前光强转换成数字信号,将传统的 PWM 调光技术稍加修改,变换成带编码的 PWM 调光方式,根据显示的内容进行屏亮的自动调节。设计的框图如下:图 3 点阵屏亮度自动调节图3.4 超时关显示节电设计基于定时器的数字电路,给定一个时间,当光笔检测到光信号,定时电路自动复位,否则定时电路到给定的时间后数字信号溢出,把溢出信号传送给核心模块,通过功耗管理模块,把系统其余部分模块的时钟切断以达到节电的目的。系统的节电框图如下:图 4 超时待机框图
10、全局时钟功耗管理核心模块片外器件片选控制片 外 器 件亮度调节编码区 内容显示区 清 0 调亮区光敏电阻 A/D 转换4 系统电路设计4.1 系统工作原理以 NIOS II 软核为主控,系统包括 LED 扫描为主的多功能模块、按键管理模块、LCD 控制等,通过键盘扫描来确定工作模式以实现点亮、划亮、擦除、区域拖拽等功能,用外围电路的反相功能能实现点阵显示屏的反显,功耗管理模块对各模块时钟的控制可以实现节电的功能。图 5 系统工作原理框图4.2 系统工作时序D10D6 送出 Y 轴坐标的原码,D5 为原码的奇校验,D4D0 为原码的反码校检。 经过双层编码校验,有效防止了周边点阵对数据的干扰。降
11、低了 CPU 数据处理的难度,只有确定有效的数据才会通过中断被 CPU 读入内部进行处理。X 轴坐标值则为当前所选列的地址。系统工作时序图如下:光笔输入反显NIOS II32 位软核微处理器显示缓存RAM功耗管理模块A/D 调光调理按键管理LCD控制器D10 D8 D9 D0显示区地址编码区上升沿读入光笔数据LED 扫描地址编码地址解码解码纠错反显控制亮度调节点阵数据点阵列选驱动芯片片选控制5 系统程序设计5.1系统流程概述本系统是以软核 NIOS II 为主控,编程采用模块死循环的方式:按任意模式设置键将会复位 CPU ,CPU 重新启动后将根据复位标志进入相应的管理模式,从而实现点亮、划亮
12、、擦除、拖移等功能,这种编程模式在降低编程难度的同时增强了系统的可靠性。5.2 系统总流程图图 6 系统程序设计流程图多字连写模式读复位标志读显示缓存 RAM等待有效坐标中断更新显示缓存等待有效坐标中断更新显示缓存清除显示缓存数据结束点亮模式笔画擦除模式全屏擦除模式循环检测KEY+/-更新待机时间按键存入字 1 并清屏循环显示字 14按键存入字4 并清屏区域选择选区拖动区域缝合建立辅助选区任意模式键对CPU 进行复位待机时间设定区域拖动模式6 系统测试与结果6.1 划亮反显擦除拖移的测试和结果各模块均调通,将调好的模块连在一起,加上 5v 电压源,启动进行系统初始化。按键进入点亮模式,用光电笔
13、在 LED 点阵书写显示屏上接触,可以看到接触的点点亮,LCD 上显示亮点的精确坐标。用光笔快速的在书写显示屏上划过,发现划过的地方变亮,多次操作都能实现。再次按键,进入反显模式,光笔划过,发现经过的地方没有亮其他的部分高亮,反显测试正常。再次按键进入擦除模式,用光笔在屏幕上划过,显示屏亮的地方变暗了。再按一次键可以看到整屏由亮变暗,实现了擦除这一功能。最后进入多字连写模式和区域拖动模式用光笔在 LED 点阵显示屏上写四个字,最后在屏上循环显示。最后对写的字用笔圈起来可以用笔移动。实现了对象拖移功能。经过反复的测试,所有的功能都能很好的实现,系统正常。6.2 屏亮自动调节测试和结果外部光环境人
14、为地改变后,测试 LED 点阵书写显示屏的亮度是否发生变化如果发生变化,则表明能够自动调节,结果屏亮随外部环境的变化而改变,系统正常。6.3 超时关显示节电测试和结果加 5v 电压启动系统,对系统初始化。设定待机关显示的时间,在测试点接入万用表,不进行任何操作到设定的时间,看显示屏是否自动关闭。结果书写显示屏自动关闭,电路板测试点上的电流小于 5mA。表明测试正常,完成系统要求。7 结论本作品完成了题目的基本要求和发挥部分的全部要求,系统性能良好。通过对作品的各项进行了优化,使系统的性能有了提高。FPGA 的运用提高了强大的数据处理能力和较高的运行速度,并且使电路简单。同时也提高了系统的集成度和可靠性。参考文献模拟电子线路基础 ,吴运昌著,广州:华南理工大学出版社,2004 年;数字电子技术基础 ,阎石著,北京:高等教育出版社,1997年;FPAG 系统设计与实践 ,黄智伟著,北京:电子工业出版社,2004 年;EDA 技术与应用(第2版) ,江国强著,北京:电子工业出版社,2007年;电子系统设计 ,李金平、沈明山、姜余祥著,北京:电子工业出版社,2007年;附录附1:FPGA 内部构架图