基于单片机的LED旋转显示屏设计与研究毕业论文(21页).doc
-基于单片机的LED旋转显示屏设计与研究毕业论文-第 16 页学科代码:080601 学 号:111403010094 贵 州 师 范 大 学(本 科)毕 业 论 文题 目:基于单片基的LED旋转显示屏研究学 院:机械与电气工程学院专 业:电气工程及其自动化年 级:2011级姓 名: 朱峰指导教师: 胡波(讲师)完成时间:2015年4月25日摘 要进入新世纪,光电子产业得到社会广泛的重视,LED显示作为信息传播的一种重要手段,已广泛应用于室内外需要进行服务内容和服务宗旨宣传的公众场所。尤其在没有投影仪的地方,旋转LED的优越性体现得非常明显,在当今高度发达的经济市场上,富有创意、应用面广的、挪移方便、具有吸引力的信息传播系统显得十分的重要!二十一世纪是数字传播的时代,随着LED技术的应用和普及,数字LED显示屏的应用非常广泛。传统的LED显示屏以平面效果居多,旋转式LED环形显示屏的设计,是利用人眼视觉暂留效应,通过高速电机带动LED阵列旋转,形成360度环形显示画面,可站在任何角度观看,完全无观赏死角,给人们一种新的视觉体验。本设计基于AT89S52单片机,采用独立的LED,通过直流电机带动旋转,可形成立体效果,使其更加绚丽,更具有观赏性,可广泛应用于家居,企业和公共场所。 针对传统LED显示屏视角单一、体积较大、需要的发光二极管数目较多等特点,利用电机带动LED显示阵列高速旋转实现环形显示,达到360全视角,在相同显示信息量上降低产品体积,减少对发光二极管的使用,设计一个可以经常方便变换内容、能够携带方便、信息容量大、价格低廉、结构简单的信息播放系统,即旋转LED显示屏。 关键词:旋转式;LED阵列;环形显示屏;AT89S52;单片机AbstractIn the new century, the photoelectron industry wide attention by society, LED display as an important means of information dissemination, has been widely used in indoor and outdoor services, content and services needed publicity purposes in public places. In particular, there is no projector in place, rotating LED's superiority reflected very clearly in today's highly developed economy markets, creative, application wide, the diversion of convenient, attractive information dissemination system is extremely important! The twenty-first century is the era of digital communication, with the LED technology and the popularity of digital LED display is widely used. Traditional LED display to effect mostly flat, circular rotating LED display design is the use of temporary stay in the human visual effects, high-speed motor to drive the LED array rotation, the formation of 360-degree circular display can stand on any point of view, complete without viewing dead, to give people a new visual experience. The design is based on AT89S52MCU, using separate LED, driven by DC motor rotation, can form three-dimensional effect, make it more colorful, more spectator, can be widely used in homes, businesses and public places. View traditional LED display single, larger and larger number of required characteristics of light-emitting diode, LED display of motor driven circular array of high-speed rotation of the display, to 360 full view, in the same amount of information displayed on the lower product volume and reduce on the use of LEDs, the design can often facilitate the transformation of a content, can be portable, high information content, low cost, simple structure, the information broadcast system, the rotating LED display. Keywords: Rotary; LED array; circular display; AT89S52 SCM 目 录引言1国内外研究现状2第一章 系统总体设计31.1 系统的设计目标31.2 总体设计3第二章 硬件设计42.1系统的工作原理42.2 电机选取52.3系统供电方案52.4 主控芯片选取62.5 电机改装62.5.1 供电电源62.5.2 实现方法62.6 重心调节72.7 电源设计72.8 LED旋转同步设计82.8.1 中断系统82.8.2 LED驱动电路92.9 旋转LED显示原理12第三章 系统中所用到的nRF401无线芯片介绍133.1无线数据收发组成结构133.2系统实现过程133.3无线收发芯片nRF401介绍143.4芯片内部结构15第四章 系统软件设计174.1软件的总体设计174.2系统各模块程序的设计174.2.1 主机程序模块184.2.2从机程序模块19第五章 结论20谢辞21参考文献22附录23引 言由于科技技术的不断突破,电子技术的发展越来越快取得了惊人的进步。特别是近几年来,电子技术的发展突飞猛进,无论是工业、农业,还是其它领域都随之发生了重大改变,也为技术创新奠定坚实的理论基础。我们应当具备创新和开发的能力,本文所介绍的旋转LED显示屏就是一个例子。通过单片机的应用和普通直流电机的改装实现这一功能,通过良好的视觉效果激发我们对电子科学的兴趣。柱式旋转LED显示屏是一种比较新颖的显示屏,总的来看成本低是一大优势,另外像大厅和候车室之类的场合,360度的可视角度使之非常适合。如果能解决好显示亮度问题,便可应用于室外,像一些广告塔、楼顶等场合,LED显示屏的一个新品种、是未来发展的方向。这类显示屏如果在进一步,解决视频数据的传输,就可以做出旋转柱式视频显示屏,控制电路的视频显示较为成熟,显示器件用 RGB 阵列,应用范围则可以大大增加。本文所设计的基于单片机旋转LED显示屏是以AT89S52单片机为核心,最大限度的利用了单片机的资源,与LED驱动芯片紧密结合,通过无线收发芯片控制,实现显示功能。本文分为七章,详细说明了LED旋转屏的设计方法、原理、以及设计流程。第一章主要介绍系统的总体设计。第二章主要介绍系统的硬件设计,对电路的设计原理和芯片选择以及各硬件选取;第三章是对系统设计方案中所用到的nRF401无线芯片的介绍。第四章是系统的软件介绍。主要是对MAX公司的LED驱动芯片MAX6969的介绍。国内LED显示屏研究现状我国的LED显示屏产业经过几年的发展,基本形成了一批具有一定规模的骨干企业。在国内市场上,国产LED显示屏的市场占有率近100%,国外同类产品基本没有市场,LED所占的市场将会越来越大,影响也会越来越深远。我国的LED显示屏产业已成较大规模,技术水平相对领先,应用领域也很广泛的特点。 2008年北京举行的奥运盛会虽已顺利闭幕,但所展现出的种种前所未有的规模已经深深的烙在了全世界人的心中。特别是奥运盛会上所应用的LED产品类型和数量规模都是空前的。LED显示屏作为一种新型的显示器件出现在2008 年北京奥运会的开幕式、比赛场馆、奥运文化广场以及奥林匹克公园等LED项目中,国内LED企业承接了主要的工程项目,提供了大量的LED产品,总体上展示了我国LED行业的技术产品优势和产业发展水平。也体现了我国LED产业的力量和技术这也在一定程度上预示着 LED 产业必是未来的一种趋势国外LED显示屏研究现状 对于国外LED显示屏的研究上了一个新的层次,如日本Hibino公司展示的产品STEALTH,这是一款能透视背景的穿透式LED 显示屏,可呈现出一个综合汇聚了影像、照明、舞台道具、背景灯元素的立体影像空间。从可视性影像到体验型影像,展示演出及舞台设计创意空间得到扩展,视觉表现的世界无限延伸。随着LED高性能材料的发展,LED显示屏也必将得到发展,从而旋转LED显示屏也将随之发展,并相信,旋转LED显示屏将会给人们的生活带来更多的便利,造福于人类。第一章 系统总体设计1.1系统的设计目标研究和设计旋转LED显示屏的设计要求。系统通过用MCS-51汇编语言系为核心的控制装置,通过控制电机保持一定的速度和稳定的旋转,由单行LED扫描显示屏幕旋转;单片机根据LED旋转的速度,控制LED发光或熄灭,形成视觉图形点阵显示。1.2 总体设计旋转LED显示屏的系统总框图,如图1.2.1所示。该系统由五个部分组成:系统供电模块、显示单元、通讯单元、控制单元和键盘输入单元。其中,单片机控制的LED显示屏由MA6969高电流LED控制器一起控制,键盘是用于实现人机交互的功能,系统权力来自电机的中心,采用的是外接电源。用户可以通过按钮主单片机输入命令,并从单片机通过串口命令无线传输,从单片机的解码命令MA6969周期和高电流LED控制器来控制LED显示。芯片系统中,主单片机负责人机交互的接口,负责主机命令的翻译从单片机,以提高和更新系统。外接电源直流电机LED阵列功能按键切换控制芯 片nRF401无线收发器nRF401无线收发器控制芯片电机驱动LED显示模块电源模块电机 图1.2.1 系统总框图第二章 硬件设计2.1 系统的工作原理本设计以AT89S52单片机位主控芯片,在一个固定台上安装一个普通的电机,通过步进电机驱动连接杆旋转,在连接杆的两端安装有两排弧形LED阵列,这两排LED阵列半径不同,因而旋转起来会呈现双层环形效果。其结构示意图如图2.1.1所示。其原理图如图2.1.2所示。Led装置Led装置普通电机固定台图2.1.1 旋转式LED环形显示屏结构图高速旋转之后电 机图2.1.2 旋转式LED环形显示屏原理图2.2 电机选取方案1:采用步进电机。步进电机可以准确的定向,但分辨率的图像或文字是有限的由步进电机的步进角确定。并且步进电机和控制电路的成本较高,并且需要单片机控制,占用CPU的资源。方案2:采用普通的电机。此方案不占用单片机I/O口,节省单片机资源,使用方便,成本较低,通过简单的改装,可以给系统供电。综合所有考虑,为了节约成本,简化系统电路,以及能更方便的为系统供电,使系统能够长期工作,所以采用方案2。2.3 系统供电方案方案1:采用固定电池供电。电路板是直接连接到电池,为系统供电。这种供电模式是相对简单的。然而,有两个问题很难解决。首先,高亮度LED的功率功耗较大,而电池储存能力是有限的,难以实现系统的长期运行;其次,由于电池的体积和重量比较大,若固定在板上,电池用完后,难以取换。如果他不固定,当电机旋转时可能漏掉,造成安全隐患。同时,也增加了旋转重心的调节的难度。因此,故不采用此方法。方案2:采用电刷供电。在电机的转轴上,添加一个电刷,通过电刷为系统供电。这种方法可以长时间使系统供电,但由于增加电刷,电机的摩擦增加,会增加系统的功耗。因此,故不采用此方法。方案3:从电源线电机转子,对系统供电。该方法直接从电机的转子中引出电源线,通过整流滤波,可以作为供电系统,也可以作为系统控制的定时中断源。该方法容易实现,并且一举两得,因此选用。2.4 主控芯片选取方案1:采用数字信号处理芯片的使用MSP430和LED驱动芯片接口,因为MSP430的速度相对较快,运算能力强,大大提高了LED的显示时间的模糊算法,可以快速的通信数据的CRC校验,降低了程序的复杂性。方案2:采用单片机AT89S52与LED驱动芯片MAX6969接口, AT89S52逻辑能力相对较强但是速度比较慢,价格也相对比较便宜,但工作量要比方案1大得多。 所以综合考虑价格、元件是否容易购买等因素,在此设计中选用方案2。2.5 电机改装2.5.1 供电电源:为了使系统能够长期稳定的工作,必须解决系统的供电问题。通过对电机进行改装,引出电源线,并通过整流、滤波、稳压得到系统供电电源。2.5.2实现方法:主要通过电机的改装。电机的改装: atNt&m 电路的供电和LED的定位是本制作的一个难点。装在电机上的电路始终在高速旋转,无法使用通常的方法来给电路供电。但可以通过对电机的改造来解决。一般的直流电机是线圈作为转子,而永磁体作为定子的。它是通过电刷来实现给线圈供电的,而且直流电机的旋转需要交变的电流,这是由固定在转子轴上的换向器来巧妙的实现直流变为交流的。本设计的电路是固定在电机的转子上的,它和转子是保持相对静止的。因此,可以从电机的转子中取得电源。方法很简单,也就是从电机的换向器上用漆包线把电引到电路板上,经整流、滤波后给单片机电路供电。换向器上的每个电极什么时候变化,是和电机转子的位子有关的,可以使用其中的一路信号来给LED显示的起始位置定位。 =Pjv08 具体改装过程如下: Nr6:/*x 1) 拆开电机,注意拆的时候别弄坏了电机的电刷;2) 小心地从电机换向器上的三个电极引出三条漆包线;3) 取下电机外壳的含油轴承;4) 在轴承的圆片上面钻了几个小孔,把那三条漆包线从小孔里穿出来。从而可以用来保护漆包线在转子和定子结合出的安全。(注意:替代上去的部分是和转子保持固定,和外壳之间是可以旋转的)。 U,Pau0:A 5) 组装回整个电机,电机改装至此结束。 K!L;Vi 2.6重心调节重心调节是最困难的一个技术环节。旋转的重心直接关系到系统的稳定的运行,以及安全性问题。旋转的重心如果不在转轴上的话,在高速的旋转中,会产生剧烈的抖动,在巨大的离心力下,会使整个系统分解,产生安全隐患。所以,重心调节是必须解决的问题。下面介绍重心调节的方法。首先是电路板的外观设置。根据物理质心计算方法,可知道,均匀的圆盘的重心就在圆盘的中心。但是,由于电子器件的封装,重量都是不同的,圆盘电路板的重心是不均匀分布的,比较难调节,故不采用这种方法。根据杠杆原理,当支点两端的物体的质量与力距乘积相等时,杠杆就处于平衡。因此我采用了长条方型的电路板结构。M2M1L2L1图2.6.1杠杆原理示意图如上图2.6.1所示,只要M1*L1 = M2*L2时,在布PCB的同时,只要通过简单的测量和计算便可以使得杠杆处于平衡。2.7电源设计电机输出由于电源是从电机中引出来的,所以需要通过整流、滤波才能为系统供电。如图2.7.1所示为具体的设计电路。图2.7.1 整流电路图稳压输入图2.7.2 稳压电路2.8 LED旋转同步设计该电路分为两个部分:2.8.1 中断系统采用中断是为了更有效的利用单片机内部资源。为了能够连续的显示文字和图象,本文采用了外部中断的方法,即在外部中断的时候,计算和调整显示文字和图象的时间。为了得到可靠的外部中断源,有两种方法。其一,如图2.8.1.1所示:图2.8.1.1 采用光感的外部中断电路但是,这种方法功耗相对比较大,而且成本比较高。为了减少制作成本,通过比较,有个更好的方法。因为电机是三相的,带电刷转动的,即每转一周,三个电刷会得到从高到低,又从低到高的逻辑电平状态。因此可以从中引出一条线来作为外部中断源,这个方法简单容易实现,其具体的电路如图2.8.1.2:图2.8.1.2 简单的外部中断电路图该方法利用电刷在转动过程中的电平变化,通过一个三极管S8050转换成单片机可以识别的数字逻辑电平,解决了外部中断的问题,电路简单,可靠性高。2.8.2 LED驱动电路。本文采用了MAXIN公司的MAX6969大电流LED驱动芯片,其外部接口电路非常简单。如下图:(图上的OUT0到OUT15通过一个100电阻接到LED上)。图2.8.2.1 MAX6969驱动电路MAXIM6969是MAXIM公司采用先进的技术生产的具有高集成度的电路器件。MAX6969串行接口LED驱动器提供16个漏极开路、恒流吸收、额定5.5V LED 驱动器输出。MAX6969采用3V至5.5V 电源供电。MAX6969电源和LED电源能以任意顺序上电。所有恒流输出均由一个外部电阻设置,每路高达55mA。MAX6969采用25Mb、工业标准4线串口控制。MAX6969采用工业标准移位寄存器加锁存器形式的串行接口。数据通过数据输入DIN和时钟输入CLK移入驱动器的16位移位寄存器。16个时钟周期后,输入数据出现在输出DOUT,此工作模式可实现多个MAX6969级联。锁存使能输入LE将移位寄存器的16位数据装入16位输出锁存器,以决定各个LED的开关。输出使能输入OE控制所有16个输出的开关,其快速响应特性适合作为控制LED亮度的PWM输入。其内部结构如图2.8.2.2所示:图2.8.2.2 MAXIM6969的内部结构图MAX6969工作时序图如下:MAX6969的串口为4线串口,使用4路输入(DIN、CLK、LE和OE) 和1路数据输出(DOUT)。该接口用于向MAX6969写入显示数据。串口数据字长为16位,即D0D15。见上图。五个接口引脚的功能如下所述。DIN是串行数据输入,在CLK信号的上升沿进行采样时必须保持稳定。数据移入时,首先移入MSB。即首先同步输入数据位D15,然后依次输入其它15位数据,到LSB位D0结束。CLK是串行时钟输入,在其上升沿将数据通过DIN移入MAX6969的16位移位寄存器。LE是MAX6969锁存器的装载输入。LE为高电平时(透明传输锁存器),数据由MAX6969的16位移位寄存器传输至16位锁存器,并在LE下降沿锁存数据(图2.8.2.3)。图2.8.2.3 MAXIM6969控制时序图第四个输入为输出驱动器提供输出使能控制。OE为高电平时强制输出OUT0OUT15为高阻态,并且不会改变输出锁存器的内容,为低电平时则使能输出OUT0OUT15,以反映输出锁存器的状态。OE独立于串口工作。无论OE为何状态,数据都可移入串口移位寄存器并锁存。DOUT是串行数据输出,在CLK的上升沿将数据从MAX6969的16位移位寄存器移出。DIN输入端的数据移入移位寄存器,并在16个时钟周期后出现在DOUT端。下面简单的计算一下这个电路的功耗。MAX6969LED驱动电流的大小是由一个外部电阻决定的。在本电路中,这个电阻RSET取360。 RSET = 18000 / IOUT (2.6.1)因此 IOUT = 18000/360 = 50 mA (2.7.1)其功耗计算如下: PD = (V+ x I+) + (VOUT x DUTY x IOUT x N) (2.7.2)其中:V+ = 供电电压I+ = N路输出吸收IOUT LED驱动电流时的电源工作电流DUTY = 加至OE端的PWM信号占空比N = 同时用来驱动LED的MAX6969输出端口数(最大值为16)VOUT = MAX6969驱动负载LED时端口的输出电压IOUT = 由RSET设定的LED驱动电流PD = 功耗,如果电流单位为mA,其单位为mWIOUT = 50mA,N = 16,DUTY = 1,VOUT = 2V PD =(5V*50mA)+(2V*1*50mA*16) = 1.850W (2.8.1.1)2.9 旋转LED显示原理人眼具有视觉暂留的特性,当画面以一定速率刷新时,人们看到的就是连续的图像。旋转扫描的原理:由于人眼具有视觉暂留的特性,当画面以一定速率刷新时,我们看到的就是连续的图像,电视机显示采用逐点扫描方式,每秒钟要刷新画面 50 场(25 帧),而在人眼中则是一幅完整的画面,传统 LED 显示屏一般采用 1/16 扫描,16 行进行逐行循环点亮,由于刷新速率足够大,看到的也是一幅稳定的画面。它的原理示意如图2.9.1 所示,其中(a) (b) (c) (d) (e) 分别是不同时刻的显示状态,(f)为人眼看到的完整画面“3”。在这种LED显示屏中,采用的是逐行换位下移点亮器件的扫描方式,每一行都必须有LED显示器件,这就使显示屏的成本偏大。图2.9.1 传统LED显示屏的显示原理图旋转扫描方式显示器只有一列,由电机带动它进行旋转,运行到某一位置时就显示该位置的状态,到下一位置后又显示下一位置的状态,即一列显示器件要完成全部图像的显示,扫描过程由机械转动更换位置来实现.其显示原理如图2.9.2所示。图中a)b)c)是 图2.9.2 旋转柱式显示屏的显示原理图不同时刻的显示状态,d)是人眼看到的完整画面“3”。由于旋转扫描成像不是平面,而是一个柱面,所以称之为旋转柱式显示屏,其观看视角是360°。第三章 系统中所用到的nRF401无线芯片介绍3.1 无线数据收发组成结构无线数据传输系统有点对点,点对多点和多点对多点三种。本系统由于实际应用的需要,接收器和数据终端之间的数据传输通过nRF401进行,构成点对点无线数据传输系统。整个系统中,两数据终端之间的无线通信采用433MHz的频段作为载波频率,收发通过串口通信。 无线数据收发系统【1】可以分为无线收发控制电路、单片机控制电路、显示电路和按键电路四部分组成,系统原理如图3.1.1所示:图3.1.1无线数据收发系统3.2系统实现过程当我们需要发送数据时,使用按键来输入所需发送的信息。按键与单片机AT89S52的P3.2-P3.5口相接,单片机的 P1.0口控制信息的发送与接收,并且TXD端(P3.1)与收发器的DIN端相连,通过TXD端将数据传入收发器,收发器接收到数据后,通过FSK调制,将信号发送出去;当我们需要发送数据时,使用按键来输入所需发送的信息。按键与单片机AT89S52的P3.2-P3.5口相接,单片机的 P1.0口控制信息的发送与接收,并且TXD端(P3.1)与收发器的DIN端相连,通过TXD端将数据传入收发器,收发器接收到数据后,通过FSK调制,将信号发送出去本系统采用的是半双工传送方式。所谓半双工就是通信的双方均具有发送和接收信息的能力,信道也具有双向传输性能。但是,通信的任何一方都不能同时既发送信息又接收信息,即在指定的时刻,只能沿某一个方向传送信息。所以上述实现过程只介绍了由一方传送到另一方的过程,而相反方向与其原理相同。3.3 无线收发芯片nRF401介绍nRF401采用抗干扰能力强的FSK调制方式,工作频率稳定可靠,外围元件少,便于设计生产,功耗极低,适合于便携式手持产品的设计,由于采用了低发射功率,高接受灵敏度的设计,满足无线管制要求,无需使用许可证,是目前低功率无线数传的理想选择。3.3.1 引脚功能介XC11VDD2VSS3FILT4VC015VC026VSS7VDD8DIN9DOUT10RF-PWR11CS12VDD13VSS14ANT215ANT116VSS17PWR-UP18TXEN19XC220nRF401图3.3.1 nRF401引脚图表3.3.2 nRF401管脚描述2引脚名称功能功能描述引脚名称引脚功能描述1XC1晶振输入11RF-PER发射功率设置2VDD电源(3-5V DC)12CS通道选择3VSS地(0V)13VDD电源(3-5V DC)4FILT回路滤波器14VSS地5VCO1VC0外接电感15ANT2天线接头6VCO2VC0外接电感16ANT1天线接头7VSS地17VSS地8VDD电源(3-5V DC)18PWR-UP电源开关9DIN数据输入19TXEN发射允许10DOUT数据输出20XC2晶振输出(1) 9脚及10脚分别是DIN输入数字信号和DOUT输出数字信号均为标准的逻辑电平信号,需要发射的数字信号通过DIN输入,解调出来的信号经过DOUT输出。(2) 12脚为通道选择。CS=“0”为通道#1(433.92MHz),CS=“1”为通道#2(434.33MHz)。(3) 18脚为电源开关。PWR_UP =“1”为工作模式,PWR_UP =“0”为待机模式。(4) 19脚TXEN。高电平允许发送数据,低电平允许接收数据。(5) ANT1、ANT2:天线接入端。表3.3.3 芯片工作状态与控制引脚关系3输入响应TXENFREQPWR-UP通道号模式0011433MHz接收0112315MHz接收1011433MHz发射1112315MHz发射XX0-待机3.4芯片内部结构nRF401无线收发芯片的结构框图如图3.4.1所示。芯片内包含有发射功率放大器(PA)、低噪声接收放大器(LNA),晶体振荡器(OSC),锁相环(PLL),压控振荡器(VCO),混频器(MIXER)等电路。在接收模式中,RF输入信号被低噪声放大器(LNA)放大,经由混频器(MIXER)变换,这个被变换的信号在送入解调器(DEM)之前被放大和滤波,经解调器解调,解调后的数字信号在DOUT端输出。在发射模式中,压控振荡器(VCO)的输出信号是直接送入到功率放大器(PA),DIN端输入的数字信号被频移键控后馈送到功率放大器输出。由于采用了晶体振荡器和PLL合成技术,频率稳定性极好。图3.4.1 nRF401芯片内部结构框图第四章 系统软件设计4.1 软件总体设计系统监控程序是控制单片机系统按照预定操作方式运转的程序,是整个系统程序的框架。在本系统中,单片机的主要任务是用来显示和操作者按下不同的按键后,执行相应的任务,各个任务执行的先后顺序取决于键码。根据这样的功能和操作方法,程序总体结构采用键码分析作业调度型,即作业调度完全服从操作者的意图,操作者通过键盘发出作业调度命令,监控程序接收到控制命令后,通过分析启动对应的作业。 系统软件设计采用模块化设计的方法,它是把一个功能完整的较大的程序分解为若干个功能相对独立的较小的程序模块,对各个程序模块分别进行设计、编程和调试,最后把各个调试好的程序模块联成一个大的程序。模块化程序设计的优点是单个功能明确设计和调试比较方便、容易完成。一个模块可以为多个程序所共享。模块化编程的具体体现是把各个功能相对独立的模块作为子函数,主程序是一个不断循环检测结构。当系统上电自检、初始化后,进入信号输出的循环,并自动查询面板按键的状态,以检测用户可能输入的指令,确定程序将要执行的功能。4.2 系统各模块程序的设计4.2.1 主控机程序模块首先,对单片机串口初始化,设置波特率为2400bit/s,以及nRF401初始化设置,因为nRF401是半双工的无线通讯,所以初始设置为发射状态,选择通信频道1。然后,调用键盘函数读取键盘状态,通过读取键盘状态,获得要发送的控制数字指令,通过CRC检验转换成数字命令,从串口通过nRF401把命令发送出去。判断按键状态通过串口把数据命令发送出去CRC检验码的转换开始NRF401初始化串口初始化判断是否有按键 按下NOYES 图4.2.1 主机控制程序流程图4.2.2从机程序模块 从机的程序开始,对NRF401、串口、MAX6969以及中断进行初始化,然后进入默认的中文显示模式,等待中断。因为16阵列每个点显示的时间是由定时器确定的,但是,电机的转速,一开始都是不确定的。所以,一开始显示的不怎么正确。等到进入中断以后,通过自适应算法,逐渐对计时器的初始值进行调整,过一定时间后,显示就正常了。进入中断后,通过对接收的数据进行判断,实现文字和数字显示的切换。下面简单说下,自适应算法的实现过程。首先,把假设旋转一周显示的点阵数为16*128。那就意味着旋转一周需要显示的点数为128个。由于电机旋转一周产生的中断次数为3次。那么每次外部中断发生时,应该扫描的点数为43个。在这里我设计为45个。也就是外部中断产生时,定时器应该产生的中断次数为45次(也就是扫描45个点)。当进入外部中断时,通过判断计时的中断次数来重新调整计时器的值,如果定时器中次数大于45,表明LED显示一个点的时间太短(图象或者文字宽度减少)开始NRF401初始化,串口初始化,MAX6969初始化,中断初始化等待中断T0中断根据主控命令执行操作显示文字显示数字中断返回外部中断>45接收并判断更新命令缓冲区定时器中断次数COUNT=45?延长定时器定时时间中断返回<45=45增加定时器定时时间计算T0中断的变量COUNT加1图4.2.2 从机控制程序流程图应该适当的延长定时器定时时间;若定时器中断次数小于45,表明LED显示一个点的时间过长,应该适当减少定时器定时时间。通过对定时器定时时间的不断调整(也就是调整LED显示每一个点的时间),从而达到稳定的显示。这种方法只需在软件上进行修改、调试,即使电机的转速发生了改变,也能够正确的显示文字或图象。第五章 结论通过一个多月的努力,掌握了旋转LED显示屏的工作原理,本文设计基于单片机控制LED旋转显示屏,相比其它的设计,此系统得到了简化,并且使可视角度达到了360度,经过电机的改装,供电可以持续,减轻了主板的重量,而且成功的实现了设计的基本要求。同时也提高了利用高级语言编写单片机程序的能力,以及查阅资料和解决问题的能力。系统主要实现的功能有:(1)通过单片机控制LED扫描显示的时间,能够稳定的显示数字或文字,轴向分辨率为16位。(2)能够通过无线控制显示数字或文字。(3)通过对电机的改造,解决了系统供电问题,使系统能够长期工作。不过这次毕业设计仍然存在不足的地方。数据的传送速度比较慢,没有实现主机到从机的大量的数据的交换,主要使用了半双工通讯芯片nRF401,其收发状态的转换需要13ms,影响了数据通讯的效率。总之,通过这次毕业设计巩固了以前所学的知识,很大程度上提高了分析问题和解决问题的能力。谢 辞随着毕业设计的完成,我的大学生活也将结束。在这短短的几个月的时间里,让我学到了以前在书本上学不到的知识。首先,我要感谢我的导师胡波老师对我的悉心指导和关怀。在论文写作过程中遇到了无数的困难和障碍,都在老师的帮助下度过了。他为我的毕业设计和论文的顺利完成倾注了心血和汗水,他渊博的知识、严谨的治学态度、平易近人的性格以及在设计上敏锐的洞察力,使我受益非浅。在整个毕业设计期间,胡波志老师给了我非常大的帮助和支持,从给我定题目,到工作开展,直到最后论文的撰写都离不开他的悉心指导。胡波老师给我提出了很多宝贵的建议,让我少走了很多弯路,得以顺利的完成论文。同时,在此我非常感谢学校对我们的严格要求,促使我们严格遵守学校的安排,能按时完成毕业设计的任务。在这四年的学习生活中,非常感谢机械与电气工程学院的的所有老师和同学,与他们交流使我受益颇多。最后要感谢我的家人以及我的朋友们对我的理解、支持、鼓励和帮助,正是因为有了他们,我所做的一切才更有意义,也正是因为有了他们,我才有了追求进步的勇气和信心,他(她)们对我的支持和付出是我的毕业设计得以顺利进行的保障。谢谢大家!参考文献1 李朝青. 无线发送/接收IC芯片及其数据通信技术选编.北京:北京航空航天大学出版社,2003.2 陈尚松,雷加,郭庆.电子测量与仪器M.北京:电子工业出版社,2005:1081263 徐科军.传感器与检测技术M.北京:电子工业出版社,2004:12334马忠梅.单片机的C语言应用程序设计M.北京:北京航空航天大学出版社,1999:20835 王幸之.AT89系列单片机原理与接口技术M.北京:北京航空航天大学出版社,2004:33526 Schultz. C and the 8051: Programming and Multitasking. PTR Prentice-Hall. 1993:33527 何立民.MCS-51系列单片机应用系统设计M.北京:北京航空航天大学出版社,2003:591028 康华光.电子技术基础 模拟部分(第五版) M.北京:高等教育出版社,2006:101