




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编号毕业设计论文说明书题目基于51单片机实验开发平台的研制题目类型理论研究实验研究工程设计工程技术研究软件开发2011年6月5日摘要设计一种基于S51单片机的开发平台,该开发板具有成本低、体积小、可靠性高、功能齐全、低功耗设计、操作方便等特点。本论文详细介绍了该开发平台的开发过程及相关硬件结构和软件设计。开发板以ATMEL公司的AT89S51单片机为核心控制器,板上主要包括数据采集处理模块、液晶显示模块、键盘模块等。针对各个硬件模块开发了相应的软件模块,包括各个控制驱动程序、AD/DA程序、液晶显示程序等。开发板可以作为主控制模块安装于控制系统中执行控制任务,也可以用作实验板,完成单片机各类通用实验,操作简单,控制结果可见,性价比高,可以应用于高校、科研院所的实验等场合,具有一定的使用价值和现实意义。由于单片机技术在各个领域正得到越来越广泛的应用,许多集成电路生产厂家相继推出了各种类型的单片机,在单片机家族的众多成员中,AT89S51系列单片机以其优越的性能、成熟的技术及高可靠性和高性能价格比,迅速占领了市场,成为国内单片机应用领域中的主流。目前,可用于AT89S51系列单片机开发的产品越来越多,与其配套的各类开发系统、各种软件也日趋完善,因此,可以极方便地利用现有资源,开发出用于不同目的的各类应用系统。本课题设计了一款单片机实验开发系统,该系统可以实现专业基础课、专业课单片机原理与应用,单片机接口技术等、课程设计和毕业设计的实验。实验板是参考单片机教材中的实验内容设计的,能够实现简单的测试实验。本论文包括硬件系统的详细设计及汇编语言在基本控制中的应用。关键词AT89S51;实验系统;单片机;硬件;ABSTRACTDESIGNADEVELOPMENTBOARDBASEDONS51MCU,THEBOARDHASCHARACTERISTICSOFLOWCOST,SMALLSIZE,HIGHRELIABILITY,FULLFEATURED,LOWPOWERDESIGNANDEASYTOOPERATETHISPAPERINTRODUCESTHEDEVELOPMENTPROCESSOFTHEDEVELOPMENTBOARDANDRELATEDHARDWAREANDSOFTWAREDESIGNDEVELOPMENTBOARDUSINGAT89S51OFATMELCORPORATIONASCORECONTROLLER,RESOURCESONBOARDINCLUDEDATAACQUISITIONANDPROCESSINGMODULE,KEYBOARDMODULEDESIGNSOFTWAREMODULECORRESPONDINGTOEACHHARDWAREMODULE,INCLUDINGTHEDRIVERANDCONTROLPROGRAMS,DA/ADPROGRAMS,LIQUIDCRYSTALDISPLAYPROGRAMSANDSOONDEVELOPMENTBOARDCANBEUSEDASTHEMAINCONTROLMODULEINSTALLEDINTHECONTROLSYSTEMTOPERFORMCONTROLTASKS,ALSOCANBEUSEDASEXPERIMENTALBOARD,COMPLETEALLKINDSOSUNIVERSALEXPERIMENTSOSMCU,OPERATEDSIMPLY,CONTROLRESULTSCANBESEEN,HIGHCOSTPERFORMANCE,CANBEAPPLIEDTOUNIVERSITIES,RESEARCHINSTITUTES,LABORATORIESANDSOON,HASSOMEPRACTICALVALUEANDPRACTICALSIGNIFICANCEASTHESINGLECHIPMICROCOMPUTERTECHNICISUSEDWIDERANDWIDERINALLAREAS,MANYMANUFACTURERSOFINTEGRATEDCIRCUITHAVEDEVELOPPEDALLKINDSOFSINGLECHIPMICROCOMPUTERONEAFTERANOTHERAMONGTHEMANYMEMBERSOFSINGLECHIPMICROCOMPUTERFAMILY,THES51SERIESOFSINGLECHIPMICROCOMPUTERHASQUICKLYGAINEDTHEMARKETSHAREANDBECOMETHEMAINSTREAMINTHENATIONALAPPLICATIONAREAOFSINGLECHIPMICROCOMPUTERWITHTHEIREXCELLENTPERFORMANCE,MATURETECHNIC,HIGHRELIABILITYANDHIGHCOSTPERFORMANCEATPRESENT,THEREAREMOREANDMOREPRODUCTSTHATCANBEUSEDTODEVELOPS51SERIESSINGLECHIPMICROCOMPUTER,ANDTHEDEVELOPMENTSYSTEMSANDSOFTWARESMATCHEDTOTHEMAREIMPROVEDDAYBYDAYTHEREFORE,WECANCONVENIENTLYUSEAVAILABLERESOURCESTODEVELOPALLKINDSOFAPPLICATIONSYSTEMUSEDFORDIFFERENTAIMSTHISPROJECTDESIGNSANEXPERIMENTOFSINGLECHIPMICROCOMPUTERDEVELOPMENTSYSTEMWHICHCANBEAPPLIEDTOTHEEXPERIMENTSFORSPECIALIZEDCORECOURSE,PROFESSIONALCOURSEPRINCIPLEANDAPPLICATIONOFSINGLECHIPMICROCOMPUTER,INTERFACETECHNOLOGYOFSINGLECHIPMICROCOMPUTER,ETC,COURSESDESIGNANDGRADUATEDESIGNTHEEXPERIMENTALBORADISDESIGNEDACCORDINGTOTHEEXPERIMENTINTHESINGLECHIPMICROCOMPUTERTEACHINGMATERIALWHICHCANIMPLEMENTSIMPLETESTEXPERIMENTSTHISPAPERINCLUDESTHEDETAILEDDESIGNOFTHEHARDWARESYSTEMANDTHEAPPLICATIONOFASSEMBLYLANGUAGEINTHEBASICCONTROLKEYWORDSAT89S51;SINGLECHIPMICROCOMPUTER;EXPERIMENTALSYSTEM;HARDWARE;KEYPAD目录引言1绪论21系统方案311总设计方案312设计原则32硬件部分321硬件结构框图322硬件电路设计4221AT89S51单片机主控制4222键盘模块5223AD模块6224DA模块7225数码管模块10226串口模块11227点阵模块123系统软件开发工具介绍1231编译软件KEIL51概述1232KEILC51单片机编译开发系统的整日结构1333系统硬件开发工具PROTEL99SE介绍1334小结144软件部分1541整体程序设计1542分模块程序设计15421键盘模块程序设计15422AD模块程序设计16423串口通信模块程序设计17424数码管显示模块程序设计185开发板设计及测试2351开发板PCB设计2352开发板测试236结论24谢辞25参考文献26附录27引言单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。单片机具有成本低、体积小、可靠性高、具有高附加值、通过更改软件就可以改变控制对象等优点,单片机越来越成为电子工程师设计产品时的首选器件之一。因此拥有一块单片机开发板对于单片机学习具有极其重要的意义。但是单片机学习效果的优劣直接取决于单片机的选择,AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4KBYTESISPINSYSTEMPROGRAMMABLE的可反复擦写1000次的FLASH只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFLASH存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTELI960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHZ,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的WINDOWS和LINUX操作系统。本课题设计的S51单片机开发板,具有一般开发板通用结构,并基于硬件进行相关软件设计。通过对开发板上的模块进行实验,可以提高针对不同硬件进行编程的能力,同时通过实验现象对所用的硬件也有了更深一步的认识,因此该开发板具有一定的使用价值和现实意义。绪论单片机最早被应用在工业控制领域,单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。中国使用单片机的历史只有短短的30年,在初始的短短五年时间里发展极为迅速。1986年在上海召开了全国首届单片机开发与应用交流会,很多地区还成立了单片微型计算机应用协会,那是全国形成的第一次高潮。单片机应用技术飞速发展,我们上因特网输入一个“单片机”的搜索,将会看到上万个介绍单片机的网站,这还不包括国外的。电子界,在2003年7月,91STUDENT在上海、广州、北京等大城市所做的一次专业人才需求报告中,单片机人才的需求量位居第一。这是因为单片机比专用处理器更适合应用于嵌入式系统,它得到了最多的应用。纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板。但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别。只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性。由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言,因为单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸。二十世纪跨越了三个“电”的时代,即电气时代、电子时代和电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(也称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的里面。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机,智能型热水器等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。1系统方案11总设计方案本开发平台共分为7个模块,分别是串口模块、点阵模块、AD模块、DA模块、键盘模块、数码管模块、AT89S51单片机控制模块。其中以S51单片机作为核心控制器;键盘模块用来向单片机输入特定编码的信息;AD模块用来实现模数转换;DA模块用来实现DA转换;数码管模块用来显示简单的数字、字母;串口模块一般用于接一些特殊的外部设备。12设计原则开发板系统的扩展和配置应遵循以下设计原则1尽可能选择典型电路,并符合单片机常规用法。为硬件系统的标准化、模块化打下良好的基础;2系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,并留有适当余地,以便进行二次开发;3硬件结构应结合应用软件方案一并考虑。硬件结构与软件方案会产生相互影响,考虑的原则是软件能实现的功能尽可能由软件实现,以简化硬件结构。但必须注意,由软件实现的硬件功能,一般响应时间比硬件实现长,且占用CPU时间;4系统中的相关器件要尽可能做到性能匹配。如选用CMOS芯片单片机构成低功耗系统时,系统中所有芯片都应尽可能选择低功耗产品;5可靠性及抗干扰设计是硬件设计必不可少的一部分,它包括芯片、器件选择、去耦滤波、印刷电路板布线、通道隔离等;6单片机外围电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作不可靠,可通过增设线驱动器增强驱动能力或减少芯片功耗来降低总线负载;7尽量朝“单片”方向设计硬件系统。系统器件越多,器件之间相互干扰也越强,功耗也增大,也不可避免地降低了系统的稳定性。2硬件部分21硬件结构框图总体硬件结构主要包括S51单片机主控制模块、键盘模块、AD模块、DA模块、数码管模块等。硬件结构图如图11所示图11硬件结构22硬件电路设计221AT89S51单片机主控AT89S51最小系统包括复位电路、晶振电路、时钟电路。51原理图如图21所示AT89S51单片机主控制模块串口模块键盘模块DA模块AD模块数码管模块点阵模块图2151原理222键盘模块在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,键盘原理图如图所22示图22键盘原理在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口就可以构成4416按键,比如直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,直接用端口线则只能多出一键(9键),在需要的按键数较多时,才用矩阵法来做键盘是合理的。223AD模块A/D转换在单片机接口中应用广泛,串行A/D转换器具有功耗低、性价比高、芯片引脚少等特点。ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D转换器。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。是目前国内应用最广泛的8位通用A/D芯片。主要特性有1)8路输入通道,8位A/D转换器,即分辨率为8位。2)具有转换起停控制端。3)转换时间为100S时钟为640KHZ时,130S(时钟为500KHZ时)。4)单个5V电源供电。5)模拟输入电压范围05V,不需零点和满刻度校准。6)工作温度范围为4085摄氏度。7)低功耗,约15MW。内部结构ADC0809是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装。下面说明各引脚功能。IN0IN78路模拟量输入端。21288位数字量输出端。ADDA、ADDB、ADDC3位地址输入线,用于选通8路模拟输入中的一路。ALE地址锁存允许信号,输入,高电平有效。STARTA/D转换启动脉冲输入端,输入一个正脉冲(至少100NS宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。EOCA/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK时钟脉冲输入端。要求时钟频率不高于640KHZ。REF()、REF()基准电压。VCC电源,单一5V。GND地。ADC0809的工作过程首先输入3位地址,并使ALE1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。转换数据的传送A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。(1)定时传送方式对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128S,相当于6MHZ的MCS51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。(2)查询方式A/D转换芯片由表明转换完成的状态信号,例如ADC0809的EOC端。因此可以用查询方式,测试EOC的状态,即可确认转换是否完成,并接着进行数据传送。3)中断方式把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送出口地址并以信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。ADC0809芯片如图23所示图23ADC0809芯片ADC0809硬件实现,如图24所示图24ADC0809硬件原理224DA模块DAC0832是8分辨率的D/A转换集成芯片。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。DAC0832的主要特性参数如下分辨率为8位,电流稳定时间1US;可单缓冲、双缓冲或直接数字输入;只需在满量程下调整其线性度;单一电源供电(5V15V);低功耗,20MW。DAC0832结构D0D78位数据输入线,TTL电平,有效时间应大于90NS否则锁存器的数据会出错;ILE数据锁存允许控制信号输入线,高电平有效;CS片选信号输入线(选通数据锁存器),低电平有效;WR1数据锁存器写选通输入线,负脉冲(脉宽应大于500NS)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;XFER数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500NS)有效;WR2DAC寄存器选通输入线,负脉冲(脉宽应大于500NS)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。IOUT1电流输出端1,其值随DAC寄存器的内容线性变化;IOUT2电流输出端2,其值与IOUT1值之和为一常数;RFB反馈信号输入线,改变RFB端外接电阻值可调整转换满量程精度;VCC电源输入端,VCC的范围为5V15V;VREF基准电压输入线,VREF的范围为10V10V;AGND模拟信号地,DGND数字信号地。DAC0832的工作方式根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式直通方式、单缓冲方式和双缓冲方式。DAC0832引脚功能电路应用原理图DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要如要求多路D/A异步输入、同步转换等。所以这个芯片的应用很广泛,关于DAC0832应用的一些重要资料D/A转换结果采用电流形式输出。若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。DAC0832引脚功能说明DI0DI7数据输入线,TLL电平。ILE数据锁存允许控制信号输入线,高电平有效。CS片选信号输入线,低电平有效。WR1为输入寄存器的写选通信号。XFER数据传送控制信号输入线,低电平有效。WR2为DAC寄存器写选通输入线。IOUT1电流输出线。当输入全为1时IOUT1最大。IOUT2电流输出线。其值与IOUT1之和为一常数。RFB反馈信号输入线,芯片内部有反馈电阻。VCC电源输入线5V15V。WREF基准电压输入线10V10V,AGND模拟地,摸拟信号和基准电源的参考地。DGND数字地,两种地线在基准电源处共地比较好。(一)D/A转换器DAC0832是采用CMOS工艺制成的单片直流输出型8位数/模转换器。它由倒T型R2R电阻网络、模拟开关、运算放大器和参考电压VREF四大部分组成。运算放大器输出的模拟量V0为由上式可见,输出的模拟量与输入的数字量成正比,这就实现了从数字量到模拟量的转换。一个8位D/A转换器有8个输入端(其中每个输入端是8位二进制数的一位),有一个模拟输出端。输入可有28256个不同的二进制组态,输出为256个电压之一,即输出电压不是整个电压范围内任意值,而只能是256个可能值。D0D7数字信号输入端。ILE输入寄存器允许,高电平有效。CS片选信号,低电平有效。WR1写信号1,低电平有效。XFER传送控制信号,低电平有效。WR2写信号2,低电平有效。IOUT1、IOUT2DAC电流输出端。RFB是集成在片内的外接运放的反馈电阻。VREF基准电压(1010V)。VCC是源电压(515V)。AGND模拟地NGND数字地,可与AGND接在一起使用。DAC0832输出的是电流,一般要求输出是电压,所以还必须经过一个外接的运算放大器转换成电压。DAC0832管脚如图24所示图24DAC0832管脚LM324简介LM324系列器件为价格便宜的带有真差动输入的四运算放大器。与单电源应用场合的标准运算放大器相比,它们有一些显著优点。该放大器可以工作在低到30伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。每一组运算放大器可用图所示的符号来表示,它有5个引出脚,其中“”、“”为两个信号输入端,“V”、“V”为正、负电源端,“VO”为输出端。两个信号输入端中,VI()为反相输入端,表示运放输出端VO的信号与该输入端的位相反;VI()为同相输入端,表示运放输出端VO的信号与该输入端的相位相同。图25图25管脚连接225数码管模块7段LED数码管的结构原理单片机中经常使用7段LED来显示数字,也就是用7个LED构成字型“8”,并另外用一个圆点LED来显示小数点,也就是说一共有8个LED,构成了“8”的字型。7段LED分共阴级和共阳级两种,本论文选择的是共阴LED数码管。共阴极7段LED的原理图和管脚配置如图26所示,实际中,各个型号的7段LED的管脚配置可能不会是一样的,在实际应用中要先测试一下各个管脚的配置,再进行电路原理图的设计。图26LED管脚配置7段LED数码管动态显示原理LED的静态显示虽然有编程容易、管理简单等优点,但是静态显示所要占得I/O口资源很多,所以在显示的LED点较多的情况下,一般都采用动态显示方式。在多位7段LED显示中,为了简化电路,降低成本,则将所有位的段选线并联在一起,刚好由8个I/O口来控制8个段。而公共端则分别由相应的I/O口控制,以实现各个位的分时选通。原理图如27图所示图27LED原理226串口模块本文使用的是MAX232芯片来跟计算机通信。MAX232芯片是美信公司专门为电脑的RS232标准串口设计的单电源电平转换芯片,使用5V单电源供电。芯片如图28所示图28MAX232芯片第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生12V和12V两个电源,提供给RS232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚GND、16脚VCC(5V)。MAX232的主要特点有符合所有的RS232C技术标准;只需要单一5V电源供电;片载电荷泵具有升压、电压极性反转能力,能够产生10V和10V电压V、V;功耗低,典型供电电流5MA;内部集成2个RS232C驱动器;内部集成两个RS232C接收器。227点阵模块LED点阵随着LED应用领域的扩大,要求生产更为直接和方便的LED显示器件。因而出现了数码管、字符管、LED点阵、电平管等多种LED显示器。不管显示器的结构怎么变,它的核心部件仍然是发光半导体芯片。本文用的是88点阵,它是由64个发光二极管按一个规律组成的,如图29所示图29点阵原理硬件电路图如图210所示图210点阵硬件电路3系统软件开发工具介绍3编译软件KEIL51概述KEILC51编译器是美国KEILSOFTWARE公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。KEILC51编译软件提供丰富的库函数和功能强大的集成开发调试工具,全WINDOWS界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KEILC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。2KEILC51单片机编译开发系统的整体结构C51工具包的整体结构,其中UVISION与ISHELL分别是C51FORWINDOWS和FORDOS的集成开发环境IDE,可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件OBJ。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件ABS。ABS文件由OH51转换成标准的HEX文件,以供调试器DSCOPE51或TSCOPE51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。33系统硬件开发工具PROTEL99SE介绍PROTEL99SE是应用于WINDOWS9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源地层和16个机加工层。PROTEL99SE的系统组成按照系统功能来划分,PROTEL99SE主要包含以下两大部分和6个功能模块。(1)电路工程设计部分电路原理设计部分(ADVANCEDSCHEMATIC99)电路原理图设计部分包括电路图编辑器(简称SCH编辑器)、电路图零件库编辑器(简称SCHLIB编辑器)和各种文本编辑器。本系统的主要功能是绘制、修改和编辑电路原理图;更新和修改电路图零件库;查看和编辑有关电路图和零件库的各种报表。印刷电路板设计系统(ADVANCEDPCB99)印刷电路板设计系统包括印刷电路板编辑器(简称PCB编辑器)、零件封装编辑器(简称PCBLIB编辑器)和电路板组件管理器。本系统的主要功能是绘制、修改和编辑电路板;更新和修改零件封装;管理电路板组件。自动布线系统(ADVANCEDROUTE99)本系统包含一个基于形状(SHAPEBASED)的无栅格自动布线器,用于印刷电路板的自动布线,以实现PCB设计的自动化。(2)电路仿真与PLD部分电路模拟仿真系统(ADVANCEDSIM99)电路模拟仿真系统包含一个数字/模拟信号仿真器,可提供连续的数字信号和模拟信号,以便对电路原理图进行信号模拟仿真,从而验证其正确性和可行性。可编程逻辑设计系统(ADVANCEDPLD99)可编程逻辑设计系统包含一个有语法功能的文本编辑器和一个波形编辑器(WAVEFORM)。本系统的主要功能是;对逻辑电路进行分析、综合;观察信号的波形。利用PLD系统可以最大限度的精简逻辑部件,使数字电路设计达到最简化。高级信号完整性分析系统(ADVANCEDINTEGRITY99)信号完整性分析系统提供了一个精确的信号完整性模拟器,可用来分析PCB设计、检查电路设计参数、实验超调量、阻抗和信号谐波要求等。(3)PROTEL99SE的功能特性。开放式集成化的设计管理体系;超强功能的、修改与编辑功能;强大的设计自动化功能。34小结设计硬件电路必须了解单片机系统是由哪些部分组成。在元器件的布局方面,应该把相互有关的元件尽量放得靠近一些,例如,晶振易产生噪声,在放置的时候应把它们靠近些。对于那些易产生噪声的器件、小电流电路、大电流电路开关电路等,应尽量使其远离单片机的逻辑控制电路和存储电路(ROM、RAM),如果可能的话,可以将这些电路另外制成电路板,这样有利于抗干扰,提高电路工作的可靠性。实际上,印制电路板走线、引脚连线和接线等都可能含有较大的电感效应。大的电感可能会在VCC走线上引起严重的开关噪声尖峰。防止VCC走线上开关噪声尖峰的唯一方法,是在VCC与电源地之间安放一个01UF的电子去耦电容。如果电路板上使用的是表面贴装元件,可以用片状电容直接紧靠着元件,在VCC引脚上固定。最好是使用瓷片电容,这是因为这种电容具有较低的静电损耗(ESL)和高频阻抗,另外这种电容温度和时间上的介质稳定性也很不错。尽量不要使用钽电容,因为在高频下它的阻抗较高。在单片机控制系统中,地线的种类有很多,有系统地、屏蔽地、逻辑地、模拟地等,地线是否布局合理,将决定电路板的抗干扰能力。在设计地线和接地点的时候,应该考虑以下问题逻辑地和模拟地要分开布线,不能合用,将它们各自的地线分别与相应的电源地线相连。在设计时,模拟地线应尽量加粗,而且尽量加大引出端的接地面积。一般来讲,对于输入输出的模拟信号,与单片机电路之间最好通过光耦进行隔离。在设计逻辑电路的印制电路板时,其地线应构成闭环形式,提高电路的抗干扰能力。地线应尽量的粗。如果地线很细的话,则地线电阻将会较大,造成接地电位随电流的变化而变化,致使信号电平不稳,导致电路的抗干扰能力下降。在布线空间允许的情况下,要保证主要地线的宽度至少在23MM以上,元件引脚上的接地线应该在15MM左右。对元器件的了解有助于电路和程序的设计,认真阅读熟悉各芯片的资料,对系统的总体方案更加明确,在硬件电路成本允许的情况下,尽可能的选择集成度高、功能完备的芯片。购买芯片的时候,必须选择信誉好的卖家和厂商,这样更能保证不会花很多时间在芯片的质量问题上。最好选择进口的芯片,避免不必要的问题出现。4软件部分41整体程序设计软件部分主要包括数码管程序、键盘程序、AD程序、DA程序、点阵程序、串口通信程序、液晶程序和其他简单模块程序。42分模块程序设计依据开发板上硬件资源,进行程序的开发,在软件的设计过程中,采用模块化的设计方法,依次分别为每个模块设计软件。下面分别介绍以上各个模块的程序设计。421键盘模块程序设计矩阵式键盘的按键识别方法为判断键盘中有无键按下将全部行线KEY0KEY3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。其方法是依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。矩阵式键盘的按键编码处理将行线和列线依次进行数值编码,然后进行一定规则的运算,就是对键值的编码。键盘程序流程图如图41所示开始键盘扫描有键按下取键值YN原有键值不变键值送P0口选通数码管图41键盘程序流程键盘采用的是行扫描法确定键值,在程序中具体是这样扫描键盘的将键盘扫描码送入P2口,先是使行线依次为低电平,顺序为KEY1、KEY2、KEY3、KEY4,在某一行线为低电平的状态下,读取P2口的状态,将状态值依次右移四位,这样便KEY5KEY8的状态值移到了低四位,再将高四位状态值置一,将处理后的状态值与当前的扫描码比较,如果此时的状态值与四个扫描码中的一个相同,证明有键按下,此时保存扫描码的数组下标和与状态值相等的扫描码数组下标,并将两个值按照键盘编码值进行某一规则的四则运算后返回给主函数中的某一变量;如果在全部行线依次为低电平情况下的状态值与四个扫描码中没有一个相同,证明没有键按下,返回1到主函数。在主函数中调用键盘扫描函数对键盘进行扫描,判断返回键值,若返回值不为1,证明右键按下,在某一个数码管上显示键值,若返回值为1,证明没有键按下,显示先前按下的按键键值。422AD模块程序设计ADC0809是CM0S的8位A/D转换器,片内有8路模拟开关,可控制8个模拟量中的一个进入转换器中。ADC0809的分辨率为8位,含锁存控制的8路多路开关,输出由三态缓冲器控制,单5V电源供电。ADC0809的管脚及主要控制信号时序图。其中,START是转换启动信号,高电平有效;ALE是3位通道选择地址(ADDC、ADDB、ADDA)信号的锁存信号(当模拟量送至某一输入端如IN1或IN2等时,由3位地址信号选择,而地址信号由ALE锁存);EOC是转换情况状态信号,当启动转换约100S后,EOC产生一个负脉冲,以示转换结束;在EOC的上升沿后9若使输出使能信号OE为高电平,则控制打开三态缓冲器,把转换好的8位数据结果输出至数据总线。ADC0809的工作时序图如图42所示图42ADC0809工作时序AD程序流程图如图43所示开始启动AD转换输入方式选择输入通道选择读取数据数据处理与显示图43A/D程序流程依据操作时序对ADC0809编程,包括转换启动和AD值读取函数,在AD转换函数中可以选择ADC0809的转换通道和输入方式,即通道0或通道1,单通道输入或差分输入。在主函数中循环读取某一通道的模拟电压值,将采集到的数据在液晶或数码管上显示出来。423串口通信模块程序设计单片机通过MAX232与PC机通讯程序流程图45所示开始串口初始化保存数据发送数据RI等于1YNTI等于1RI置零TI置零YN图45MAX232与PC机通讯程序流程在PC机串口调试助手的发送窗口发送数据到单片机,单片机接收到数据后发送给PC机,并在串口调试助手接收窗口中显示。424数码管显示模块程序设计数码管程序数码管的显示方式可以分为动态和静态的。动态的也叫扫描方式,是利用发光二极管的余辉效应和人眼的视觉暂留效应来实现的,只要在在一定时间内数码管的笔段亮的频率够快,人眼就看不出闪烁,一般外围硬件较少,但是对单片机资源耗用巨大。静态的也叫锁存方式,单片机送出数据后控制外围锁存器件锁存数据,这样数码管笔段里的电流不变,数码管稳定显示,这样单片机可以干别的活不用管数码管了。这种方案的优点是对单片机的P口资源和时间耗用很少,但是数码管的外围辅助电路复杂。在本程序中使用动态扫描法控制数码管显示,数码管程序流程图如图46所示开始“4”段码送P0口位码送P1口选中第四位数码管“3”段码送P0口位码送P1口选中第三位数码管“2”段码送P0口位码送P1口选中第二位数码管“1”段码送P0口位码送P1口选中第一位数码管图46数码管程序流程P0口提供数码管显示所需的段码,4、3、2、1四位数字对应的共阴数码管的段码分别赋给变量DIS0、DIS1、DIS2、DIS3,在主函数中,依次将DIS0、DIS1、DIS2、DIS3送至P0口,由于八个数码管的每个段所对应的连线连在一起,只有被片选的数码管才会点亮。因此在将段码送至P0口的同时,还要用P1口送出位码片选中要显示的数码管,这样片选中的数码管就会显示特定的数字。程序中由低位到高位循环点亮数码管显示4、3、2、1。由于间隔时间的总和小于01秒,根据人眼的视觉暂留效应,四个数码管看起来同时点亮。LCD1602显示程序1602液晶模块内部的控制器共有11条控制指令,如表47所示序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回0000000013置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L6置功能00001DLNF7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容表47控制指令1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明1为高电平、0为低电平)指令1清显示,指令码01H,光标复位到地址00H位置。指令2光标复位,光标返回到地址00H。指令3光标和显示模式设置I/D光标移动方向,高电平右移,低电平左移S屏幕上所有文字是否左移或者右移高电平表示有效,低电平则无效。指令4显示开关控制。D控制整体显示的开与关,高电平表示开显示,低电平表示关显示C控制光标的开与关,高电平表示有光标,低电平表示无光标B控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5光标或显示移位S/C高电平时移动显示的文字,低电平时移动光标。指令6功能设置命令DL高电平时为4位总线,低电平时为8位总线N低电平时为单行显示,高电平时双行显示F低电平时显示5X7的点阵字符,高电平时显示5X10的点阵字符。指令7字符发生器RAM地址设置。指令8DDRAM地址设置。指令9读忙信号和光标地址BF为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10写数据。指令11读数据。读写操作时序如图48所示图48读写操作时序LCD1602显示程序流程图如图49所示开始显示两个字符串结束设置显示模式关闭显示显示清屏显示光标移动设置显示开及光标设置图49LCD1602显示程序流程液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,LCD1602的内部显示地址见表41012345678910111213141516第一行000102030405060708090A0B0C0D0E0F第二行404142434445464748494A4B4C4D4E4F表410LCD1602的内部显示地址比如第二行第一个字符的地址是40H,那么是否直接写入40就可以将光标定位在第二行第一个字符的位置呢这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是010000001000000011000000。5开发板设计及测试51开发板PCB设计遵循先难后易,先大后小的原则。根据要求先将所有有定位要求的元件固定并锁定。再参考原理图根据信号流向规律,放置其它原器件。布局时总的连线尽可能的短,关键信号线最短。模拟信号,数字信号需分开。按照均匀分布,重心平衡,版面美观的标准来优化布局。相同结构电路部分尽可能采取对称布局。同类元件尽可能在X或Y方向上一致,以便于生产。元件的放置要便于调试和维修,大元件边上不能放置小元件,需要调试的元件周围应有足够的空间。发热元件应有足够的空间以利于散热。使用同一种电源的元件应考虑尽量放在一起,以便于将来的电源分割。集成电路的去耦电容应尽量靠近芯片的电源脚,使之与电源和地之间形成回路最短。旁路电容应均匀分布在集成电路周围。采用手动布线的方法,在保障布线合理,符合规范的情况下,尽量追求布线的完美。避免字符被焊盘或过孔覆盖,要保证装配以后还可以清晰看到字符信息。所有字符在X或Y方向上应一致。字符,丝印大小要统一。52开发板测试把原器件一一焊接上电路板后,使用万用表检测电路板上是否有虚焊,发现我的电路板有多处是虚焊的,因为是我第一次做双面板,在印制双面板的时候把一些铜线压断了,以至于在检测电路时我用了不少的铜丝接上电路。检测完电路以后,我烧入程序,但是烧写工具无法检测到芯片,我只好用万用表检测芯片的供电、下载口的线路以及下载线是否连接正常,但是这些都在正常工作,最后我检测了晶振还有51芯片下两个30PF的电容,问题出现在电容上,我通过更换了电容,问题得到解决。在单片机开发过程中,调试的工作量比较大。单片机系统的硬件调试和软件调试是不能分开的,许多硬件错误是在软件调试中被发现和纠正的。但通常是先排除明显的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 华山医院职业暴露培训
- 知识产权行政保护课件
- 陈鹤琴活教育读书分享
- 冲刺抢分卷01 备战2025年高考考前仿真模拟卷冲刺抢分卷化学试题01 (辽宁、黑龙江、吉林、内蒙古专用) 含解析
- 能发音的音标教学课件
- 农村农田水利工程承包合同
- 食品营养与加工技术案例分析题集
- 社交媒体营销策略考试题
- 行政管理2025年公共关系学的关键问题
- 生物化学在医药领域的知识练习题
- 广东东软学院《英语语法I》2023-2024学年第二学期期末试卷
- 流行性感冒诊疗方案(2025 年版)解读课件
- 2025年公务员考试时事政治题及参考答案
- 物业管理安全责任分配
- 2025年湖南湘投控股集团有限公司招聘笔试参考题库含答案解析
- 绿色建筑材料在土木工程施工中的应用研究
- 第二十九节 商业模式创新及案例分析
- 中国铁路沈阳局集团有限公司招聘笔试冲刺题2025
- 2024年度医疗设备报废回收与资源化利用合同3篇
- 医疗器械的维护和保养方法
- 石材养护报价单
评论
0/150
提交评论