




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连东软信息学院高职毕业设计(论文)论文题目论文题目:基于单片机的LED点阵显示屏的设计与实现系所:电子工程系专业:嵌入式系统工程学生姓名:学生学号:指导教师:导师职称:讲师完成日期:2013年4月25日大连东软信息学院DalianNeusoftUniversityofInformation大连东软信息学院毕业设计(论文)摘要IV基于单片机的LED点阵显示屏的设计与实现摘要随着电子技术的飞速发展,点阵式显示器件越来越被人们所重视和熟知,在我们日常生活中随处可见,所谓LED点阵,它由若干个能发出多种色彩的二极管组成,通过对不同部分的亮灭控制来显示字符,这种显示屏幕具有色彩鲜艳、视角大、工作稳定、低功耗等众多优点,所以越来越得到商家的青睐,近些年来户外LED广告发展迅猛,与传统广告相比,显示内容更换及时,无需频繁更换,节省劳动力,相信在未来LED显示技术会更深层次的融入到千家万户的生活工作当中。本次设计实现了基于单片机的小型LED显示屏,共分为两个部分,主控制卡和显示屏幕,控制卡由单片机作为控制芯片,DS1302时钟芯片和DS18B20温度传感器作为日期、温度的信息来源,并利用C语言编程下载实现对单片机各个引脚的控制;显示屏幕由发光二极管排列组成,74HC595芯片(八位并行输出位移寄存器)作为列扫描电路,74HC138译码器作为行扫描电路,利用动态扫描原理实现温度、日期、文字等信息的显示。本次设计主要分为三个阶段,分别是前期规划、硬件制作和软件调试,这三部分也是做嵌入式开发都要经历的部分,实现了理论与实践相结合的学习目标,增强了动手能力,也对一个系统的工程开发有了一定的认识。关键词:LED点阵,发光二极管,单片机,嵌入式系统大连东软信息学院毕业设计(论文)AbstractDesignandImplementationofMCU-basedLEDDotMatrixDisplayAbstractToday,Therapiddevelopmentofelectronictechnology,Dot-matrixdisplayhasbeengrowingattention,known.Everywhereinourdailylife,Theso-calledLEDdotmatrix,Bycontrollingthesemiconductorlight-emittingdiodelightofftoachievetext,pictures,videodisplay,Ithasavarietyofcolorscanbeissuedanumberofdiodes,Therecontrolledbydifferentpartsofthelightofftodisplaycharacters,Thedisplayscreenhasacolorful,largeviewingangle,stable,lowpowerconsumptionandmanyotheradvantages,Therefore,Recognizedbymoreandmorebusinesses,Inrecentyears,therapiddevelopmentofoutdoorLEDadvertising,Comparedwithtraditionaladvertising,Displaytimelyreplacement,Withoutfrequentreplacement,Labor-saving,IbelieveinthefutureofLEDdisplaytechnologywillbedeeperintothelifeandworkamongthethousandsoffamilies.Thedesignandimplementationofamicrocontroller-basedsmallLEDdisplay,It’sdividedintotwoparts,Themaincontrolcardandthedisplayscreen,Controlledbythemicrocontrollerasacontrolchipcard,DS1302clockchipandDS18B20temperaturesensor,Asasourceofinformationoftimeandtemperature,DownloadandusetheCprogramminglanguagetoachievecontrolofeachpinonthemicrocontroller,Adisplayscreenconstitutedbyalightemittingdiode,74HC595chip(eightparalleloutputshiftregister)ascolumnscanningcircuit,74HC138decodercircuitaslinescan,Dynamicscanningprincipletoachievethetemperature,date,textandotherinformationisdisplayed,Thedesignisdividedintothreestages,Namely,pre-planning,hardwareproductionandsoftwaredebugging,Thesethreepartsarealsomadetogothroughpartoftheembeddeddevelopment,Achievethelearningobjectivesofcombiningtheoryandpractice,Enhancedability,Thereisadegreeofunderstandingoftheprojecttodevelopasystem.Keywords:LEDdotmatrix,Light-emittingdiodes,MCU,EmbeddedSystems大连东软信息学院毕业设计(论文)目录目录TOC\o"1-3"\u摘要 IAbstract II第1章项目概述 11.1项目背景 11.2项目简介 11.3应用范围 1第2章项目实施方案 32.1概述 32.1.1项目方案 32.1.2设计思路 32.1.3动态扫描原理 42.1.4驱动电路原理 42.1.5所需器件简介 42.2开发环境 52.3硬件设计 52.3.1硬件系统框图 52.3.2原理图设计 62.3.3典型电路设计 72.3.4电路设计思路 72.4软件设计 82.4.1软件系统框图 82.4.2时钟数据处理 82.4.3温度传感器数据处理 92.4.4中文字幕数据处理 92.4.5程序流程图 9第3章项目实施过程 113.1硬件实现过程 113.1.1前期准备 113.1.2电路焊接 133.2软件实现过程 143.2.1定义 143.2.2主函数的设计 153.3调试过程 153.3.1硬件调试过程 163.3.2软件调试过程 16第4章项目成果 184.1硬件成果物 184.1.1作品展示 184.1.2功能解读 184.2控制卡展示 19第5章结论 20参考文献 21致谢 22大连东软信息学院毕业设计(论文)-第1章项目概述早期由于技术原因发光二极管发光效率低,光强弱,所以限制了LED只适宜在室内场合、家电、仪表等方面使用,随着近些年来这一领域飞速发展,LED技术出现了新的商机,被广泛应用于社会经济的各个领域,比如证券交易,航班列车动态信息显示、道路交通信息显示等。而且逐渐变的产品结构多样化,密切的融入到现代化社会的各个方面,这得益于国家关于节能、减排、低碳、高效能源使用目标以及推动扩大内需的相关政策。在这一时代背景下LED多功能化变的尤为重要,而多功能汉字LED显示屏在生商业中的优势很明显,所以此次设计通过将生活常用的时钟。温度计、广告牌、备忘录等功能结合起来制作一个多功能LED显示器,相信未来LED在日常生活领域有更广阔的的前景。1.1项目背景LED点阵显示屏幕由于其寿命长、功耗低、成本低、视角大、可视距离远等天然优势所以被广泛的应用于信息传递领域,在医院、机场、车站、证券交易所、体育场所都能看到LED的身影。随着LED技术的日益完善,它在生活中所占的位置也越来越重要,已经成为了信息传播的重要手段,在另一侧面也成了城市信息现代化的标志之一,随着LED显示的广泛应该用,它的控制系统也变的多种多样,它的控制系统都是基于嵌入式的微处理器,所以我们常见的单片机在其中也有一定的地位,由于单片机芯片是按工业测控环境要求设计的,所以在抗干扰、功耗等各个方面都优于PC机,运行可靠。此次设计的多功能LED点阵汉字显示屏旨在推进LED技术在日常生活中的应用,LED也一定会在人类日常生活中成为不可或缺的一部分。1.2项目简介LED点阵显示屏幕主要集中应用与信息传播领域,在日常生活中我们能接触到的也仅限于车站、交通指示、广告传媒等方面、将数块相同大小的LED点阵级联起来汇总到控制卡,由控制卡统一控制,利用人眼视觉暂留的现象实现广告、列车时刻表、金融等信息的显示。而LED点阵时钟则是通过DS1302这一高性能、低功耗、带RAM的实时时钟电路,对日期、时刻进行计时将时间日期等信息送达单片机处理,最后通过LED点阵显示出来。1.3应用范围LED点阵屏幕的应用范围相当的广泛,车站利用LED显示实时列车时刻表,车辆信息、公告、以及检票状态、时间。银行大厅可以利用它显示银行利率、汇率、业务范围以及最新优惠,交通指挥中心可以利用它进行道路信息发布或者做为高速公路公告牌。证券交易所可以实时显示股市现状、例如股票走势、涨幅。在商业圈街道、影剧院、宾馆酒店、旅游胜地等地点可以利用无线信息技术进行广告传媒。以上这些应用都因为其要求信息实时更新,对可视角度、可视距离、功耗成本以及环境适应能力都有较高的要求,常见的液晶电视、塑料等传统信息显示器显然不是最好的选择,所以LED显示屏幕成为了最好的解决方案。第2章项目实施方案2.1概述2.1.1项目方案根据项目需要可选择如下的两种方案:方案一采用单色LED,利用单片机I/O口直接控制LED灯亮灭,如果I/O口不够用可利用单片机的并行通信实现I/O口的扩展,单片机内部自带定时器,可利用此定时器可以实现时钟功能,另外利用热敏电阻和A/D转换器的组合实现温度计的功能,但是此方案从各个方面来说都不是最好的,首先单片机I/O直接控制LED灯,少量的还可以,对于点阵来说,一般常用的点阵都有成百上千的LED灯,即使能扩充I/O口,也需要大量的单片机和电路,显得非常的不实用,单片机内部定时器精度不高,实时时钟要求的就是准确性,另外定时的溢出中断很可能呗其他中断暂停而影响走时精度,热敏电阻和A/D转换器的组合确实能够实现温度计的功能,但是不稳定,而且精确度不能保证所以我决定使用更为成熟的方案二。方案二采用8*8封装的点阵模块组成显示屏幕,通过8个74HC595级联控制点阵的列的扫描信号,两个74HC138和四个4953芯片组成点阵的行驱动电路,通过单片机的I/O口控制数据的发送,通过译码器和寄存器完成数据的串入并出,实现LED点阵的显示工作,实时时钟则可以通过现在已经非常成熟的时钟芯片DS1302只需要三个接口就能精确的计算时间、日期,非常方便,而温度计同样可以采用18B20芯片实现温度的精确测量,而且此芯片只需要一个I/O口,可以说非常的实用,符合此次设计日常使用的需求。2.1.2设计思路LED点阵是由若干个发光二极管以矩阵的方式排列而成的器件,将他们的阴极多阳极连接起来组成共阴或者共阳型点阵,此次使用的是共阴型点阵,每个LED的阴极连接在一起为列引脚,若要点亮这种LED点阵,其列引脚必须接低电平,行引脚则应该接高电平信号,才能顺利点亮LED然而如果全部使用I/O口控制电平信号则需要大量的I/O口,普通单片机只有四组I/O口显然这样会浪费大量的单片机而且很麻烦,所以我们可以采用动态扫描这种方式,利用锁存器和译码器用最少的I/O口驱动更多的LED灯,从而做到简单高效。2.1.3动态扫描原理LED点阵的显示是采用动态扫描的地显示方式,所谓的动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列一起用同一套列驱动器,把所有同一行的发光二极管阳极连接起来,列的阴极连接起来(也就是常说的共阴的接法),首先送出对应第1行二极管亮灭的数据同时锁存,然后选通第1行,点亮一定的时间后在送出第2行二极管亮灭的数据同时锁存,一次类推全部16行结束后,重新再第1行开始,反复循环点亮,当循环的速度足够快的时候(大概每秒24次以上),每行LED点亮的时间占总时间的1/16,利用视觉暂留现象,便能看到显示稳定的字符,通过将所需要显示的文字、字符或者图片按每列拆解成多组显示信号,可以得出多组显示数据编码,然后利用数据编码的顺序一列一列地显示,每列的显示时间约为2ms,由于人类的视觉暂留现象,将感觉到8列LED同时显示的样子,通过这一原理LED还可以实现移动显示方式,让所需要显示的文字、字符或者图形左右或者上下移动,如果想实现文字的左右移动,只要按不同的顺序显示编码即可,扫描完第一个字符的编码后,将编码的第二列变成第一列,第三列变成第二列,以此类推通过不断的扫描显示后,即可产生该文字字形左移显示的感觉。以8*8点阵为例,如果想实现字形的左移可以将整个字形的移动看成显示8个字形,将编码顺序按上述办法调整变成8个字形编码,显示第一个字形,持续一段时间后显示第二个字形,显示完所有字形后也就完成了该字形的左移显示,而‘持续一段时间’会决定字形移动的速度。同理上下移动也是这个原理。2.1.4驱动电路原理对于行驱动电路采用两个3/8译码器74HC138译码后生成16条行通信线,在经过驱动器驱动对应的行线,同时为了让LED有足够的电流点亮,在每一条行线上需要接一片4953驱动芯片,列输入驱动由八个8位串行输入、并行或并行输出的三态位移寄存器74HC595实现,列驱动电路中对数据准备来说,它应该能够实现串入并出的移位功能;对于数据显示来说,应该具有并行锁存的功能,只有这样已经准备好的数据打入并行锁存器进行显示时,串并位移寄存器就可以准备下一行的列数据,而不会影响本行的显示,因为整个点阵屏幕是由8*8点阵组成的阵列所以每个汉字上面有两个驱动器驱动,扫描的时候同事扫描显示第一行和第九行,第二次扫描的时候显示第二行和第九行,以此类推,最后显示第八行和第十六行,2.1.5所需器件简介STC12C5A60S2单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统的8051,但速度快8-12倍。74HC138是一款高速CMOS器件,74HC138引脚兼容低功耗肖特基TTL(LSTTL)系列。作为一款编码与解码(译码)的器件74HC138译码器可接受3位二进制的数据输入(A0,A1和A2),打开使能端的时候,能够提供8路数据输出,所以常被称为三八译码器(Y0至Y7)。74HC138共拥有三个使能端口:其中有两个逻辑0(低)有效(E1和E2)另一个逻辑1(高)有效(E3)。除非E1和E2置低且E3置高,否则74HC138的输出端口都是高电平。因为具有多个使能端口所以很容易实现并行扩展功能。随机选择1个逻辑0(低)有效的使能端当做数据输入,,其他的使能端口当做选通端,那么74HC138就能作为一个8输出通道多通道分配器,没有使用的使能输入端必须保持绑定在各自合适的逻辑1(高)有效或逻辑0(低)有效的状态。74HC138与74HC238逻辑和功能相同,但是74HC138的信号是反相输出。74HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。74HC595的8个输出端可以直接控制点阵列引脚,74HC595是具有8位移位寄存器和一个存储器,具有串行输入、并行输出两个独立的时钟信号,存储器和位移寄存器时钟不共用,如果说他们共用一个时钟或者时钟在一起,那么存储寄存器总是比移位寄存器晚一个脉冲。移位寄存器有1个串行输出(Q7)和1个串行移位输DS(Q7用于595的级联,连接下一片595的串行数据输入端DS),还有1个异步低电平复位,存储寄存器有1个并行八位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。三态。将串行输入的8位数字,转变为并行输出的8位数字,74HC595的优点就是能够锁存数据,而且在移位的过程中,输出端口数据能够保持不变,是的点阵在串行速度较慢的场合不会出现明显的闪烁感。2.2开发环境硬件环境:STC12C5A60S2单片机16*32点阵屏幕DS1302DS18B20软件环境:keiluVision4AltiumDesignerWinter09STC-ISP-V4.832.3硬件设计2.3.1硬件系统框图根据前期的设计以及构思所得出的硬件系统框图如图2.1DS1302DS1302电源串口通信电源串口通信STC12C5A60S2STC12C5A60S2LED显示屏幕LED显示屏幕按键按键DS18B20DS18B20图2.1硬件系统框图2.3.2原理图设计根据项目需求和多种方案对比采用图2.2电路作为控制卡电路,图2.3为点阵电路图2.2控制卡原理图图2.3点阵原理图2.3.3典型电路设计如图2.4所示为点阵列驱动电路,图2.5为DS1302电路,图2.6为DS18B20电路图2.4点阵列驱动电路图2.5DS1302电路图2.6DS18B20电路2.3.4电路设计思路如上述电路图,本次电路设计的思路非常明了,将八个8*8封装的双色LED点阵显示模块拼接起来组成十六行三十二列的共阴点阵电路,组成显示屏幕,并且每个点阵模块都配有滤波电容,行驱动电路通过两个三八译码器共有十六路行线输出分别接到八个场效应管上,经过电流放大后分别接到点阵的行线上驱动点阵的阳极,三八译码的四路输入信号则由单片的I/O口连接通过软件程序驱动三八译码器达到行扫描的功能。列驱动电路则则是通过级联的方式将八个锁存器连接起来,八个锁存器总共能输出64路列信号,分别控制点阵三十二列电路的红绿两种信号,锁存器的两路输入信号则通过连接单片机I/O控制,通过上述电路组成整个显示屏幕的电路,主控电路则主要由单片最下系统组成,采用通用的51系列最小系统,外部时钟晶振、电源、复位电路组成最小系统,外部晶振电路两端各接一个等值负载电容,能够最大限度的保证频率值的误差,也能保证温漂等误差,DS1302的三个信号接口各接一个上拉电阻后连接I/O口传输数据信号,经过单片机处理后通过I/O口传输到显示屏幕的六路输入接口,最终实现点阵屏幕的显示。2.4软件设计2.4.1软件系统框图字库DS18B20DS1302根据设计需求和设计思路可以得出系统体系结构,如图2.7所示。字库DS18B20DS1302时钟数据温度数据字模数据时钟数据温度数据字模数据数据处理数据处理三八译码器寄存器三八译码器寄存器行扫描信号列扫描信号行扫描信号列扫描信号屏幕显示屏幕显示图2.7系统体系结构.此次设计主要实现的功能为显示中英文字幕、时间、日期和温度,通过按键切换各个功能,那么就需要好好处理各个显示函数的逻辑结构,需要设计函数来判断按键是否按下,如果按下应该要做什么处理。2.4.2时钟数据处理DS1302由VCC1或者VCC2两者中较大的引脚供电,X1和X2是振荡源,外部接32.768KHZ晶振,RST是复位/片选线,通过RST输入驱动置高电平来启动所有数据传送,RST输入共有两种功能,首先RST接通控制逻辑,允许地址/命令序列送入位移寄存器,其次,RST提供终止单字节或多字节数据的传送手段,当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作,如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。当时钟系统接通电源上电运行之后DS1302和单片机进行数据交换的时候,首先由单片机向电路发送命令数据字节,命令字节的最高位规定必须是逻辑1,如果D7为逻辑1,则禁止写DS1302,也就是写保护,D6为逻辑0时指定时钟数据,D6为逻辑1时指定RAM数据;D5~D1端口用于指定输入或输出的特定寄存器;DS1302共拥有12个有关日历、时间的寄存器,其中有7个为BCD码形式,小时寄存器定义12时制或者24时制。DS1302采用的是SPI总线驱动方式,所以在向寄存器写入控制字的同时还要读取相应寄存器的数据,所以与DS1302通信之前,首先应该了解它的控制字也就是上面叙述的读写时序。2.4.3温度传感器数据处理DS18B20在出厂时以配置为12位,而读取温度时共读取16位,所以把11位的2进制转化为10进制后在乘以0.0625就是所测量的温度,而且还需要判断正负,前5个数字为符号位,当前5位为1时,读取的温度为负数;前5位为0时,读取的温度则为正数,读取的16位数字的排列顺序是从低位到高位,程序运行时应该对DS18B20进行初始化,首先将数据线置逻辑1(高电平),延时过后再拉到逻辑0(低电平),在经过延时后拉置高电平,延时等待后,如若单片机督导了数据线的低电平后在做延时,最后将数据线再次拉置高电平后结束,初始化结束后即为写操作,初始状态数据线先接逻辑0(低电平)延时15ms后按从低到高的顺序发送字节且每次只发送一位,延时45ms后将数据线拉到逻辑1(高电平),循环此操作直到字节全部发送完毕,DS18B20的读操作和写操作类似,首先将数据线拉高到高电平,延时后在拉低,拉低后延时在拉高,再次经过延时后读数据先的状态得到了一个状态位,并进行数据处理。2.4.4中文字幕的数据处理通过LED点阵显示中文,需要利用字模生成软件,通过将汉字拆解为十六进制的字符编码,然后按照显示数据编码的顺序一列一列的显示,本次设计预先将中文字幕的编码内置在了程序中,在需要时可以随时读取,显示中文。2.4.5程序流程图由于需要利用按键切换时间、日期、温度和字幕的显示,就需要程序中做出判断,判断按键的通断所要执行的功能,如图2.8所示为程序的流程图。图2.8程序流程图程序开始运行后,重复循环判断,没有结束,当切换到显示字幕的时候,可以通过按键返回时间显示,也可以等待字幕显示完成后重新跳回循环。第3章项目实施过程3.1硬件实现过程3.1.1前期准备本次设计硬件的实现过程可以大致分为六部分,按顺序分别为:建立系统框图——绘制原理图——列出材料清单——采购元器件——焊接电路——各个模块的连接。其中系统框图和系统原理图在第二章图2.1和图2.2,材料清单见表3.1表3.1材料清单序号器件型号数量备注1单片机单片机底座STC12C5A60S240P底座12单排针杜邦线20P单排针40P彩色杜邦线1方便调试3DC电源接口电源线3.5mmDC接口电源线14微动开关自锁开关7*7直插式自锁开关15MAX232串口通讯模块RS232串口通讯模块16最小系统pcb空板51系列单片机最小系统17时钟芯片DS1302时钟芯片18纽扣电池电池座RC2032不可充电纽扣电池19温度芯片DS18B20温度芯片110导线单芯多芯导线若干11万用板5*7单面万用板112LED5mmLED灯(白发蓝)61316*32点阵pcb空板16*32双色点阵空板1148*8封装双色点阵双色点阵815位移寄存器74HC595芯片(贴片)816译码器74HC138芯片(贴片)217点阵驱动芯片4953芯片(贴片)818点阵板滤波电容104电容(贴片)470uf若干19电源滤波电容10uf104若干20点阵板输入输出接口2*8排针221排阻1k1*8排阻1P0口上拉22电阻4701k10k若干23电容22pf10410uf若干晶振滤波24单片机最小系统晶振18.432MHZ晶振1根据材料清单采购元器件,如图3.1为元器件实物图图3.1器件实物图经过了以上阶段的准备工作后,便是需要非常细心的焊接过程了,也是硬件设计的第二核心部分,而且在维修制作的过程中焊接工作是必不可少的,它不但要求将原件固定在电路板上,而且要求焊点必须牢固、圆滑、美观,所以焊接技术的好坏直接影响到电子制作的成功与否,因此焊接技术是每一个电子制作爱好者必须掌握的基本功,也是作为嵌入式开发的基本功,那么就有必要交代一下焊接的注意事项。电烙铁作为电路焊接的常用工具,非常的使用方便,但是因为其工作时候的高温导致了它具有一定的危险,所以必须遵守它的使用方法和注意事项,本次设计使用的是最常见的60W的电烙铁,使用前需经过详细的检查,例如电源插头有无漏电现象、电源线有无破损并检查烙铁头有无松动现象。然后才可以插上电源,经过几分钟的加热后便可以焊接电路了,在使用过程中应该注意让电源线尽量远离烙铁头部,以防止烫坏电源线触电,避免用力敲击,如果焊锡过多可以用海绵浸湿擦拭,切勿乱甩,防止烫伤,焊点应该尽量圆滑,确保牢固避免虚焊,焊接过程的时间要掌握好,时间不能太长也不能太短,太长器件容易损坏太短焊锡则不能充分融化,造成焊点不牢固,或者虚焊,总之电烙铁的应用需要长时间练习,掌握了“手感”后就非常简单了。3.1.2电路焊接根据上述的描述,采购和焊接的方法、注意事项都已经说明,下一步则为焊接电路,按照电路图焊接电路,焊接时要严格按照焊接方法执行,防止烫伤、意外。如图3.2所示为焊接完成后的实物图。图3.2实物图实物的焊接完成后,仔细检查各个焊点是否焊接牢固,有无松动和虚焊现象,保证电路的导通性和实用性,完成检查后,利用杜邦线按照原理图将各个模块连接起来,连接的时候应该注意VCC和GND的连接顺序,防止连接错误,造成电路短路,损坏电路。3.2软件实现过程3.2.1定义#include"NEW_8051.H"#defineucharunsignedchar#defineuintunsignedintucharcodehanzi[]; ucharcodehanzi2[]; ucharcodetimer[13][16]; ucharcodesw[]; voidShow_word();voidSend_data(unsignedchard);voidSend_data1(unsignedchard);voidSend_data2(unsignedchard);sbitresget=P0^0; sbitkey_moda=P0^1; sbitkey_cancel=P0^3;sbitDS1302_clk=P1^4;sbitDS1302_dat=P1^5;sbitDS1302_rst=P1^6; sbitACC0=ACC^0;sbitACC7=ACC^7;sbitDQ=P1^3;sbitSHCP=P2^7;sbitSTCP=P2^6;sbitSDA_R=P3^6;sbitSDA_G=P2^4;sbitOE=P3^7;sbitIA=P2^0; sbitIB=P2^1;sbitIC=P2^2;sbitID=P2^3;程序开始应该进行宏定义,声明程序中所能够用的函数,并且定义温度模块/时钟模块、按键、数据的输入输出端所对应的I/O数据口。3.2.2主函数的设计voidmain(){Move=0;zimuo=0;while(zimuo<512) //上电显示开机动画{while(Move<16) //数据移位 { for(Speed=0;Speed<10;Speed++)//移动速度 { for(line=0;line<16;line++) { in_data(); //调整移动数据 rxd_data();scan(line); STCP=1;//锁存 STCP=0; OE=0; //打开屏幕使能端 DelayMs(); //延时 } }Move++; }Move=0;zimuo=zimuo+32;} zimuo=0;while(1){ if(resget==0) {DelayMs();if(resget==0) Set1302(starts_time);//初始化 DS1302_w(0x8e,0x00); } du1302(); //读取时间 read_temp();//读取温度 zimuo=0; if(key_moda==0){while(!key_moda);id++;if(id==5)id=0;} Show_word(); } }3.3调试过程3.3.1硬件调试过程 将电路焊接完成,利用杜邦线将电路连接起来后,开始硬件电路的调试,首先需要测试的就是电路的连通性,利用万用表的二极管档位测试各个电路的电源的底线是否都分别导通通,并测试有无短路现象,测试没有电源短路现象后开始运行屏幕全亮测试程序,测试电路是否可用,但是烧入程序后,屏幕的第十行电路无法点亮,将第十行LED的外接电源后可以点亮,证明LED灯没有损坏,怀疑是电流放大电路出现问题,经过检测,确定为4953驱动芯片两个引脚短路引起的,重新焊接后问题得到了解决,屏幕问题解决后开始测试外围扩展电路,连接时钟芯片后接通电路,时间显示为二零零零年一月一日零点零分与程序中的预设时间不同而且固定不变,疑似时钟芯片没有工作或者数据连接有问题,经过检测,确认为数据接口有接触不良的现象而且三个数据接口都接有上拉电阻,容易造成数据混乱,经过重新焊接并且去掉时钟线和复位线的上拉电阻,只留下数据输入输出接口的上拉电阻后,时钟模块工作正常。3.3.2软件调试过程硬件电路完成后开始编写软件程序,通过上述的需求分析和编程思路,代码编写完成,开始测试,这里需要说明一下,烧程序利用的是STC-ISP-V4.83烧录软件,使用此软件烧录前,需要先选择单片机型号,设置波特率并选择好串口,单片机烧录完成后,发现了以下几点问题:1.中文字幕问题程序预设上电后显示中文开机动画,可是实际运行后字幕出现了相反的现象,即汉字的部分为灯灭,其余地方为亮,通过查询资料和询问老师后,判断为字模的阴码误取为阳码,经过重新取模后得以解决但是又出现了新的问题,文字发生的错位的显现文字的上半部分显示在了下半屏而下半部分却显示在了上半屏,判断为字模的分段有问题,重新修改了分段,显示正确。2.时间显示问题上述时钟电路硬件电路问题解决,时钟得以正常工作,但是却不能正常显示,原因在于屏幕尺寸的限制,因为此次设计的屏幕为16*32的点阵屏幕,只能显示两个汉字,但是时钟需要至少16*32的屏幕才能正常显示时分秒,由于自身的水平有限,所学的知识有所不足,退而求其次,选择了只选择时分的解决方案,左半屏红色显示小时,右半屏绿色显示分钟,通过按键切换显示年份日期。3温度的显示问题当通过按键切换到温度显示时,温度显示为85度,并且保持不变,对温度传感器加温降温屏幕都没有变化,固定显示85度,上述的硬件电路检测为无问题,所以确定为程序有误,经过查阅资料,确定了解决方案,首先需要检查程序的延时程序,看看延时是否准确,其次检查复位时序和读写时序,复位时序里面应该有复位是否成功的判断,第三,启动温度转换后,就直接读取温度肯定不行,启动温度转换后,至少延时750ms才能正确的读取温度,上电复位后温度寄存器的值为+85摄氏度,上电时默认的分辨率为12位,DS18B20上电时处于地电源的理想状态,初始化温度测量和A-TO-D转换,主机必须确保发送一个温度转换的指令,接下来开始转换,综合上述的编写规则,重新检查程序,发现为温度传感器的读写时序错误,并没有延时,经过修改后温度得以正常显示,对温度传感器进行加温降温处理,屏幕温度可以实时显示。4.总结上述问题解决之后,显示屏的各个功能得以正常显示,但是实际运行时会出现不稳定现象,例如开机动画卡死,循环显示不进入时钟界面,按键切换显示时系统重启,由于此次设计使用的是红绿双色点阵,如果红灯和绿灯同时点亮会出第三种颜色黄色,但是程序设置成日期显示黄色后,程序便循环重启等,这些问题至今不明原因,但是大部分的时间程序能够正常的运行,判断可能是程序的部分循环或者延时结构不成熟造成程序有时会出现BUG,这些问题相信随着自己知识的增长和经验的增加逐步解决。大连东软信息学院毕业设计(论文)第4章项目成果4.1硬件成果物4.1.1作品展示如图4.1所示为最终的作品成型图片。图4.1作品成型图4.1.2功能解读本次设计的作品已经完成,基本上完成了预先的设计构想,可以实现大多数设计的功能,经过实际测试可以实现以下功能,外接5V电源(电脑USB端口即可驱动),上电开机后会左移显示开机字幕,开机字幕结束后进入时间显示的界面,左半屏红色显示小时,右半屏绿色显示分钟,通过控制卡上的切换按键,可以切换功能,每次按下会分别显示年份、日期、温度、备忘录或者广告字幕并且会重复循环,在运行字幕时可按下结束按键结束字幕的播放。备忘录或者字幕可以在程序的字模中预先设定,也可设置为图片格式,时间、日期、温度的文字颜色也可以在程序中非常方便的修改,并且可以外接电源模块,实现输入电压的扩展。4.2控制卡展示如图4.2所示为屏幕的控制卡图4.2屏幕控制卡屏幕控制卡主要分为五个部分,分别为单片机主控部分、外围电路(时钟温度模块)、按键电路、电源盒串口下载模块,以单片机为主控中心,时钟模块和温度传感器作为信息来源经过单片机处理后输入屏幕,屏幕显示信息。电脑通过串口下载模块将程序烧录至单片机,按键则通过一段接地,一端接I/O口实现按键判断,需要说明的是DS1302模块接有备用电池,即使系统断电,时钟也会继续工作,保证时钟的走时准确。第5章结论当前,LED点阵屏幕的发展前景很大,对于不同的应用环境和应用需求,可以有各种各样的解决方案,但是如果LED想在日益发展的显示技术领域持续发展就必须要解决很多弊端,例如大型显示屏幕的成本缩减、体积控制和更加丰富的显示内容,这些都是限制LED发展的因素,不过此次设计的是室内用小型显示屏幕,所以并不会有以上的问题,这也是室内LED的优点之一。我本次的设计则是根据室内时钟文字显示需求制作的室内用显示屏幕,但是由于自己知识水平的局限性未能添加更多的功能,此次制作最终实现了实时时钟显示、文字信息显示、温度信息显示等功能,由于自己的知识还不够丰厚,有很多局限性,所以有很多的扩展类的功能还没有能够实现,点阵屏幕的用途绝对不只这样,本次设计还有很多可以扩展的功能,此次设计采用的是自带A/D转换功能的单片机,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校教职考试真题及答案
- 2025年英语教师招考试题及答案
- 2025年德州社工招聘题库及答案
- 2025年中考各科压分试卷及答案
- 化学实验探究题思路与方法试题
- 化学诚信精神表现评估试题
- 2025年高考物理实验专题复习试题
- 公文法规考试题及答案
- 2025年武汉元调电学试题及答案
- 工勤技师考试题型及答案
- 建筑工程项目技术总结报告模板
- 鼠疫实验室生物安全培训课件
- 【7历第一次月考】安徽省六安市霍邱县2024-2025学年部编版七年级上学期10月月考历史试卷
- 2025年西学中培训结业考试卷(有答案)
- 男衬衫领的缝制工艺
- 拆除工程吊装方案范本(3篇)
- 税务稽查跟踪管理办法
- GB/T 17748-2016建筑幕墙用铝塑复合板
- GB/T 13173.2-2000洗涤剂中总活性物含量的测定
- 《饲料和饲料添加剂管理条例》及配套规章解读
- 水泥基自流平超平地面施工工艺课件
评论
0/150
提交评论