




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——基于单片机LED点阵广告屏设计与制作陕西理工学院毕业设计
基于单片机LED点阵广告屏设计与制作
[摘要]LED显示屏作为一种新型的显示器件,是由多个发光二极管按矩阵形式排列封装而成,寻常用来显示
时间、图文等信息。本设计是基于AT89C51单片机的16x16显示屏,其中包含了硬件、软件、调试等方案的设计。此外、该设计只需简单的级联就能实现显示屏的拓展,但级联时要注意不要超过驱动负载范围。
[关键词]AT89C51,LED,单片机
BasedonSCMLEDdotmatrixscreenofadvertisementdesignandproduction
Abstract:LEDdisplayasanoveldisplaydevice,iscomposedofapluralityoflightemittingdiodesarearrangedina
matrixformpackage,usuallyusedtodisplaytime,graphicinformation.ThedesignisbasedontheAT89C51MCU16x16displayscreen,whichincludeshardware,software,debuggingschemedesign.Inaddition,thedesignsimplycascadecanrealizethedisplayofexpansion,buttobecarefulnottoexceedthecascadedriveloadrange.
Keywords:AT89C51;LED;singlechipmicrocomputer
目录
引言21.LED显示屏设计的课题背景3
第1页共28页
陕西理工学院毕业设计
1.1LED显示屏的设计背景31.2LED显示屏的设计依据3
2.课题设计方案33硬件设计43.1设计框图及介绍4
3.251系列单片机简介43.3单片机最小应用系统电路设计63.4LED点阵介绍73.5LED显示方式83.6点阵的移动103.7LED阵列驱动电路13
4软件设计15
4.1单片机延时子程序154.2点阵左移显示的流程图及分析164.4调试19
终止语19致谢20
附录一.程序代码21附录二.主要芯片介绍22附录三.仿真电路图25附录四.实物图片错误!未定义书签。
引言
随着科技技术的不断发展,单片机以极其高的性价比受到人们的重视和关注,所以应用很广,发展
很快。单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为简单。LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、明了的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD节目以及现场实况。LED显示屏显示画面色调娇艳,立体感强,静如油画,动如电影,广泛应用于交通运输、车站、商场、医院、宾馆、证券市场、工业企业管理等公共场所。
第2页共28页
陕西理工学院毕业设计
LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比较的优点。LED之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。这些优点概括起来是:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。现代LED的发展很快,好多研究领域十分已经深刻,实际状况是:好多相关的知识已经远远超出我们在校学生的能力范围,所以在此只是简单的研究一下用单片机驱动的LED显示移动的汉字。目的有三:一是亲自制作一个简单实用的显示文字的LED点阵;二是通过制作LED点阵加强对LED点阵的了解和应用,以及复习稳定单片机知识;三是通过团队合作,加强团队合作的意识,为以后走向社会工作打下基础,并且加强了同学之间的友情。
为了吸引观众加强显示效果,可以有多种显示模式。最简单的显示模式是静态显示。与静态显示模式相对应,就有各种动态显示模式,它们所显示的图文都是能够动的。依照图文运动的特点又可以分为闪烁、平移、旋转、缩放等多种显示模式。产生不同显示模式的方法,并不意味着一定要重新编写显示数据,可以通过一定的算法从原来的显示数据直接生成。例如,按顺序调整行号,可以使显示图文产生上下平移;而顺序调整列显示数据的位置,就可以达到左右平移的目的;刷新的时间控制,要考虑运动图形文字的显示效果。刷新太慢,动感不显著;刷新太快了,中间过程看不清。一般刷新周期可控制在几十毫秒范围之内。本次毕业设计中,由本人寻求林赞扬,洪信根等同学的帮助,我负责硬件部分电路图的设计和软件部分程序的设计和调试,目的是应用简单便利的电路连接和程序完成汉字的换色与移动。洪信根负责用设计好的点阵电路制作PCB电路板,包括完成PCB板的制作,林赞扬负责制作另外一块在面包板上连的点阵线连板子的焊接与调试,各人的分工不同只是工作侧重点的不同,大家是在一起相互学习相互帮助,共同完成设计任务。
1.LED显示屏设计的课题背景
1.1LED显示屏的设计背景
随着科学技术的发展,社会不断的进步,电子事业也有着突飞猛进的改革。人们对公共传媒质量的要求越来越高。随着近几年来LED字符显示器的推出和不断完善,它的应用范围正在扩大,应用效果十分显著。不难看出,这一电子信息技术发展的新成果,在宣传、政治思想教育、广告消遣等方面的应用日益突出。
由于大规模集成电路技术的发展,其控制系统已能够取代以前利用繁杂电子线路或数字电路构成的控制系统,还可以软件控制来实现,并能够实现智能化。1.2LED显示屏的设计依据
根据LED显示屏设计的基本原理,结合其设计要求:“1.显示汉字;2.可以移动;3.可循环显示。〞由此设想出以下解决方案由AT89C52单片机最小系统、控制部分、显示部分组成。进行汉字的显示,再进一步进行右移。
2.课题设计方案
本文主要陈述的是“LED点阵字符显示电路〞,本课题的实现主要有两种方案。
方案一:由数字电路来实现,由移位寄放器与锁存器对字符数据进行存储,然后并行输入到显示屏,来实现汉字的显示。
方案二:由单片机编程控制来实现,方案利用单片机控制锁存器和译码器,由锁存器和译码器送出行选和列选来控制LED屏的亮灭,从而显示汉字。
方案论证:不难看出,选用数字电路来实现比较繁杂。由于用数字电路实现必需要有移位寄放器与锁存器对字符数据进行存储,然后并行输入到显示屏,不但如此,而且需要很大一部分的扩展电路才能实现。用数字电路实现不但大大提高成本,而且设计出的电路的灵活性差、不易调试、成本高等缺点。方案二不仅能够改进方案一设计的不灵活,还可进行扩展。通过比较,从设计方案的
第3页共28页
陕西理工学院毕业设计
优点及所设计的便利实用性,选择其次种设计方案。
本文是基于单片机来实现的。由于单片机具有体积小、重量轻、价格低廉、功耗低、控制功能强及运算速度快等特点,因而在国民经济建设、军事及家用电器等不同领域起到了举足轻重的作用。用单片机C语言编程,来控制16*16LED点阵块进行显示相应的汉字、图形、图像等。使用C来开发系统会更加便利快捷。一方面不会降低对硬件的控制能力,另一方面也不会使代码长度增加多少。假使运用的好的话,就能够开发出十分高效的系统。并且十分易于维护。
3硬件设计
3.1设计框图及介绍
LED点阵总体框图如图3.1所示,点阵电路大体上可以分成微机本身的硬件、显示驱动电路、控制信号电路三部分。控制电路部分包括一个51CUP和一些外围电路。在整个电路当中此控制电路部分相当于一个上位机,它负责控制整个电路以及相应的程序的运行、与PC机的串行通讯、以及给屏体电路部分发送命令。点阵显示屏体、以及它的行和列的各个驱动电路。由于两部分的电路在制板时可以放到一起,所以可以将其字库放到控制电路部分使用串行通讯方式来与屏体电路部分进行数据和命令的传送。
此显示电路采用扫描方式进行显示时,每行有一个行驱动器,各行的同名列共用一个列驱动器。由行译码器给出的行选通信号,从第一行开始,按顺序依次对各行进行扫描(把该行与电源的一端接通)。另一方而,根据各列锁存的数据,确定相应的列驱动器是否将该列与电源的另一端接通。接通的列,就在该行该列点燃相应的LED;未接通的列所对应的LED熄灭。
图3.1点阵显示的总体框图
3.251系列单片机简介
单片机(Microcontroller,又称微处理器)是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。
8051单片机的基本结构见图3.2。
第4页共28页
陕西理工学院毕业设计
图3.28051单片机的基本结构
8051是MCS-51系列单片机的一个产品。MCS-51系列单片机是Intel公司推出的通用型单片机,8051单片机系列指的是MCS-51系列和其他公司的8051衍生产品。这些衍生品是在基本型基础上加强了各种功能的产品。这些产品给8位单片机注入了新的活力,给它的开发应用开拓了更广泛的前景。
8051系列的内部结构可以划分为CPU、存储器、并行口、串行口、定时器/计数器、中断规律几部分。
(1)中央处理器
8051的中央处理器由运算器和控制规律构成,其中包括若干特别功能寄放器(SFR)。算术规律单元ALU能对数据进行加、减、乘、除等算术运算;“与〞、“或〞、“异或〞等规律运算以及位操作运算。
ALU只能进行运算,运算的操作数可以事先存放到累加器ACC或寄放器TMP中,运算结果可以送回ACC或通用寄放器或存储单元中,累加器ACC也可以写为A。B寄放器在乘法指令中用来存放一个乘数,在除法指令中用来存放除数,运算后B中为部分运算结果。
程序状态字PSW是个8位寄放器,用来寄放本次运算的特征信息,用到其中七位。PSW的格式如下所示,其各位的含义是:
CY:进位标志。有进位/错位时CY=1,否则CY=0。
AC:半进位标志。当D3位向D4位产生进位/错位时,AC=1,否则AC=0,常用于十进制调整运算中。
F0:用户可设定的标志位,可置位/复位,也可供测试。
RS1、RS0:四个通用寄放器组选择位,该两位的四种组合状态用来选择0~3寄放器组。。OV:溢出标志。当带符号数运算结果超出-128~+127范围时OV=1,否则OV=0。当无符号数乘法结果超过255时,或当无符号数除法的除数为0时OV=1,否则OV=0。
P:奇偶校验标志。每条指令执行完,若A中1的个数为奇数时P=1,否则P=0,即偶校验方式。控制规律主要包括定时和控制规律、指令寄放器、译码器以及地址指针DPTR和程序寄放器PC等。
单片机是程序控制式计算机,即它的运行过程是在程序控制下逐条执行程序指令的过程:从程序存储器中取出指令送指令存储器IR,然后指令译码器ID进行译码,译码产生一系列符合定时要求的微操作信号,用以控制单片机的各部分动作。8051的控制器在单片机内部协调各功能部件之间的数据传送、数据运算等操作,并对单片机发出若干控制信息。这些控制信息的使用专门的控制线,诸如PSEN、ALE、EA以及RST,也有一些是和P3口的某些端子合用,如WR和RD就是P3.6和P3.7,他们的具体功能在介绍8051引脚是一起表达。(2)存储器组织
8051单片机的存储器结构特点之一是将程序存储器和数据存储器分开,并有各自的寻址机构和寻址方式,这种结构称为哈佛结构单片机。这种结构与通用微机的存储器结构不同,一般微机只有一个存储器规律空间,可随意安排ROM或RAM,访存时用同一种指令,这种结构称为普林斯顿型。
8051单片机在物理上有四个存储空间:片内程序存储器和片外程序存储器、片内数据存储器和片外数据存储器。
8051片内有256K数据存储器RAM和4KB的程序存储器ROM。除此之外,还可以在片外扩展RAM和ROM,并且各有64KB的寻址范围。也就是最多可以在外部扩展2*64KB存储器。
8051的存储器组织结构如图3.3所示。
第5页共28页
陕西理工学院毕业设计
图3.38051存储器组织结构
64K字节的程序存储器(ROM)空间中,有4K字节地址区对于片内ROM和片外ROM是公用的,这4K字节地址是0000H~FFFH。而1000H~FFFFH地址区为外部ROM专用。CPU的控制器专门提供一个控制信号EA用来区分内部ROM和外部ROM的公用地址区:当EA接高电平日,单片机从片内ROM的4K字节存储器区取指令,而当指令地址超过0FFFH后,就自动的转向片外ROM取指令。当EA接低电平日,CPU只从片外ROM取指令。
程序存储器的某些单元是保存给系统使用的:0000H~0002H单元是所有执行程序的入口地址,复位以后,CPU总是丛0000H单元开始执行程序。0003H~002AH单元均匀地分为五段,用做五个中断服务程序的入口。用户程序不应进入上述区域。
8051的RAM虽然字节数不好多,但却起着十分重要的作用。256个字节被分为两个区域:00H~7FH时真正的RAM区,可以读写各种数据。而80H~FFH是专门用于特别功能寄放器(SFR)的区域。对于8051安排了21个特别功能寄放器,每个寄放器为8位,所以实际上128个字节并没有全部利用。
内部RAM的各个单元,都可以通过直接地址来寻觅,对于工作寄放器,则一般都直接用R0~R7,对特别功能寄放器,也是直接使用其名字较为便利。8051内部特别功能寄放器都是可以位寻址的,并可用“寄放器名.位〞来表示,如ACC.0,B.7等。3.3单片机最小应用系统电路设计
VCCU1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7123456789R310K10111213141516171819Y112M20C230PP10P11P12P13P14P15P16P17RESETEAP30/RXDP31/TXDP32P33P34P35P36P37X2X1VssAT89C51S4ALE/PPSENP27P26P25P24P23P22P21P20VCCP00P01P02P03P04P05P06P074039383736353433323130292827262524232221P2.7P2.6P2.5P2.4P2.2P2.1P2.04.7K*4VCCS1C310uR1P0.1P0.2P0.3P0.4VCCC130PS2S3图3.4单片机最小应用系统原理图
第6页共28页
陕西理工学院毕业设计
注:该最小系统由按键复位RESET电路、晶体振荡电路以及I/O接口电路组成。
复位的实现寻常用2种方式:开机上电复位和外部手动复位,本设计用的是外部手动复位。电路图3.5如下:
图3.5单片机复位图
AT89C51工作电压VCC=5V,其EA引脚需接高电平,5V电源电路如图3.6所示。
U21VCC+5V21VinACT14V-V+2C4100u/16VC51047805GNDD6C63C7104AC100u/16v图3.6单片机电源原理图
注:该电源电路主要模块为IC7805,它能输出稳定的5V电源,图中整流桥是将市电转变为直流电,电容起到虑波作用由7805的OUT引脚输出5V电压。[6]
3.4LED点阵介绍
8×8单色点阵共需要64个发光二极管组成,且每个二极管是放置在行线与列线的叉点上。本设计是一种实用的汉字显示屏的制作,制作的是点阵。考虑到元器件的易购性,使用8×8的点阵发光二极管模块,组成了16行16列的发光点阵。实际使用时可以根据这个原理自行扩展显示的字数。
下面的8×8单色点阵和8×8双色点阵可以看出,其实8×8双色点阵就是两块8×8单色点阵组合在一起的。要实现用两种颜色显示,只要在电路的设计中适当的连线就可以了。
8×8单色和双色点阵LED结构分别如下图3.8和3.9所示。
3
图3.78×8点阵外观及引脚图
第7页共28页
陕西理工学院毕业设计
图3.88×8单色点阵内部图图3.98×8双色点阵内部图
3.5LED显示方式[7]
汉字显示屏用于显示汉字、字符及图像信息,在公共汽车、银行、医院及户外广告等地方都有广泛的应用。下面是简单的汉字显示屏的制作,由单片机控制汉字的显示内容。为了降低成本,使用了四块8×8的LED点阵发光管的模块,组成了一个16×16的LED点阵显示屏,如图1.10所示。在这里仅做了四个汉字的显示,在实际的使用中可以根据这个原理自行的扩展显示的汉字,下面是介绍汉字显示的原理。
图3.10四块8×8的LED点阵组成16×16的LED点阵
LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮番点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以16×16点阵为例,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间,然后熄灭;再送出第2行的数据并锁存,然后选通第2行使其燃亮一致的时间,然后熄灭;….第16行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。
显示数据传输采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的状况下,留给行显示的时间就太少了,以致影响到LED的亮度。
第8页共28页
陕西理工学院毕业设计
采用串行传输中列数据准备和列数据显示的时间矛盾,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一行的列数据。为了达到重叠处理的目的,列数据的显示就需要有锁存功能。对于列数据准备来说,它应能实现串入并出的移位功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串行移位寄放器就可以准备下一行的列数据,而不会影响本行的显示。
LED点阵显示模块进行的方法有两种:
(1)水平方向(X方向)扫描,即逐列扫描的方式(简称列扫描方式):此时用一个P口输出列码决定哪一列能亮(相当于位码),用另一个P口输出行码(列数据),决定该行上那哪个LED亮(相当于段码)。能亮的列从左到右扫描完16列(相当于位码循环移动16次)即显示出一个完整的图像。
(2)竖直方向(Y方向)扫描,即逐行扫描方式(简称行扫描方式):此时用一个P口输出决定哪一行能亮(相当于位码),另一个P口输出列码(行数据,行数据为将列数据的点阵旋转90度的数据)决定该行上哪些LED灯亮(相当于段码)。能亮的行从上向下扫描完16行(相当于位码循环移位16次)即显示一帧完整的图像。
本设计应用的是第一种的扫描方法,即水平方向(X方向)扫描。
每一个字由16行16列的点阵形成显示,即每个字均由256个点阵来表示,我们可以把每一个点理解为一个像素。一般我们使用的16×16的点阵宋体字库,即所谓的16×16,是每一个汉字在纵横各16点的区域内显示的。汉字库从该位置起的32字节信息记录了该字的字模信息。事实上这个汉字屏不仅可以显示汉字,也可以显示在256像素范围内的任何图形。
我们以水平方向(x方向)扫描显示汉字的“江〞为例来说明其扫描原理,每一个字由16行16列的点阵组成显示,如图下的,假使用8位的AT89S51的单片机来控制,由于单片机的总线为8位,一个字需要拆分成两个部分。一般我们把它分解成上部分和下部分,上部分由8*16的点阵组成,下部分也由8*16的点阵组成。在本例中单片机首先显示的是左上角的第一列的部分,即第0列的P00~P07口。方向为P00到P07,显示汉字“江〞的时候,P00到P04都是灭的,P05亮,即二进制00001000,转换为16进制为08H,如图1.11所示。
上半部分第一列完成之后,继续扫描下半部分的第一列,为了接线的便利,我们仍设计成由上往下的扫描方式,即从P27向P20方向扫描,从上图可以看到,这一列所有的都不亮,所以代码为00000000,16进制为00H,然后单片机转向上半部的其次列,除了P05亮,其他的都不亮,即为00000100,16进制为04H,这一列扫描完成之后继续进行下半部分的扫描,除了P21亮,其他的为不亮,为二进制00100000,即16进制20H。
依照这个方法,继续进行下面的扫描,一共扫描32个8位,可以得出汉字“陕〞的扫描代码为:B7FH,FFH,40H,00H,44H,20H,5AH,12H,61H,E2H,14H,84H,13H,88H,10H,B0H;
DBFFH,C0H,10H,A0H,11H,90H,12H,88H,14H,84H,10H,82H,00H,82H,00H,00H;\陕\
图3.11点阵显示原理图
由这个原理可以看到,无论显示何种字体或图像,都可以用这种方法来分析出它的扫描代码从
第9页共28页
陕西理工学院毕业设计
而显示在屏幕上。了解汉字的显示原理之后,那如何得到汉字的字模信息呢?现在有一些现成的汉字字模生成软件,可从网上下载汉字字库提取程序直接提取字库,如图1.12所示的为一种字模生成软件,软件开启后输入汉字,点击“检取〞后,十六进制数据汉字代码即可以自动生成,把我们需要的竖排数据复制到我们的程序即可
图3.12汉字字模生成软件
3.6点阵的移动
以下以16×16点阵为例介绍点阵的移动。要显示一个字符,该字符的点阵数据可以列向(纵向)16点组字,又可以行向(横向)16点组字。无论哪一种组字方法,都既可以显示字符的水平方向的移动,又可以显示竖直方向的移动。
1.显示字符的左右移动
(1)列扫描方式左移动:列向组字显示字符水平方向的移动(左滚动)在这里有两个方法:
方法1:延长数组法。将原来字符点阵数组的16个数据重复一遍延长,点阵数组的数据个数为32个。每扫描仪帧取8个数据显示,下一帧取数要在数组中后移一个数取数。循环一遍扫16帧。可以假想有两块16×16的点阵模块(共32帧)水平平行排列,用一个恰好能罩住8列点阵的中空方框去罩这个点阵,第1(第1帧)罩住最左边数起第一列开始的16列,就扫描显示这16列;第2次(第2帧)使方框右移一列,罩住做左边数起第2列开始的16列,就扫描显示这16列;······;这样每扫描完一帧使方框右移一列,最终第16次(第16帧)时,罩住左边数起的第16列开始的16列,就扫描显示这16列。如此完成16帧画面的扫描显示,也就完成了整个一次移动循环扫描、之后反复循环,即可浮现显示字符沿水平向左移动的图像,如图1.13所示。
图3.13方框图法左右移动示意图
第10页共28页
陕西理工学院毕业设计
由于是列向组字(列扫描方式,点阵数据为行码,上边为地位下面为高位),希望显示移动的一个字符,第1次扫描从行码的点阵数组中取第1~16个数据,送行码输出口,对应于这8个数据,同时用列码输出口输出列码,分别控制第1~16列。扫描完前16个数据之后,第2次扫描从点阵数组中取第2~14个数据(第17个数据与地1个数据同),送行码输出口,对应于这16个数据,同时用列码输出口输出列码,仍分别控制扫地1~16列。第3次扫描从点阵数组中取第3~18个数据(第18个数据码与地2个数据码一致)扫描······;如此实现字符向左移动。
以上完成一个图形移动的方法,也可以看成是移动16个不同的字形。如图2.13所示,首先扫描第一个字型,同样是16行,16次扫描,16次显示;完成一个字型的扫描以后,再扫描其次个字型;完成其次个字型的扫描之后,再扫描第三个字型······依此类推,即可产生该文字的左移的感觉。
图3.13字形法左右移动示意图
假设假使原本某个汉字的字型(第一个字型),其编码为:
00H,10H,20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C0H,0D0H0E0H,0F0H;其次个字型的编码为:
10H,20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C0H,0D0H0E0H,0F0H,00H,
也就是把第一个字型的编码中,第1行显示数据,变为第2行显示数据;第2行显示数据,变成第3行显示数据;第3行显示数据,变成第4行显示数据;第4行显示数据,变成第5行显示数据······以此类推。
当第一个字型扫描显示完成之后,就进行这样的动作调整,以产生其次个字型的编码。同样的,当其次个字型扫描完成之后,就进行这样的调整动作,以产生第三个字型的编码。这个调整动作时先将16个编码根据序填入存储器,例如第1行编码存入20H,其次行编码存入21H······要进行左移调整时,则先将20H地址的数据转移到36H地址,再将21H地址的数据转移到20H地址,将22H地址的数据转移到21H地址,将23H地址的数据转移到22H地址,将24H地址的数据转移到23H地址,将25H地址的数据转移到24H地址,将26H地址的数据转移到25H地址,将27H地址的数据转移到26H地址,将28H地址的数据转移到27H地址······
方法2:数组数据“循环左移法〞(适合用C语言编写,在此仅作了解)。注意,不是把二进制数据按位循环左移,而是把数组中的数据按其在数组中的位置循环左移。具体的方法入下。
原字符点阵数组中的16个数据不延长,但下一帧取的16个数据,是把上一帧的16个数据的位置(先后顺序)“循环左移〞一次,即原来第2个移到第1个,原来第3个移到第2个······原来第1个移到第16个。实现数组数据循环左移的方法有:第一,遍一个“数组数据循环左移子程序〞,该子程序每执行一次可把数组中的额数据循环左移一次,主程序中先调用一次该子程序,时数组中的数
第11页共28页
陕西理工学院毕业设计
据循环左移这一次,然后再从数组中取数据显示。当数组中的额数据个数较多时,片内RAM将不够大,必需将数组定义在片外RAM中。其次,不用子程序,而是用变量判断控制实现数组数据的循环左移。
(2)行扫描方式左移:行向组字显示字符水平方向的左移。假使是行向组字(行扫描方式,点阵数据为列码,左边为敌位右边为高位),希望显示向左移动的一个字符,第1次扫描从列码的点阵数组中取第1~16个数据,送到列码输出口,对应的8个数据,同时用行码输出口输出行码,分别控制扫描第1~16行。扫描完成这16个数据之后,第2次扫描的第16个数据,应将原来第1次扫描的16列码每一个都循环右移一位(假使是显示右移则应循环左移),再进行扫描。如此,每进行下一次扫描,把上一次扫描的16个列码都循环右移一位,再进行扫描。
数据的右移与数据的左移相像,只是取码的顺序相反而已,在此就不再赘述。2.数据的上下移动(1)列扫描方式向上移动
列向组字显示字符竖直方向的移动。若是列向组字,希望显示向上移动一个字符,第1次扫描从行码的点阵数组中取第1~16个数据,送行码输出口,对应于这16个数据,同时用列码输出口输出列码,分别控制扫描第1~16列。由于是列向组字(上高下低),扫描完成这16个数据后,第2次扫描的16个数据,应将原来的第1次扫描的16个行码每一个都循环右移一位,使显示的点都上移一行(假使是显示向下滚动则应循环左移),再进行扫描。如此,每进行下一次的扫描,把上一次的16个行码都循环右移一位,再进行扫描就实现了数据的向上移动。
也可以用字型的方法简单理解,以下的16×16的LED显示一个字是8个字型,首先扫描的而是第一个字型,同样是16行,16列扫描,16次显示;完成一个字型后,再扫描其次个字型;完成其次个字型后,再扫描第三个字型······以此类推,即可产生该文字向上移动的感觉
当把第一个字型编码中,每行显示的数据都右移一位,以产生其次个字型编码,即可产生字符向上滚动的感觉。
当第一个字符扫描完成后,就进行这样的调整动作,以产生其次个字型的编码。同样的,当其次个字型完成之后,就进行这样的调整动作,以产生第三个字型的编码。调整的动作是先将8个编码根据序填入储存器,例如第1行编码存入20地址,第2行编码存入21地址······要进行上移调整时,则从20地址数据开始,每笔数据都右移一位即可。
下图2.15仅以字型移动的方法画图。
第12页共28页
陕西理工学院毕业设计
图3.15字形法上下移动示意图
(2)行扫描方式上下移动
行向组字显示字符竖直方向的移动
方法1:延长数组法。假使是行向组字,希望显示向上移动的一个字符,第1次扫描从列码的点阵数组中取第1~16个数据,送列码输出口,对应于这8个数据,同时用行码输出口输出行码,分别控制扫描第1~16行。第2次扫描从点阵数组中取第2~17个额数据(第17个数据与地1个数据同),分别送列码输出口,对应于这16个数据,同时用行码输出口输出行码,仍分别控制地1~16行。第3次扫描从点阵数组中取第3~18个数据(第18个数据与地2个数据同)扫描;······如此就实现了字符的向上移动。
方法2:数组数据“循环左移法〞。实现数组数据循环左移的方法与上类似。也有:用数组数据循环左移子程序;不用子程序,而是用变量判断控制实现数组数据的循环左移。3.7LED阵列驱动电路
正向点亮一颗LED,至少也得10到20毫安,若电流不够大,则LED不够亮!而不管是8051的输入还是输出端其高态输出电流都不是很高,不过1~2毫安而已。因此,很难直接高态驱动LED。这时候就需要额外的驱动电路,分别针对共阳极和共阴极LED阵列,有两种不同的驱动方式。针对输出态的不同,分为:高态扫描-高态显示,高态扫描-低态显示,低态扫描-高态显示和低态扫描-低态显示四种方式。下面针对设计中实际用到的一种驱动方式介绍一种:共阴型低态扫描-低态显示信号驱动电路。
图2.17所示是针对共阴性LED阵列而设计的驱动电路,在这种驱动电路采用低态扫描,也就是任何时间只有一个高态信号,其他则为低态。一行扫描完成之后,再把高态信号转到邻近的其他行。扫描信号经限流电阻接到PNP晶体管的基极,晶体管的集电极接地,射极则连至LED点阵的列引脚,若要同时点亮该列的16个LED,则晶体管的电流必需大于200毫安才行。常用的2N3904之类就可以达到当低态的列扫描信号输入晶体管的基极后,该晶体管即为正向,而产生电流,即可使该列的LED具有点亮的条件
所要的显示信号连接到一个PNP晶体管的基极,而该晶体管的射极连接到VCC,同样的,当低态的显示信号输入时,晶体管的集电极电流将流入行LED的阳极,即可点亮该行的LED。如图1.17
第13页共28页
陕西理工学院毕业设计
所示.
图3.17共阴型低态扫描-低态显示信号驱动电路
若要并接多个LED阵列,如连接使用4个8×8LED阵列,连接成16×16LED阵列,则一个扫描信号同时驱动两个LED阵列。如在本设计中要显示的字比较大,用一个8×8的点阵无法显示完整,这就需要用四块8×8的点阵组成一块16×16的点阵,这样就可以显示完整的汉字了,若要并联多个8×8的LED组成16×16的点阵,则一个扫描信号同时要驱动两行的LED。如下图1.18所示。
图3.1816×16的点阵驱动图
这时候就需要靠锁存器(74LS373)将这两组显示信号锁住,此处的锁存器是以低态输出的,其输出的电压可达24毫安,足以驱动一个LED;若嫌不足,可以选用74A373其输出的电压可达48
第14页共28页
陕西理工学院毕业设计
毫安,当74LS373得G脚为高态时,数据可以从输入端传输到锁存器中;G脚为低态时,数据被锁住,不会随输入端而变。另外OC脚为输出控制引脚,当OC脚为高态时,输出浮现高阻抗;OC为低态时,数据会由锁存器输出。
在这个电路之中驱动的扫描信号总共有16条,假使直接由8051输出,将占用2个PORT口,浪费了宝贵的资源,不太理想,在此使用的是一个4对16的译码器(74LS154),这个译码器是将输入的16进位码解码输出低态的扫描信号。输出的低态扫描信号可直接接到PNP晶体管的基极,假使太大的话也可以先经过限流电阻再接到PNP晶体管的基极,信号最终经过晶体管的放大后即可推动16个LED点阵了。
4软件设计
4.1单片机延时子程序
延时程序在单片机编程中使用十分广泛,也很重要,在本毕业设计的程序中用到了延时子程序,所以在此详细的表达一下。在弄清延时程序指令的用法之前,要明白的了解延时程序的基本概念,机器周期和指令周期的区别和联系、相关指令的用法等。
我们知道程序设计是单片机开发最重要的工作,而程序在执行过程中往往需要完成延时的功能。例如在本设计中,行向的扫描要控制每行的扫描时间,还有所有的字移动有一定的时间间隔,而在所有的字移动一遍终止的一瞬间到下一遍移动开始的一瞬间要有延时,这时的延时可以和移动的时间一致以保持移动的连贯性,也可以不同作为每次从头开始的停顿,在上述就可以通过延时程序来完成。
1.机器周期和指令周期
(1)机器周期是指单片机完成一个基本操作所花费的时间,一般使用微秒来计量单片机的运行速度,51单片机的一个机器周期包括12个时钟振荡周期,也就是说假使51单片机采用12MHz晶振,那么执行一个机器周期就只需要1μs;假使采用的是6MHz的晶振,那么执行一个机器周期就需要2μs。
(2)指令周期是指单片机执行一条指令所需要的时间,一般利用单片机的机器周期来计量指令周期。
在51单片机里有单周期指令(执行这条指令只需一个机器周期),双周期指令(执行这条指令只需要两个机器周期),四周期指令(执行这条指令需要四个机器周期)。除了乘、除两条指令是四周期指令,其余均为单周期或双周期指令。也就是说,假使51单片机采用的是12MHz晶振,那么它执行一条指令一般只需1~2微秒的时间;假使采用的是6MHz晶振,执行一条指令一般就需2~4微秒的时间。
以12MHZ晶振为例,指令周期、机器周期与时钟周期的关系是:
指令周期:CPU执行一条指令所需要的时间称为指令周期,它是以机器周期为单位的,指令不同,所需的机器周期也不同。
时钟周期:也称为振荡周期,一个时钟周期=晶振的倒数。MCS-51单片机的一个机器周期=6个状态周期=12个时钟周期。
MCS-51单片机的指令有单字节、双字节和三字节的,它们的指令周期不尽一致,一个单周期指令包含一个机器周期,即12个时钟周期,所以一条单周期指令被执行所占时间为12×(1/12000000)=1μs。
了解以上概念后,那么可以依据单片机器件手册中89C51的指令执行周期和其所用晶振频率来完成需要确切延时时间的延时程序。
2.延时指令
在单片机编程里面并没有真正的延时指令,从上面的概念中我们知道单片机每执行一条指令都需要一定的时间,所以要达到延时的效果,只须让单片机不断地执行没有具体实际意义的指令,从而达到了延时的效果。
(1)数据传送指令MOV
第15页共28页
陕西理工学院毕业设计
数据传送指令功能是将数据从一个地方复制、拷贝到另一个地方。
如:MOVR7,#80H;将数据80H送到寄放器R7,这时寄放器R7里面存放着80H,就单这条指令而言并没有任何实际意义,而执行该指令则需要一个机器周期。
(2)空操作指令NOP
空操作指令功能只是让单片机执行没有意义的操作,消耗一个机器周期。(3)循环转移指令DJNZ
循环转移指令功能是将第一个数进行减1并判断是否为0,不为0则转移到指定地点;为0则往下执行。
如:DJNZR7,KK;将寄放器R7的内容减1并判断寄放器R7里的内容减完1后是否为0,假使不为0则转移到地址标号为KK的地方;假使为0则执行下一条指令。这条指令需要2个机器周期。
循环转移指令(DJNZ)除了可以给定地址标号让其跳转外,还可以将地址标号改成$,这样程序就跳回本指令执行。例如:DJNZR7,$;R7内容减1不为0,则再次执行本指令;为0则往下执行,当R7的值改为10时,则执行完该条程序所需的时间为2*10=20μs。
利用以上三条指令的组合就可以比较确切地编写出所需要的延时程序。下面是本设计的程序中延时程序的计算:
MOVR3,#200;①1
D1:MOVR5,#250;②1F1:DJNZR5,F1;③2*R5
DJNZR3,D1;④2*R3+(1+2*R5)*R3RET2
上面这个子程序共有四条指令,现在分别就每一条指令被执行的次数和所耗时间进行分析。第一句:MOVR3,#200在整个子程序中只被执行一次,且为单周期指令,所以耗时1μs其次句:MOVR5,#250从②看到④只要R3-1不为0,就会返回到这句,共执行了R3次,共耗时200μs
第三句:DJNZR5,F1只要R5-1不为0,就反复执行此句(内循环R5次),又受外循环R3控制,所以共执行R3*R5次,因是双周期指令,所以耗时2*R3*R5μs。所以确切延时时间为:1+(1×200)+(2×250×200)+(2×200)+2=(2*250+3)*200+3=100603μs≈100ms=0.1s
4.2点阵左移显示的流程图及分析
流程图(图2.1)和程序的简要说明:在程序的开始设定初始的地址是0H,并定义了〞选择符号F〞的初值为0,为下面的点阵扫描的出口选择准备。在主程序的开始的延时子程序,延时0.1秒,既是在程序通电启动开始的停顿,也作为一次移动的末尾时到开始下一次重复移动开始之间的停顿,在上面的“延时子程序〞中已经介绍了计算的方法。程序接着向下运行,定义了取码指针的位置,设为00H的初始位置,再下面的74LS154扫描指针的初值设为00H,是由于扫描要从开始的零点开始扫。程序的循环运行是从M3开始的,M3的开始10行程序是点阵颜色的选择,即确定列扫描出口的选择,由于F的初值是0,所以先从扫描信号先从P1口输出,即首先显示的是红色的点阵。扫描信号输出后,取码指针先去的第一个码送到点阵的上半部分,开启上部分点阵的74LS373锁存器关闭下面部分74LS373锁存器,把信号送到点阵的上部分。再指针加1,关闭上部分点阵的74LS373锁存器,开启下面部分74LS373锁存器,取相邻的码送到点阵的下半部分,紧挨着的延时程序是设定每列扫描的时间:MOVR3,#50;DJNZR3,$;
第16页共28页
陕西理工学院毕业设计
延时时间为:1+(2*50)=101us≈0.1ms
下面的“DJNZR6,M3;〞到M3的循环可以计算显示一次一个整屏的时间为0.1ms*16=1.1ms,再下面的“DJNZR1,M2;〞到M2的循环可以计算出每个屏的停留时间,也是向左每移动一下的时间间隔为0.1ms*16*65=104ms=0.1s。
当字型向左移动一位的时候,取码指针应在先加2再进行下一个字型的取码,由于本设计每1列的码为2个。最终的部分代码:XRLA,#128;JNZM1;CPLF0;
JMPSTART;
的意思是:在控制字型移动完以后,返回到头重新开始移动,由于在本设计是显示6个字型,6个字型的码为192个,取码指针的初始为0,每次加2,到192时循环终止,改变F的状态,跳到程序的最上面开始部分,开始黄色字型的移动显示。
说明一下:本设计是以显示6个字的循环为例的,正如前面所说,字型可以任意加进去,显示任意多的字左移的显示,还可以显示一些符号和图形。只要有字型的代码,再稍微改一下程序就可以显示了。
显示效果:开始停0.1秒,显示向左移动的红色字“XXXX〞,移动的速度为每0.1秒移动一下,到左后一个字。在主程序的开始的延时作为一次移动的末尾时到开始下一次重复移动开始之间的停顿,和字符移动的时间间隔一致,保持了移动的平稳连贯性。
第17页共28页
陕西理工学院毕业设计
开始START:清除屏幕取码指针载入A到TABLE取下半部数据F=0P0.0置1,P0.1清0输出至P2延时取码值加1并延时取码指针20H初值为00清除屏幕154扫描指针初值为00扫描下一行M2显示1屏?Y清除154扫描设置每屏停留时间N每屏4字,取码指针存R0M3扫描指针→AYF=0?P0.2清零P0.1清零P0.2置1输出至P0.3扫描M4取码指针载入ANNNM1每屏停留的时间Y取码指针载入AP0.1置1输出至P0.1扫指针加2并回存到TABLE取上半部数据P0.0清0,P0.1置1输出至P2口显示取下一个码8个字都左移完?YF0取反RET图4.1点阵左移显示的流程图第18页共28页
陕西理工学院毕业设计
4.3PROTEUS仿真
Proteus仿真时,单片机需要加载程序,加载程序为.HEX文件。本设计利用KeilμVision2,在新建Keil项目时选择AT89C51单片机作为CPU,将源程序导入,在“OptionsForTarget〞对话窗口中,选中“Output〞选项中的“CreateHEXFile〞,编译链接后就可以生成.HEX文件。在ProteusISIS中,选中AT89C51并单击鼠标左键,对AT89C51进行设置,设置单片机时钟频率为12MHz,依照正确的文件路径加载.HEX文件。对单片机设置完毕后就可以开始仿真了。仿真过程中如有硬件问题可在ProteusISIS中直接修改,如有软件问题可在KeilμVision2中直接修改,通过Keil与Proteus的联合调试就可以得到满意的结果。利用Proteus实现了对点阵式LED滚动汉字显示屏的仿真,说明程序和电路图都没有问题。4.4调试
调试主要分为硬件调试和软件调试:
硬件调试:在焊接电路板的时候,应当从最基本的最小系统开始,分模块,逐个进行焊接测试。在对各个硬件模块进行测试时,要保证软件正确的状况下去测试硬件,要不然发生错误时,不知道终究是哪一方出错了。当然,在设计的过程中也存在着失误和不足,在调试中进行修改了。
软件调试:软件部分是先参考书上的例子,然后自己根据硬件电路写程序,由于以前所学是单片机汇编语言,所以这个系统在编写程序过程中都采用汇编语言编写。刚刚开始,编写不会一次性通过,经过细心分析修改最终编译成功。但是,在实际写如S51中,LED显示屏出现各种各样的乱码,通过再次认真细心分析屡屡修改程序后,程序能够正常运行。
[8]
终止语
本次毕业设计从5月中旬到现在有一个多月,回想着些天我感到学到了好多东西,在写这个心得的时候,我想就这些天的收获,说一说自己内心的想法。
本设计的是一个室内用16x16的点阵LED图文显示屏,能够在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、明了无串扰。图形或文字显示有静止、移入移出等显示方式。本系统具有硬件少,结构简单,简单实现,性能稳定可靠,成本低等特点。
总结本文的研究工作,主要做了下面几点工作:
一、通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,明白地了解了LED显示屏与其它显示屏相比较有那些优点,明确了研究目标。并且通过对单片机资料的查阅和应用,更进一步增加了对单片机知识的理解和运用能力。并证明白自己的思路:“查资料→思考总结→运用→找出过错,再查资料和向别人询问→再次运用〞的正确性。
二,本文设计的LED显示屏能够实现在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、明了无串扰。图形或文字显示有静止、移入移出等显示方式。
三,本文列出了系统具体的硬件设计方案,硬件结构电路图,软件流程图和具体汇编语言程序设计与调试等方面。
四,在这次毕业设计的过程中学会了Protel的基本使用,感到Protel对应用电子专业的同学来说是一门很有用的课程。在运用Protel时要特别防备,例如在画PCB电路板的时候,要注意基本的布板原则。例如,在进行PCB布板的时候,滤波电容不够靠近芯片的电源脚和地脚。
五,通过这次毕业设计,重新复习并进一步加强了动手的能力,学以致用,把只是运用到实际生活中才是根本目的。
六,存在问题:没有考虑仿真软件是一个理想的仿真环境,而实际连接的电路板会由于譬如连接不当,相邻器件间的干扰等等的问题导致在仿真软件中能良好运行的程序,出现显示问题,经过排查和合理的器件摆放焊接,问题解决。
总体来说这次的毕业设计很成功,达到了预想的目的:学到了知识,提高了能力,完成了任务。有点缺憾是时间有限,不能进一步深入和扩散学习和研究。希望有时间可以对程序和电路图作更进一步的改进,譬如实现点阵的上下移动,对角线移动,三色显示等。
第19页共28页
陕西理工学院毕业设计
致谢
经过一个月的努力,毕业设计终究完成了,在此期间,学到了好多有用的知识,把理论知识运用到实践中,积累了宝贵的经验。
在此期间,特别感谢刘老师对我的指导和关心,还有同学们对我的帮助,是他们在我毕业的最终关头给了我们巨大的帮助与勉励,使我能够顺利完成毕业设计,在此表示衷心的感谢。老师们认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助,感谢他耐心的辅导,同时感谢母校对我四年来的教育和关心,在这里我不仅学到了专业知识,还学到了好多做人的道理。使我明确了以后的方向,树立了良好的价值观,在这里学到的一切都使我终身受益。
再次衷心感谢所有关心和帮助过我的老师和同学,感谢你们。
陕西理工学院毕业设计
附录一.程序代码
ORG0000H;
CLRF0;颜色选择符号F0清零START:MOVA,#00H;清除屏幕MOVP2,A;显示信号输出到P2口MOVR3,#200;延时程序D1:MOVR5,#250;F1:DJNZR5,F1;DJNZR3,D1;
MOVE:MOV20H,#00;取码指针地址20H初值为00MOVR4,00H;74LS154扫描指针初值为00M1:MOVR1,#65;每屏停留时间
M2:MOVR6,#16;每屏一个字,16个数据码MOVR0,20H;取码指针存入R0M3:MOVA,R4;扫描指针载入ACLRP0.2;清P0.2SETBP0.3;P0.3置1
MOVP1,A;输出至P1扫描列SJMPM4;
ORGANGE:MOVP3,A;CLRP0.3;
M4:MOVA,R0;取码指针载入A
MOVDPTR,#TABLE;数据指针指到TABLEMOVCA,@A+DPTR;到TABLE取上半部数据码SETBP0.1;P0.1口置1CLRP0.0;清P0.0口
MOVP2,A;输出至P2口显示INCR0;取下一个码
MOVA,R0;取码指针载入A
MOVDPTR,#TABLE;数据指针指到TABLEMOVCA,@A+DPTR;到TABLE取下半部码SETBP0.0;CLRP0.1;
MOVP2,A;输出到P2口显示INCR0;取码值加1MOVR3,#50;延时DJNZR3,$;
MOVA,#00H;清除屏幕MOVP2,A;
INCR4;扫描下一行
DJNZR6,M3;判断显示一屏
MOVR4,#00;清除74LS154扫描指针为00DJNZR1,M2;每屏停留时间MOVA,20H;取码指针载入AADDA,#02;指针加2
第21页共28页
陕西理工学院毕业设计
MOV20H,A;再存入20H地址取码指针XRLA,#128;四个字是否都左移完?JNZM1;否,跳到M1
SJMPSTART;是,跳到STARTTABLE:
DB7FH,FFH,40H,00H,44H,20H,5AH,12H,61H,E2H,14H,84H,13H,88H,10H,B0H;DBFFH,C0H,10H,A0H,11H,90H,12H,88H,14H,84H,10H,82H,00H,82H,00H,00H;DB40H,00H,4FH,FEH,48H,14H,48H,24H,48H,44H,7FH,84H,48H,04H,48H,04H;DB48H,04H,7FH,84H,48H,44H,48H,44H,48H,44H,4FH,FEH,40H,00H,00H,00H;DB22H,08H,22H,08H,3FH,F0H,22H,10H,22H,12H,00H,02H,7FH,A2H,49H,22H;DB49H,22H,7FH,FEH,49H,22H,49H,22H,49H,22H,7FH,A2H,00H,02H,00H,00H;DB00H,04H,00H,04H,40H,04H,40H,04H,40H,04H,40H,04H,40H,04H,7FH,FCH;DB40H,04H,40H,04H,40H,04H,40H,04H,40H,04H,40H,04H,00H,04H,00H,00H;DB02H,00H,0CH,40H,08H,40H,48H,40H,3AH,40H,2AH,40H,0AH,42H,8AH,41H;DB7AH,FEH,2BH,40H,0AH,40H,18H,40H,EAH,40H,4CH,40H,08H,40H,00H,00H;DB7FH,FFH,40H,00H,4CH,40H,52H,20H,61H,C1H,30H,82H,24H,8CH,24H,F0H;DBA4H,80H,64H,80H,24H,FEH,24H,81H,24H,81H,30H,81H,20H,8FH,00H,00H;END附录二.主要芯片介绍1.8051系列的单片机
AT89C51单片机为好多嵌入式控制系统提供了一种灵活性高且价廉的方案。图片见下图附录1。
附录189S51管脚图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年金融行业金融科技在金融扶贫中的创新与实践报告
- 2023年电气仪表作业试题库
- 2024年“巴渝工匠”杯重庆市第十三届青年职业技能大赛【焊工】考试题库(含答案)
- 基于大数据的2025年互联网金融平台信任维护机制创新研究
- 2024年《学弈》教学反思
- 2023版全国建筑电焊工考试题库含答案
- 甘肃省张掖市2024-2025学年高一下学期期末考试英语试卷(含答案无听力原文及音频)
- 二零二五年度二手房装修工程监理、施工与验收协议书范本
- 二零二五年度影视拍摄场地租赁及许可协议
- 二零二五年度幼儿园保安劳动合同范本及年度健康体检
- QGDW11337-2023输变电工程工程量清单计价规范
- 急慢性心力衰竭治疗
- 户外全彩LED大屏施工技术方案
- 河流特征描述专题复习专题培训课件
- 2022新修正《山东省安全生产条例》培训学习
- 骨质疏松性骨折诊疗指南
- GB/T 9113.1-2000平面、突面整体钢制管法兰
- GB/T 6283-2008化工产品中水分含量的测定卡尔·费休法(通用方法)
- GB/T 2818-2014井用潜水异步电动机
- 沈阳农业大学校徽校标
- 汽车车身碰撞估损全套课件
评论
0/150
提交评论