基于PIC32单片机的新型LED点阵显示控制系统设计
扫描二维码
随时随地手机看文章
项目背景:
LED点阵显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。目前,已经被广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。
目前常用的LED点阵显示控制系统主要有以下两类:自带字库;PC机通过RS232或者RS485总线进行控制。在第一种系统中,字符代码需要事先存储在单片机(包括其控制的存储器)中或者保存在专用的控制卡中,这样每次修改字库都需要重新连通PC机进行下载,比较麻烦;第二种系统虽然可以实时修改字库,但是也需要借助于PC机。以上两种方案因为离不开PC机,不能满足野外显示的需求。
随着交通行业、旅游行业、广告行业的发展,对LED点阵显示宣传提示性文字提出了实时随地更改的要求,传统的LED点阵显示控制系统显然已经不能满足这种需求。因此,我们设计了一个基于PIC32单片机的新型LED点阵显示控制系统。在此系统中,我们自行规定了一个字符库。本系统借助PIC32系列单片机的强大功能,在控制模块内部集成字符生成LED点阵代码软件,按照自己规定的简明字符对照表,由键盘输入任意字符标号,系统识别后实时生成对应该字符的LED点阵显示代码,并将代码存储后用于显示。同时,也可以将生成的代码按照使用者设定的地址码存入U盘,这样可以实现各段文字信息按照不同地址标记在U盘进行存储。随后,这个U盘就可为其它由低端MCU控制的LED点阵显示系统提供字库来源,并且使用者可以根据地址来选择所需的文字信息,实现了U盘的复用控制。本系统可以彻底摆脱LED点阵屏对PC机的依赖,可以很好的用于随处所需的LED点阵显示。
系统框图:
基于PIC32的主系统框图如下图1所示。在图1中,指出了MCU控制外围器件所需的接口;虚线箭头所连接的模块,表示在每次更换代码完成后,均可以移走。
利用U盘和本系统可以让其它低端LED点阵显示控制系统也告别对PC机的依赖。在距离较近的地方,当需要多处LED点阵显示时,让本系统和其它低端LED点阵显示控制系统共存,可显示出巨大的成本优势。U盘复用控制系统框图如下图2所示。在图2中,指出了MCU控制外围器件所需的接口;虚线箭头所连接的模块,表示在每次更换代码完成后,均可以移走。
系统功能实现原理:
图1所示系统主要完成生成输入字符对应的LED点阵代码,并且将这些代码保存到U盘里以及按需要存入自身的存储模块中,代码生成结束,则更新自身系统的显示信息。在向U盘存储代码的过程中,可以按照实际需要(可能每处LED显示系统需显示的文字内容不一样)对每段文字代码进行地址标记。图2所示系统主要完成先得到图1系统里U盘存储的文字代码,然后更新自己的显示信息。在取代码过程中,按照本处的显示需要,按照每段文字存储时的地址取出需要的文字代码。
图1所示主系统主要由六个模块构成:MCU主控制模块;键盘模块;LED点阵显示模块;存储模块;U盘模块;LCD液晶显示模块。
键盘模块采用普通矩阵键盘,通过它输入每个字符标号信息以及键入读\写U盘、删除错误字符等控制命令。CPU主控模块将字符标号导入内部集成的LED点阵代码生成软件,产生相应字符的显示代码,同时可保存在存储模块和U盘中。在向U盘写代码过程中,可以对每段文字代码分别进行地址标记,这样在U盘复用时,可以由操作者输入某段字符代码的地址来选择不同的文字信息,实现了一次写入且满足了各处显示不同文字的需求。当然,本系统也可以直接从U盘读入所需的文字代码用于更新显示。LCD液晶显示模块提供人机交互界面,在每次键盘操作时,同步显示操作信息(包括显示选择的字符),实现操作直观性。
U盘模块和LCD液晶显示模块可以只预留接口,需要使用时则插上这两个模块,在操作结束后,即可撤走U盘和LCD液晶显示器另作它用。
图2所示U盘复用控制系统也由六大模块构成:MCU主控制模块;键盘模块;LED点阵显示模块;存储模块;U盘模块;LED数码管显示模块。图1所示系统提供的字符代码源被存入U盘,插入图2所示系统。键盘模块也采用普通矩阵键盘,操作者通过键盘输入任意一段文字代码的地址,选择想要的文字信息,取出代码的同时存入存储模块。取代码操作完成后,MCU主控模块从存储模块中取出新的文字代码用于更新LED点阵显示。LED数码管显示模块实时显示输入的文字代码段的地址,让操作者可以看到自己的输入信息。
U盘模块和LED数码管显示模块也可以只预留接口,需要使用时则插上这两个模块,在操作结束后,即可撤走U盘和LED数码管显示器以另作它用。
系统软件设计:
本套系统可以分为两个部分:基于PIC32的主系统和普通8位单片机控制的U盘复用系统。
系统上电初始化完成后,LCD液晶显示器即进入初始(问候或宣传信息)界面,LED点阵屏显示原先存储的文字信息,整个系统等待操作者输入命令信息。
一旦系统得到更新文字指令,LCD液晶显示器则显示功能操作界面,同时系统准备好处理标号。操作者按自己需要输入对应字符的标号,系统进行标号处理得到相应的LED点阵显示代码,并将这些代码进行存储。在处理字符标号过程中,系统不断检测一段文字是否输入完毕。如果这段文字输入完,则检测是否需要下一段文字的输入。系统以相同方式处理每段文字。在点阵代码存储过程中,默认按照每段文字的设定地址存入U盘,如果是需要本系统显示的文字代码,则同时存入U盘和本系统的存储模块。文字信息录入完毕后,本系统的LED点阵显示屏就会显示新的文字。
系统上电完成初始化后,LED点阵屏会显示原来存储的内容。系统一旦检测到更新显示命令,则开始准备接受存在U盘中的文字代码段的地址信息。收到地址后,LED数码管同步显示此地址,MCU模块则从U盘中取出对应的文字代码,保存在本系统的存储模块中。取代码结束,LED点阵屏就开始显示新的文字信息。
系统先进性:
创新点一:构建了一种简便易用的新型字符库存储系统(直接用二进制代码去标记每个字符),不同于常见的GB2312和GB18030等字库存储方式。随着嵌入式32位单片机的广泛应用,不用特殊处理就可很容易识别232(4G)个字符,完全满足各类字符库存储需求。
创新点二:LED点阵代码可以在单片机类控制器上实时生成,且可识别任意常见字符。目前成熟的LED点阵显示控制系统均需要事先由PC机生成点阵代码,然后固化在控制器内部,使用时调出存储的字库,不具备实时修改能力。
创新点三:脱离PC机的U盘复用控制。本系统让一个高端单片机处理器作为临时PC机,得到所需的点阵代码,在借助U盘进行传播,更新低端单片机控制的LED显示系统的显示代码,可以方便实现低成本的LED点阵显示群。
硬件平台:
PIC单片机最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的性能与价格比,靠发展多种型号来满足不同层次的应用要求作为其强大的竞争力。PIC系列从低到高有几十个型号,可以满足各种需要。
图1所示主系统采用PIC32 USB Starter Kit II硬件平台 。在此硬件平台上,其主控MCU为Microchip公司的PIC32系列中的32位高性能单片机。此单片机已经集成了通用串行总线(Universal Serial Bus,USB)模块,使用最少量的外部元件即可实现USB 2.0全速和低速嵌入式主机、全速设备或OTG 操作;它也集成了串行外设接口(SPI)模块,用户可配置的8位、16位和32位数据宽度,非常适合控制串行LCD液晶显示器;它含有6个UART接口以及执行速度快,可用于串行驱动多个LED点阵显示屏;它是一个32位单片机,方便进行以二进制方式识别所有字符;它采用RISC(精简指令集)结构,执行速度快,生成的可执行文件较小,很适合本系统大量源代码存储要求;它具有大量I/O口,能很好的满足本系统多I/O口的设计需求。因此,它可以很好的实现图1所示系统框图中的各项功能。
图2所示系统采用PIC16C系列8位单片机作为其主控MCU。PIC系列的8位单片机因其具有各种型号来满足不同场合需求以及与大多数8位单片机兼容,所以它具有很强的市场应用竞争能力。在此系统中采用此类单片机可以很好的满足功能需求。
系统预计实现结果:
图1所示系统可以按照使用者需求识别任意常见字符,并能将实时生成的LED点阵代码存入U盘,同时更新自身系统的显示内容,且在储存到U盘时可以对每段文字代码进行地址标记。
图2所示系统可以按照使用者输入的地址,读出U盘中对应的文字信息,用于更新自身系统显示。
系统实用性分析:
简单化、低成本化、自动化和智能化是各种产品尤其是电子类产品发展的必然趋势。在显示行业中,LED点阵显示器已经表现出了巨大的优势,被广泛用于各行各业。但是,由于需要借助于PC机的限制,LED点阵显示系统大多被用于建筑物附近,而基本无法用于野外。因此,本系统在旅游景区、路边等各种野外信息提示处具有巨大的潜在应用价值。
传统的LED点阵显示控制器都需要依赖PC机,这无疑提高了系统成本。本系统不需借助PC机,就可满足LED点阵显示系统对字符代码的需求,如果在需要多处LED点阵显示的地方,借助于U盘更能体现出低成本的巨大特性。同时,本系统直接将字符库集成到了LED点阵代码生成软件中,不需购买专用的字库芯片。
可以预测,本系统一旦被实现,即可表现出强大的实用性和竞争力。