基于同步串行接口SSI的LED显示器设计
- 格式:pdf
- 大小:259.54 KB
- 文档页数:5
济南大学泉城学院毕业设计方案题目单片机串行口LED大屏幕显示屏硬、软件设计和汉字显示技术专业电气工程及其自动化班级电气1102学生学号指导教师二〇一五年三月十五日学院工学院专业电气工程及其自动化学生xxxxxx学号xxxxxxxxxxx设计题目单片机串行口LED大屏幕显示屏硬、软件设计和汉字显示技术- 2 -设计的主要研究内容及预期目标1 硬件设计1.1 主机系统设计本系统的主控制芯片采AT89C51芯片,AT89C51系列单片机的工作速度高,晶振频率可高达24MHZ ,1个机器周期仅500ns ,比MCS-51系列单片机快了1倍。
AT89C51单片机的编程灵活,可以很方便地使用C 语言、汇编语言等,还可以用软件编程来辅助实现硬件工作,从而完成整个系统的功能。
1.2 系统硬件设计系统的整体设计图如图1所示。
图1 系统总框图本系统采用AT89C51单片机为控制器,整个电路主要由:单片机系统、行驱动电路、列驱动电路、通信系统、上位机、16×16点阵显示屏等组成。
1.2.1 单片机系统外围电路单片机系统外围电路形式如图2所示。
在AT89C51的第18(XTAL1)、19(XTAL2)脚接12MHZ 的石英振荡晶体,在晶振的两个管脚间用30PF 的电容耦合到地即可构成时钟脉冲振荡电路。
AT89C51的复位引脚(RESET )是第9脚,只要在复位输入引脚(9脚)上接一电容至VCC ,下接一个电阻到地即可构成最简单的复位电路。
图2 单片机外围系统电路1.2.2 行驱动电路1)74HC154芯片工作原理电路采用74HC154芯片译码器作为点阵的行驱动。
74HC154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出,两个使能输入端,可用于译码器选通,防止输出错误的编码,也可用于译码器扩展。
2)74HC154与AT89C51单片机的硬件连接考虑到本次设计中LED显示屏的规格是16×16,所以采用一片74HC154芯片来驱动一个16行的LED屏。
目录Stellaris外设驱动库——SSI (1)1.1 SSI总体特性 (1)1.2 SSI通信协议 (1)1.2.1 Texas Instruments同步串行帧格式 (1)1.2.2 Freescale SPI帧格式 (2)1.2.3 MICROWIRE帧格式 (6)1.3 SSI功能概述 (8)1.3.1 位速率和帧格式 (8)1.3.2 FIFO操作 (8)1.3.3 SSI中断 (9)1.4 SSI库函数参考 (9)1.4.1 配置与控制 (9)1.4.2 数据收发 (11)1.4.3 中断控制 (12)Stellaris外设驱动库——SSI1.1 SSI总体特性Stellaris系列ARM的SSI(Synchronous Serial Interface,同步串行接口)是与具有Freescale SPI(飞思卡尔半导体)、MicroWire(美国国家半导体)、Texas Instruments(德州仪器,TI)同步串行接口的外设器件进行同步串行通信的主机或从机接口。
SSI接口是Stellaris系列ARM都支持的标准外设,也是流行的外部串行总线之一。
SSI具有以下主要特性:z主机或从机操作z时钟位速率和预分频可编程z独立的发送和接收FIFO,16位宽,8个单元深z接口操作可编程,以实现Freescale SPI、MicroWire或TI的串行接口z数据帧大小可编程,范围4~16位z内部回环测试模式,可进行诊断/调试测试1.2 SSI通信协议对于Freescale SPI、MICROWIRE、Texas Instruments3种帧格式,当SSI空闲时串行时钟(SSICLK)都保持不活动状态,只有当数据发送或接收时处于活动状态,SSICLK才在设置好的频率下工作。
利用SSICLK的空闲状态可提供接收超时指示。
如果一个超时周期之后接收FIFO仍含有数据,则产生超时指示。
对于Freescale SPI和MICROWIRE这两种帧格式,串行帧(SSIFss)管脚为低电平有效,并在整个帧的传输过程中保持有效(被下拉)。
一种SSI接口光电编码器数据并行采集设计方法靳红涛, 赵勇进, 陈朝基, 张斌中国兵器工业第二零八研究所北京 102202摘要:SSI接口即同步串行接口具有传输速度快、连线简单、抗干扰能力强等优点,因而在光电编码器上得到了越来越广泛的应用,但其与计算机接口的连接实现较为复杂,在一定程度上影响了SSI接口光电编码器的推广和应用。
基于复杂可编程逻辑器件CPLD开发的SSI接口模块SSI208P,实现了SSI接口编码器数据的高速并行采集。
本文对SSI208P模块进行了详细介绍,并给出了硬件设计和软件设计思路及实现方法。
关键词:SSI 光电编码器串并转换高速采集1 概述光电角度编码器利用光电转换原理,将连接轴的转动角度量转换成相应的电脉冲序列并以数字当量输出,具有体积小、精度高、接口数字化等优点,被广泛应用于雷达、机器人、数控机床和高精度伺服系统等诸多领域。
光电编码器的数据输出有并行和串行两种接口,串行方式又分为同步串行接口(Synchronous Serial Interface,简称SSI)和异步串行接口两种。
SSI方式比异步串行方式速度快很多,因此SSI接口以及在SSI基础上发展起来的Endat、BISS等接口在光电编码器上得到越来越广泛的应用。
单片机、DSP、PC104、工控机等工控领域常用的控制器一般不提供SSI接口,市场上常见的SSI转换器多是将SSI信号转换成通用异步串行信号,通信速率低、价格高、不易安装,此外SSI光电编码器供应商一般也不提供接口转换器,这些因素在一定程度上限制了SSI光电编码器的应用。
本文给出了一种SSI接口数据高速并行采集、低成本实现方法。
2 SSI接口介绍SSI接口光电编码器采用主机主动读取方式,是以2对符合RS-422电平的信号线进行信号传输,1对数据(Data)线,1对同步时钟(Clock)线。
SSI同步时钟频率决定数据传输速率,其范围较宽,为0.1~2MHz,可以根据传输距离远近选择相应的传输速率。
SSI接口概述自动化控制系统在不断地发展,要求有更高精度的绝对值编码器和相关的测量仪器。
为了满足这样的需要,绝对值编码器分辨率就越来越高。
然而,高精度要求增加位数和电缆芯数,从而增加安装成本且易出现错误;SSI接口具有安装成本少,线路简化的优点,它只通过二个信号(时钟和数据)的串行方式来传输而与编码器的精度无关。
SSI接口通过一个时钟同步的串行线路来传输绝对值编码器的位置数据,如右图所示具有SSI接口编码器的示意图:SSI编码器的工作原理与一个标准绝对值编码器的工作原理非常相似。
主要部分是:一个发光源、一个由透明和不透明窗口构成的码盘、一个光电接收器、启动/触发电路、并行/串行转换器、一个单稳态电路、一个时钟信号的输入电路和数据信号输出设备。
由编码器读数系统读取数据,并且把该数据持续地传送给并行/串行转换器(具有并行功能的“转换寄存器”装置)。
当这个单稳态电流被一个时钟信号传送激活时,数据被存储和传输至具有时钟同步信号的输出端。
为了加强抗干扰能力和长距离传输,时钟和数据信号是差分方式传送(RS422)。
工作原理无数据传输时,时钟和数据信号处于一个高逻辑电平状态,单稳(态)电路不工作。
1.时钟信号的第一个下降沿,单稳(态)电路被激活,并行/串行转换器上的数据存储到转换寄存器里。
(存储数据)2.第一个时钟信号上升沿传送存储数据的最高(有效)位(MSB)G n至数据信号输出线上。
3.时钟信号处于下降沿(信号处于稳定状态),控制器从数据信号输出线上获得所需的电平值,单稳(态)电路再次激活。
4.随着一个个脉冲上升沿的到来,G nx1、G nx2…….逐一输出,最后位G1传输完毕,数据线跳至最低有效位(LSB)传输数据信号。
而在下降沿数据信号传送给控制器。
5.在时钟脉冲的末端,控制器获得最低(有效)位(LSB)的电平值,时钟脉冲停止,并且单稳(态)不再激活。
6.一旦单稳(态)时间(T m)消失,数据信号转向一个逻辑高电平并且单稳(态)电路不工作。
9697路如图二所示。
图二单片机串行控制电路图2.1 主控电路按照功能主要可分为存储器扩展电路、列信号处理电路、行地址译码及驱动、单片机控制器等几大部分组成。
存储器扩展电路包括常见的程序存储器2764的扩展及数据存储器扩展。
2764用来固化系统控制程序及图像或汉字代码表。
6264用来作为显示数据缓冲区。
2.2列驱动电路由于显示屏是按每行8个字,共计四大行的方式来组织LED象素的,因此,能够显示32个16x16点阵的显示屏有64行、128列。
它的工作原理如下:首先单片机从EPROM中依次取出第一行中的16个数据(即每一行的128列数据分别存放在16个字节中),在移位脉冲的作用下移入第一组74LS164并进行锁存,同理,单片机从EPROM中依次取出二至四组的第一行的16个数据分别送往二、四组的74LS164并锁存,然后发出列控制信号同时输出。
为增加列驱动能力,每列均用9014驱动。
2.3 行地址译码及驱动电路行地址译码电路的基本工作方法是将P1.0-P1.3这四根线经4-16线译码器74LS154产生16个行选信号,经达林顿管驱动输出行信号。
每行字占16个行信号,为提高扫描速度,我们将第一行至第四行字的相应行由一个行信号来控制,这样,整个显示屏在逻辑上只需要16个行信号即可。
它的工作原理如下:单片机向P1口送数据,经74LS154译码后使第一行选通,于是同时点亮三组中的第一行,延时1.2ms后关闭行扫描信号,重复上述步骤,直至将2-16行全部显示完为止,当显示完16行后,LED显示屏上就得到一副完整的图像。
3软件系统LED显示屏整个控制程序主要有主程序、显示子程序、行扫描子程序组成。
下面就上述程序的设计思想作一简单介绍。
主程序主要完成串行口的初始化及对各子程序模块进行有效的组织管理。
程序流程如图三所示。
程序在对串行口波特率进行合适的设定后,按图像的个数,依次调用显示子程序,将需要显示的图像以扫描的形式隔行扫描显示出来。