APP下载

基于单片机SPCE061A的字幕机点阵式字母电子显示屏的设计制作

2016-12-23魏丽

商情 2016年42期
关键词:软件设计单片机

魏丽

【摘要】本论文介绍了点阵式字母电子显示屏的硬件电路设计原理与软件设计方案,采用SPCE061A系列单片机芯片,得到了一个能够显示1个字母或一个数字的8*8 的并可以根据需要扩展的LED点阵式显示屏。论文中硬件电路决定了LED点阵屏是以动态的方式点亮, 流动是以位进行的, 与字母模存放的形式有关。首先使双色点矩阵整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;再使绿色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;再使红色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;接着依次显示英文字符 A,B,C,D;然后使英文字符从左到右、从右到左、从上到下、从下到上动态显示;最后在屏幕上显示“钟表”图案并循环。

【关键词】单片机 电子显示屏 硬件电路 软件设计 主函数

LED字母、数字、汉字点阵式显示系统是集信息技术、电子技术、光电技术于一体的高科技产品,具有高稳定性、低耗能、高亮度、长寿命、高清晰度和更新方便等特点,以广告宣传或传递信息的载体等方式广泛应用于车站、码头、商场等公共场所。

本论文在实验室条件允许的情况下,设计并实现了一个能显示1 个字母的8 *8 的LED点阵式显示屏。该系统以SPCE061A系列芯片为核心,结合软件实现了动态字母的显示、跳屏及自检等功能。

一、凌阳16位单片机的概述

1.1单片机SPCE061A的概念。SPCE061A 是继μnSPTM系列产品SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。与SPCE500A不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A 是凌阳科技公司μnSPTM (Microcontroller And Signal Processor) 系列产品中的16位微控制器芯片, 内置32k闪存, 其较高的处理速度使芯片能够非常容易、快速地处理复杂的数字信号, 适用于数字语音识别等应用领域。在2.6V~3.6V工作电压范围内, SPCE061A 的工作速度范围为0.32~49.152MHz, 具备8通道10位ADC 输入功能,内置的具有自动增益控制的麦克风输入功能,双通道10位DAC音频输出功能及A、B两个I/O口输入输出功能。

1.2发展单片机SPCE061A的必要性。凌阳SPCE061A单片机不仅具有体积小、集成度高、可靠性好且易于扩展;较强的中断处理能力;高性能价格比;低功耗、低电压等优点外,还有很强的模块化,例如:位操作模块、自动语音录音以及播放模块。另外,它还配有专门的编译环境IDE,这些都为软件的设计提供了方便。在硬件方面,单片机有输入输出端口,这就方便了单片机与机器人、计算机的连接。利用凌阳SPCE061A单片机作为整个系统的主控板,驱动机器人中的五个电机和机器人头部的扬声器。另外增加了特定人语音识别的功能,通过命令来控制机器人,使机器人智能化。

SPCE061A单片机耗电少,可以满足很多手提设备、掌上设备低能耗的需求,低能耗也是电子技术一直在追求的一个目标。SPCE061A单片机可方便的用来实现声音录制、播放,Midi音乐合成和语音识别,相比别的单片机比较有特色。SPCE061A单片机可方便的完成一系列乘加的运数,实现一些数据处理比较容易,别的单片机一般都不具备这种功能。SPCE061A单片机芯片里具备在线仿真调试电路,使调试和程序下载更加方便,也把仿真器和烧录器的成本给节省下来了。单片机体积小、质量轻、价格便宜,为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。

1.3单片机SPCE061A的应用领域。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种手机、充电器、电话、电风扇、录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。

二、基于单片机SPCE061A的字幕机

2.1字幕机背景介绍

2.1.1点矩阵的种类及结构

现在市面上已出现很多有关点矩阵显示器的商品,如广告活动字幕机、股票显示板、活动布告栏等。它的优点是可按需要的大小、形状、单色或彩色来组合,可与微处理器连接,做各种广告性文字或图形变化。 何谓点矩阵显示器?其实它是由 LED按矩阵方式排列而得名。 点矩阵显示器的种类,可分为 5*7、5*8、6*8、8*8 等 4 种;而按 LED 发光变化颜色来分,可分为单色、双色、三色;按LED的极性排列方式又可分为共阳极与共阴极,其结构如所示。以 5*7点矩阵为例,一般市售注明 CA-P(共阳极)、CC-P(共阴极)。

本论文设计采用共阴极为LED的外形及共阴极LED的阵列结构。通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。

三、结论

3.1实验环境

3.2μnSP集成开发环境

本论文的实验开发环境为unSP IDE 2.0.0。

IDE2.0.0作为μnSP IDE 工具截止现在(2005-11-11)最新的一个版本,它不但继承以前版本IDE的特点,同时增加了一些新的功能,集纳了众多用户在使用μnSP IDE 过程中提出的一些意见,并包含了一些新的例程。 IDE2.0.0 在编译优化、代码查错定位等方面都有了一定的进步,用户在使用本版 IDE 时,应该可以体会到,其对代码的严谨性有了更高的要求。而在新版 IDE 的各个方面,都有所加强,用户在使用过程当用会有所体会。 新添加功能、加强原有功能等, 都没有改变 unSP IDE 一惯的使用方法, 所以用户可以参考 unSP IDE184的用户手册,以学习μnSP IDE 的基本操作及相关知识,这在 IDE2.0.0 的使用当中是保持不变的。

μnSPTM 集成开发环境集程序的编辑、编译、链接、调试以及仿真等功能为一体。具有友好的交互界面、下拉菜单、快捷键和快速访问命令列表等,使编程、调试工作方便且高效。此外,它的软件仿真功能可以在不连接仿真板的情况下模拟硬件的各项功能来调试程序。

3.3 硬件原理

系统设计

在这里使用 8*8 双色点矩阵进行说明。

根据题目要求画出系统框图,参考如下:

在程序中控制点矩阵按照从左到右依次显点,最后可以得到字符‘A。具体说来先显示第一幅图片持续一小段时间(在程序中使用 4KHz 的时基信号进行扫描,即持续 1/4096 秒) ,然后再显示第二幅图片,显示第三幅图片,显示第四幅图片,显示第五幅图片,然后再重新显示第一幅图片……这样一直循环进行。由于扫描的时间非常快,应用视觉效应,就可以看见字符‘A。

点阵式字母显示屏的结构。电路包含电源电路、复位电路、时钟电路、单片机控制电路、记录电路、驱动电路和 LED点阵屏显示电路等七大部分。电源电路通过变压元件为整个电路提供5V的工作电位,复位电路可在需要时为单片机手动 复位清零 ,使整个 电子显示屏初始化;时钟电路是单片机的工作驱动电路;单片机内的程序控制着整个电路,其输出通过译码器SN74LS154译码作为点阵屏的驱动;记录电路记录单片机的工作特性,当出现错误时报警,亦即报警电路;驱动 电路包含阳极驱动和阴极驱动 ,分别驱动\点阵屏阳极和阴极。译码器 SN74LS154的输出经三极管 TP后的输出为阳极驱动,移位寄存器 SN74LS595 的输出为阴极驱动,从而使整个点阵屏显示电路正常工作,显示出所要求的字母或汉字。

在主函数流程图中调用点亮整屏显示包括红色与绿色,调用显示字符,调用动态效果,调用显示时钟等函数。

先对相关变量进行初始化;循环扫描亮 8行LED( 称点亮一帧图象);一帧图象扫描完毕后, 列指针向右移动 1位, 再扫描下一帧图象。为了控制字母共动的速度, 有时候要对一帧图象扫描数次后才将列指针移位……依次类推,列指针共向右移动 8位。这样,主观上感觉到图象向左滚( 移) 动;移动一个字母( 列指针右移 8位)后,字指针向下一个字母。再重复上述过程。这样,我们就能在显示屏上看到持续不断的滚动字母信息了。

显示字符函数、向左、向右、向上、向下移动字符函数中对计数变量进行初始化,对这几种模式用变量进行标识,初始化需要显示的字符指针,初始化列扫描指针。

3.4软件设计方案

硬件电路决定了LED点阵屏是以动态的方式点亮, 流动是以位进行的, 与字母模存放的形式有关。表1是以左移位,横向字母,从上往下方式取模。来说明流动程序算法。

设计基本思路

第一步: 先对相关变量进行初始化。

第二步:循环扫描亮 8行L E D( 称点亮一帧图象)。

第三步: 一帧图象扫描完毕后, 列指针向右移动 1位, 再扫描下一帧图象。为了控制字母共动的速度, 有时候要对一帧图象扫描数次后才将列指针移位……依次类推, 列指针共向右移动 8位。这样, 主观上感觉到图象向左滚( 移) 动。

第四步: 移动一个字母( 列指针右移 8位)后,字指针向下一个字母。再重复上述过程。这样 , 我们就能在显示屏上看到持续不断的滚动字母信息了。

四.实验步骤

4.1 设计思路

4.1.1 如何用单片机写字母显示器的系统

LED点阵电子显示屏我设计两种方案:

方案一:采用可编程逻辑器件作为核心控制器产生LED点阵的行、列驱动信号。由于该系统不仅要实现信息的显示,还要具备键盘控制器、显示亮度连续可调、实时时钟显示、与PC机通讯等功能及其他发挥功能,这就要求需要用中大规模的PLD,设计多个接口电路,开发周期长,不易进一步扩展,同时系统的成本会急剧上升(相对于第二种方案)。因此,本设计并未采用这种方案。

方案二:采用单片机系统来实现。鉴于SPCE061A单片机比传统的SPCE061A系列8位单片机具有更加丰富的资源,而且数据处理速度快,同时“61板除了具备单片机最小系统电路外还包括有电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,体积小,可靠性高。本系统的设计采用双单片机系统,一个主要用于完成多功能显示控制功能,另一个主要用于实时时钟显示、实时温度检测显示、无线通讯以及其他的扩展发挥部分功能,这样提供了充足的内部空间和更多的外部接口;同时由于安装和调试工作可以并行进行,极大地缩短了总体设计和制造的时间。

4.1.2 点阵信息提取方案

将标准的点阵信息字模数据的字库文件(本系统中采用汉字库文件HZK16、ASCII码库文件ASC16)装入外扩ROM存储器,采用与PC机相同的编码(机内码),先进行基于PC机的预处理,提取需显示内容的机内码,通过串口发给单片机,单片机首先进行判断,若是ASCII码,则直接计算出起始地址,在ASC16文件中指定位置取出连续的16个字节即为其字模信息;若为汉字,单片机将机内码转换为区码和位码,再计算出起始地址,在HZK16文件中指定位置取出连续的32个字节即为其字模信息,然后送到显示器去显示。另外,PC机与单片机之间串口通信只是传输机内码,而不是传输字模信息,传输信息量小,不需要复杂的通信协议。这样既可以减轻单片机的负担,而且可以根据要求随时改变显示内容,非常简单灵活。

4.1.3 硬件电路设计

在日常生活中,经常可以看到各种各样的电子显示牌,有大型的也有小型的;有很多都是利用点阵LED 显示器组合而成的,掌握点阵 LED 的原理及使用方法有助于了解这类产品的工作原理、设计思想等。

4.1.4 硬件和软件设计

综合所有资料,总体设计硬件部分和软件部分。

使用点矩阵显示字符以及动态显示效果,练习点矩阵显示的基本使用。具体如下: 首先使双色点矩阵整屏(包括红色与绿色)点亮并持续一小段时间(大约 1 秒) ,然后全部熄灭并持续一小段时间;再使绿色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;再使红色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;接着依次显示英文字符 A,B,C,D;然后使英文字符从左到右、从右到左、从上到下、从下到上动态显示;最后在屏幕上显示“钟表”图案并循环。

实验中获得的点阵式字母或数字电子显示屏是以SPCE061A系列单片机为核心控制点阵的显示与流动。 可显示1个字母、数字或汉字。 且在必要时可变通地增加 8*8 LED显示牌扩展到 4个或更多个字母的系统。该系统通过跳线决定要显示的内容, 设计所需的部件较少。 原理简单 ,具有设计先进、显示活泼、可动态滚动显示字母或图案的能力。除此之外该系统还具有自检功能,通过报警声的不同,识别不同的故障。

猜你喜欢

软件设计单片机
单片机在智能控制中的应用
CAN总线通信技术在电梯监控系统中的应用
电力参数监测系统研究
基于STM8S903K3的序列打螺丝夹具的软件设计
一种VHDL语言代码重用的方法
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器