




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录摘 要1ABSTRACT2第1章 绪论31.1 课题背景及目的31.2 国内外研究状况31.3 课题研究方法41.4 论文构成及研究内容4第2章 系统设计52.1 系统组成52.1.1 计费及显示52.1.2 时钟及显示62.1.3 计费开始提示12.2 功能模块设计1第3章 硬件及软件实现33.1 传感器及其测量系统33.1.1传感器的选择33.1.2 霍尔传感器的测量原理43.1.3 集成开关型霍尔传感器43.2 单片机53.2.1 8051 单片机功能方块图63.2.2 AT89S51单片机简介93.2.3 AT89S5l与51系列单片机相比具有如下特点93.2.4 89S51的内部框图103.2.5 中断控制123.2.6 单片机控制程序设计133.3 CPLD173.3.1 CPLD的基本结构183.3.2 CPLD的特点183.3.3 EP1K30管脚分配193.4 显示及按键控制系统203.3.1 LED数码管203.3.2 数据显示电路的设计213.5稳压电源22第4章 系统检测及分析254.1 系统仿真/硬件验证254.1.1 系统的调试方法254.1.2 系统的硬件验证254.2 设计技巧分析26附录A: FPGA芯片引脚2830摘 要本系统电源电压为+16V,速度传感器具有汽车每运行一圈提供1个脉冲信号的特性。显示器可以采用LED数码管。系统采用单片机和CPLD/FPGA的结合进行系统的主体设计, 单片机MCU芯片通过采集传感器脉冲信号进行里程计算,里程计费,利用内部定时器T0产生标准时钟信号,以计算等待时间,等待费用,同时将有关计算结果通过P0、P2口传送给CPLD/FPGA芯片。CPLD/FPGA主要完成键盘扫描,显示控制,还通过普通I/O口与单片机进行数据交换。本设计方案利用单片机和CPLD/FPGA的结合,发挥它们各自的长处,分工清晰,实际使用和操作符合大众逻辑,容易被人接受。而且,单片机丰富的I/O口和CPLD/FPGA模块化的设计为系统功能的扩展提供了空间和便利。关键词 : 计费系统 ;单片机 ;CPLD/FPGA芯片AbstractThe power supply voltage is + 16V, speed sensor provided with a car each lap run a pulse signal characteristics. LED digital display can be used. The system uses MCU and CPLD/FPGA systematic combination of the main design, MCU MCU chip sensor pulse signal by collecting mileage calculation, metered, using internal timer T0 generates standard clock signal to calculate the waiting time, waiting costs, while the relevant calculations by P0, P2 port to send to the CPLD/FPGA chip. CPLD/FPGA mainly to complete the keyboard scanning, display control, but also by the general I / O port for data exchange with the microcontroller. This design combined with the use of SCM and CPLD/FPGA, to play their respective strengths, division of labor is clear, practical use and operating in line with public logic, easy to be accepted. Moreover, expansion of the system functionality and convenience microcontroller provides abundant space for I / O port and CPLD/FPGA modular design.Keywords: billing system ; SCM ; CPLD/FPGA第1章 绪论1.1 课题背景及目的在我国社会经济的全面发展过程中,各大中小城市的出租车营运事业也迅速发展,出租车已经成为人们日常出行选择较为普遍的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是出租车市场规范化 、标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备、简单易用、计量准确的出租车计价器是加强出租车行业管理、提高服务质量的必备品。当计费系统在各大、中城市出租车中使用越来越广泛,用户对计费器的要求也越来越高。以出租车多功能计费器为例,用户不仅要求计费器性能稳定,计费准确,有防作弊功能;同时还要求其具有车票打印、语音报话识别、电脑串行通信及税控等功能;不同国家和地区的收费方式存在差异,即使在同一地区,不同车型的出租车其收费方式也有差别,而且出租车还面临几年一次的调价或调整收费方式等问题。传统的基于单片机设计的出租车多功能计费器已远远跟不上这种变化,功能升级很繁琐,需要硬件重组和软件更新同步进行,成本高,并且每次升级都可能出现新的不稳定因素;而基于现场可编程逻辑阵列的出租车多功能计费器,采用硬件描述语言VerilogHDL和逻辑综合为基础的自顶向下的电路设计方法,开发成本低,周期短,可靠性高,功能升级方便,满足了用户的要求。该系统在不改变硬件电路的前提下,具有可以重构系统的功能;采用完全相同电路结构,只要根据各地区的要求在VerilogHDL程序中设置各参数,就可以适应各地区出租车不同计费标准的需要,还可以根据各地区需求增加其他功能1。1.2 国内外研究状况从国内外的各种研究方法来看,实现出租车计费系统总共有三种方案。利用大规模的数字逻辑器件来实现,利用89C51实现,利用CPLD来实现。二十世纪后半期,数字系统得到了飞速发展,同时为了提高系统的可靠性与通用性,微处理器和专业集成电路逐渐取代了通用全硬件电路。目前,业界大量可编程逻辑器件,尤其是现场可编程器件被大量地应用在集成电路的制作当中2。理想的可编程逻辑开发系统能符合大量的设计要求:它能支持不同结构的器件。在多种平台运行,提供易于使用的界面,并且有广泛的特征。可编程器件的逻辑功能描述一般分为原理图描述和硬件语言描述,原理图描述是一种直观简便的方法,它可以讲现有的小规模集成电路实现的功能直接用可编程器件来实现,而不必去将现有的电路用语言来描述,但电路图描述方法无法做到简练。而语言描述可以精确和简练地表示电路的逻辑功能,现在可编程器件的设计过程中广泛使用。常用的硬件描述语言有ABEL、VHDL语言等,其中VHDL语言是一种行为描述语言,其编程结构类似于计算机中的C语言,在描述复杂逻辑设计时,非常简洁,具有很强的逻辑描述和仿真能力,是未来硬件设计语言的主流。1.3 课题研究方法在分析了相关资料的基础上,首先了解了出租车计费系统的重要性,国内外实现该系统的不同方法。在方案的选择上,对比了各个方案的优缺点,并对现有的计费系统进行了更新,使它能够更好的满足不同的要求。采用软件仿真方法对计费系统进行仿真,模拟电动机输出信号,设置初始值,得出仿真波形并进行观察。1.4 论文构成及研究内容论文包括绪论、出租车计费系统的设计、外围电路、结论等四大部分组成。核心部分是设计说明部分和单片机、CPLD程序设计部分。本文的的基本框架为:在方案的论证和设计说明部分一章中,同时介绍了总体设计框架,并对各个部分进行了详细说明。在计费系统的实现一章中,介绍了计费系统的相关外围电路,使系统更完善。信息工程学院毕业设计(论文) 第2章 系统设计2.1 系统组成其中系统电源电压为+16V。速度传感器不需要进行设计,假设它具有汽车每运行一圈提供1个脉冲信号的特性。显示器采用LED数码管。具体功能要求如下:图2.1系统方框图2.1.1 计费及显示里程,即汽车行程里程,用四位数字显示,显示方式为“XXX.X”,单位为,精确到0.1。 单价,即里程单价,用三位数字显示,显示方式为“X.X”,单价为元/,根据每天不同的时间段有两种情况:当时间段为06:0023:00时单价为1.4元/,其他时间段内单价为1.80元/。 等候时间,用四位数字显示分钟和秒,显示方式为“XX-XX”,等候的定义是:当汽车行驶速度小于或等于12/h时为“等候”。在等候时间大于1小时的情况下,可以不显示等候时间,但必须对等候时间进行统计计算。等候单价,等候单价有两种情况:在等候时间小于1小时的情况下,等候单价为1元每5分钟;在等候时间大于1小时的情况下,等候单价为20元每小时。 费用的计算,出租车的起价为7.00元,当里程小于2时,按起价计算费用;当里程大于2时按下式计算费用:费用=里程*里程单价+等候时间*等候单价。费用的显示,用四位数字显示,显示方式为“XXX.X”,单价为元。2.1.2 时钟及显示 当出租车在通常运行状态下,应能显示当前的时间,在汽车熄火的情况下,时钟必须正常运行,但是可以不显示时钟.2.1.3 计费开始提示 当出租车载上乘客并起步后,将空车指示牌扳倒时,空车指示牌里的指示灯熄灭,并有语音或灯光提示信号。图2.2 总体原理框图2.2 功能模块设计根据系统的设计要求,将整个计费系统分为两个大的模块,单片机模块与CPLD模块,单片机模块分为:等待判别,里程计算,等待计时,参数调整。CPLD模块分为:按键处理模块,数据整合模块,数码管扫描显示模块。单片机模块:等待判别模块:根据速度传感器脉冲信号WCLK和定时器中断产生的基准时钟信号,本系统的传感器与单片机的外部中断0即P32口相连,每次来个脉冲就会触发一次外部中断,同时就会关闭定时器中断T1,DDBZ=0,当没有脉冲来时就会打开定时中断T1,当5秒内还没脉冲系统就会判断此时出租车为等待状态,DDBZ=1;开启等待计时。里程计算模块LCJS:根据速度传感器脉冲信号WCLK,对出租车行驶的里程数进行计算,同时发出里程标志信号LC和里程计费标志信号。当LC2000说明没超过2,按起价计费,当LC2000时进行里程计费,每行驶100M应计费1次。 里程计费模块LCJF:计算行驶里程LC超过2以上里程的费用。里程计费的条件是在DDBZ=0,并且根据SDBZ分别进行加法计费操作。当SDBZ=1时,表示在06:0023:00时段,其单价SD1为1.4元/;当SDBZ=0时,表示其他时段,其单价SD2为1.8元/。如果LCBZ=1,说明行驶距离超过2,里程计费启动;如果LC2000,说明没超过2,按起价计费。等待计时模块:在等待标志信号DDBZ控制下,进行等待时间的计算,等待计时用定时器T0计算等待的时间,确保时间的准确无误,同时根据等待时间的长短发出一个熄灯标志信号XDBZ。当等待时间小于等于1小时,XDBZ=0,等待时间显示灯亮;当等待时间大于1小时,XDBZ=1,等待时间显示不亮。通过XDBZ来计算不同时间段的等待费用。等待计费模块DDJF:在等待标志信号DDBZ和熄灯标志信号XDBZ控制下,进行等待费用DDFY的计费操作。当DDBZ=1且XDBZ=0时,按1元/5分钟,即20分/分钟计费;当DDBZ=0且XDBZ=1时,按20元/小时,即33分/分钟计费。输出数据选择模块SCXZ:根据单片机发出的数据传输选择控制信号SEL,选择有关计算处理结果传输给单片机。第3章 硬件及软件实现3.1 传感器及其测量系统3.1.1传感器的选择测速,首先要解决是采样的问题。使用单片机进行测速,可以使用简单的脉冲计数法。只要转轴每旋转一周,产生一个或固定的多个脉冲,将脉冲送入单片机中进行计算,即可获得转速的信息。常用的测速元件有霍尔传感器、光电传感器和光电编码器。里程测量传感器的选择也有以下几种方案:使用光敏电阻对里程进行测量、利用编码器对车轮的圈数进行测量、利用霍尔传感器对里程进行测量、利用干簧管型传感器测量里程。光敏电阻对光特别敏感,当白天行驶时,外界光源将导致光敏电阻发出错误信号;光敏电阻对环境的要求相当高,如果光敏或发光二极管被泥沙或灰尘所覆盖,光敏电阻就不能再进行准确测量;而编码器必须安装在车轴上,安装较为复杂;霍尔元件或干簧管不但不受天气的影响,即使被泥沙或灰尘覆盖也不会有影响,而且安装方便。所以本设计采用霍尔元件对里程与速度进行测量,既简单易行,又经济适用。使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的齿轮盘上粘上一粒磁钢,霍尔元件固定在前叉上,当车子转动时霍尔元件靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在齿轮盘上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。这种传感器不怕灰尘、油污,在工业现场应用广泛。霍尔传感器是对磁敏感的传感元件,常用于信号采集的有A44E,该传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,工作电压范围宽,使用非常方便。A44E的外形如图2.1所示。1-Vcc 2-GND 3-OUT图2.1 A44E外形图本次设计信号的捕获采用的是霍尔传感器。霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1MHz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回跳、位置重复精度高。取用各种补偿和保护措施的霍尔器件工作温度范围宽,可达55150。按照霍尔器件的功能可将它们分为:霍尔线性器件和霍尔开关器件,前者输出模拟量,后者输出数字量。 按被检测对象的性质可将它们的应用分为:直接应用和间接应用。前者是直接检测出受检测对象本身的磁场或磁特性,后者是检测受检对象上人为设置的磁场,用这个磁场来作被检测的信息的载体。通过它,将许多非电、非磁的物理量例如力、力矩、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。运用霍尔元件作为检测传感器,将霍尔传感器安装在靠近圆盘的固定位置上,并在圆盘上分别安装上8个磁钢,当磁钢转到霍尔附近时, 霍尔元件的输出端输出低电平信号。当转盘转动时,单片机可通过对脉冲信号的计数,从而能方便地测出转盘的运转速度。具体结构与电路如图下图所示。3.1.2 霍尔传感器的测量原理霍尔传感器是利用霍尔效应制成的一种磁敏传感器。在置于磁场中的导体或半导体通入电流I,若电流垂直磁场B,则在与磁场和电流都垂直的方向上会出现一个电势差Uh,这种现象称为霍尔效应。利用霍尔效应制成的元件称为霍尔元件。因为它具有结构简单、频率响应宽、灵敏度高、测量线性范围大、抗干扰能力强以及体积小、使用寿命长等一系列特点,因此被广泛应用于测量、自动控制及信息处理等领域。霍尔效应原理图如图3.1所示。图3.1 霍尔效应原理图3.1.3 集成开关型霍尔传感器A44E集成霍尔开关由稳压器A、霍尔电势发生器(即硅霍尔片)B、差分放大器 C、施密特触发器D和OC门输出E五个基本部分组成,如图3.2(a)所示。(1)、(2)、(3)代表集成霍尔开关的三个引出端点。在电源端加电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。当施加的磁场达到工作点时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,通常称这种状态为开 。当施加的磁场达到释放点时,触发器输出低电压,三极管截止,使OC门输出高电压,这种状态为关 。这样两次电压变换,使霍尔开关完成了一次开关动作。工作点与释放点的差值一定,此差值称为磁滞,在此差值内,V0保持不变,因而使开关输出稳定可靠,这也就是集电成霍尔开关传感器优良特性之一。传感器主要特性是它的输出特性,即输入磁感应强度B与输出电压V0之间的关系。A44E集成霍尔开关是单稳态型,由测量数据作出的输出特性曲线如图 3.2(b)所示。测量时,在1、2两端加5V直流电压,在输出端3与1之间接一个2kW的负载电阻,如图3.3所示。图3.2 集成开关型霍尔传感器图3.3 集成霍尔开关接线图3.2 单片机单片机既是一个微型的计算机,它具有组成计算机系统的三个要素:CPU、内存与I/O。CPU:运算或逻辑上的判断;内存:存放程序与数据;I/O:与外界沟通的桥梁。CPU中央处理器Memory内存I/O输入/出设备 图3.2.1 单片机简图 4 I/O PROTBUS CONTROLOSC振荡与时序CPU8051 COREETC(TIMER2)TIMER1TIMER0ON-CHIPRAM128/(256)BytesON-CHIPPROGRAMMEMORY4K/(8K)INTERRUPTCONTROLINT1INT0EXTRNALINTERRUPTS指令分析中断系统统控制总线串行接口并行接口TXDRXDP0P2P1P3ROMRAMALECOUNTERINPUTS定时/计数器EXTRNALINTERRUPTSTIMER0TIMER1(TIMER2)SERIAL3.2.1 8051 单片机功能方块图图3.2.2 8051 单片机功能方块图振荡及时序单元(OSC): 8051内部有晶体振荡电路,只要在外部加上石英振荡晶体,即可产生频率非常稳定的振荡信号,这个振荡信号正是8051的心脏,所有8051的时钟序列都以此振荡信号为基准。内部数据存储器(Data Memory):当程序在运行时,有些数据是经常在变动的,例如LED的显示状态或显示值等,它会因I/O测量的结果而变动,这些值就暂时放置在此区域中,供其他程序进一步读取,这也代表此区域是可以随时读写的。8051系列的CPU提供128个字节可读写的数据存储单元,52系列的CPU则提供256个字节的数据存储单元,这个数据区域中有一段区域16个字节共128位是可以进行位寻址的,MCS51系列的CPU有相当强的位处理指令,可以妥善且有效地运用该数据存储器,使用方法将在8051的指令说明中再详述。内部程序存储器(Program memory): 这段区域用于存放我们的应用程序,而且这部分一经确认后是永远不做修改的。8051系列的CPU提供内部4096个字节(4KB)的程序存储器,8052系列的CPU则提供2倍即8192个字节(8KB)的程序存储器,而8031和8032则不含此单元。此单元可以使CPU选择由内部的程序区启动或由外部的程序区启动,内部的程序区启动具有保护功能,后者成本较为低廉。在8051系统中特地将程序区和数据区分隔开,两者最大的差异是后者可以读取和写入,简而言之,PROGRA MMEMORY就是 ROM,DATA MEMORY则是 RAM。定时/计数器(Timer/Counter):51系列的CPU有2个定时/计数器,而52系列CPU则有3个定时/计数器,每个定时/计数器又有多种模式可供选择。串行接口(Serial Port):8051可通过此接口与外部的计算机等设备连线交换信息,也可以通过此接口进行I/O的扩充。并行输入/出端口(Parelled I/O):不论是8051或8052单片机都有4个输入/出端口,总共有32个输入/出,而且每个点都可以单独定义成输入或输出。控制总线(Bus Control):当程序的空间超出MSC51系列内存程序空间的限制时,会通过本单元的控制线路向外部送出地址线信号和控制信号,同时当程序执行MOVX DPTR,A指令时,代表对外部数据内存做写入的运行,此时也要靠本单元送出必要的控制信号,才能达成外部READ与WRITE的运行请求。8051运算处理单元(Core): 这是整个单片机的控制处理核心,它读取程序码,经过计算及处理后,将结果送到各个寄存器或输入/输出端口上,并且接受内部和外部的中断信号,然后执行特定的中断服务程序。只要加入电源并且石英晶体开始运行后,本单元就一直不停地工作着,通常我们所谓的死机是指本单元跳入一个未知没有出口的循环中执行,而不是指CPU停止一切的运行,不再执行任何程序。累加器(Accumulator):累加器是众多寄存器中最重要的一个寄存器,通常以简写Acc代表累加器,8051的指令中有许多指令和Acc寄存器有关,也有多个指令非通过Acc不可,基本上,8051的指令中赋予Acc 累加器的权限最大。Intel公司建议程序的执行尽量以Acc为主。B寄存器(B Register): B寄存器是一个一般用途的工作寄存器,当8051使用乘除指令时,则一定要通过B寄存器来做运算。中断优先顺序控制寄存器(IPC,Interrupt Priority Control):这个寄存器中存放中断时的优先顺序表,若对应的位设成1时,代表中断有较高的中断优先权。允许中断控制寄存器(IEC,Interrupt Enable Control): 此寄存器内含系统允许中断的中断源设置值,8051共有5个中断可供选择,8052则有6个中断源,IEC寄存器内另有一个位简称位,若0时就禁止系统所有的中断要求。串行输出入缓冲寄存器(SBUF,Serial Buffer): 所有待送出或刚进入的串行数据值都存放在此寄存器中,8051的串行通信是非常简单的,只要一设置完通信协议后,再执行一个MOVSBUF,A指令,就可立即将并行数据值转化成串行数据送到外部。串行通信控制寄存器 (SCON,Serial ControL或称UART):此寄存器主要在设置串行通信的模式,当串行数据已经送完或数据已收妥时,会有对应的位被设置成1,这些位也可以当成中断要求信号,请求CPU执行特定的串行中断服务程序。定时/计数控制寄存器(TCON,Timer/Counter Control): 这个寄存器可以控制定时/计数器的打开或关闭,若一经打开且计数到溢位时,TCON上亦有对应的位被设成1,CPU必须针对此位的状态,决定是否重新设置定时/计数值。堆栈指标寄存器(SP,Stack Pointer):8051利用SP指引最近一次存入堆栈内的地址,每当我们在程序中调用其他子程序时,原程序的返回地址就会自动存入内部DATA MEMORY组成的堆栈(Stack)中,而当子程序执行到RET指令时,CPU会自动由堆栈中取回原先存入的返回地址,继续执行原程序。每当CPU将8位值存入堆栈时,我们称之为PUSH(推入),这时SP值会增加1,反之堆栈中取回8位值时,则称之为POP(提回),此时SP值会减少1。 在写8051单片机的控制程序时,在程序起始状态阶段一定要设置SP值,以便程序有足够的堆栈空间,也可以利用软件程序随时机动调整的堆栈指标SP的值。特殊功能寄存器区(SFR,Special Function Register) 8051单片机内部将多个寄存器统称成SFR,代表其特定的功能,甚至Port0、Port1、Port3也都是属SFR 的成员之一,在这些SFR 中有部分的寄存器可以进行位寻址,表 4.1是这些SFR 寄存器的整理,其中加(*)记号的寄存器可进行位寻址。表3.1 可进行位寻址的SFR 寄存器SFR 寄存器部分可进行位寻址的寄存器算术运算寄存器Acc(*)、B(*)、PSW(*)指标类寄存器SP、DPL、DPH并行输入/出端口P0(*)、P1(*)、P2(*)、P3(*)中断控制寄存器IP(*)、IE(*)定时/计数寄存器TMOD、TCON(*)、TL0、TH0、TL1、TH1串行通信寄存器SCON(*)、SBUF3.2.2 AT89S51单片机简介AT89S5l是新型高档单片机。它的主要特性是:片内含有 32 KB的 Flash程序存储器,擦写周期为 1000次;片内数据存储器内含512字节的RAM;具有可编程32线I/O口(P0,P1,P2和P3口);具有3个可编程定时器T0,T1和T2;中断系统是具有8个中断源、6个中断矢量、2级中断优先权的中断结构;具有一个全双工 UART串行口;低功耗工作方式为空闲模式和掉电模式;具有双数据指针DPTR0和DPTR1;具有3级程序锁定位;具有硬件看门狗定时器WDT;AT89S51工作电源为4.05.5V(AT89LV51RC为2.75.5V);AT89S51最高工作频率为33MHZ(AT89LV51RC为12MHZ);具有断电标志POF3.2.3 AT89S5l与51系列单片机相比具有如下特点 程序存储器由 8 KB增加到32 KB; 片内数据存储器由256宇节增加到512字节; 数据指针由1个增加到2个; 增加了看门狗定时器,CPU在执行程序过程中,由于瞬时的干扰使程序陷入死循环状态,WDT(Watchdog Timer)是使CPU摆脱这种困境而自动恢复的一种方法; 退出掉电方式由单纯硬件复位方式增加到硬件复位和中断两种方式; 新增加了断电标志POF3.2.4 89S51的内部框图 图3.2.3 89S51的内部框图引脚排列及功能: AT89S51有3种封装形式:PDIPPLCC和TQFPPDIP封装的引脚排列如图所示。 图3.2.4 单片机电路板口线 P0口8位、漏极开路的双向 1O口。 当使用片外存储器及外扩 IO口时,P0口作为低字节地址数据复用线。在编程时,P0口可用于接收指令代码宇节;在程序校验时,P0口可输出指令字节(这时需要加外部上拉电阻)。 P0口也可作通用I/O口使用但需加上拉电阻变为准双向口。当作为普通输入时,应将 输出锁存器置1 PO口可驱动8个 TTL负载 P1口8位、准双向IO口,具有内部上拉电阻。P1口是为用户准备的 1O双向口。在编程和校验时,可用做输入低8位地址。用做输入时,应先将输出锁存器置1 P1口可驱动4个TTL负载。表4.2 P1.0 P1.1替代功能引脚替代功能说明P1.0T2定时器2的外部事件输入端;可编脉冲输出端P1.1T2EX定时器 2的捕捉重装触发器输入端;定时器2的计数方向控制端 P2口8位、准双向 1O口具有内部上位电阻 当使用片外存储器或外扩1O口时P2口输出高8位地址。在编程校验时P2口可接收高字节地址和某些控制信号。 P2口也可作普通IO口使用。用做输入时,应先将输出锁存器置1 P2口可驱动4个TTL负载。 P3口8位、准双向 1O口,具有内部上拉电阻。 P3口可作为普通1O口。用做输入时,应先将输出锁存器置 1在编程校验时P3口接收某些控制信号。它可驱动4个TTL负载。P3口还提供各种替代功能。表3.3 P3口替代功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通) 控制信号线 RST复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期(即24个晶振周期)以上的高电平,将器件复位。 VPP外部程序存储器访问允许信号EA(External Access Enable)。 当信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000HFFFFH;当接地时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。 在编程时,该引脚可接编程电压(AT89C51的VPP为5V或12V;AT89LV51的VPP为12 V)。在编程校验时,该引脚可接VCC。 片外程序存储器读选通信号用PSEN(Program Store Enable),低电平有效 在片外程序存储器取指令期间,当有效时,程序存储器的内容被送至 PO口(数据总线);在访问外部RAM时,无效。 AIE/低字节地址锁存信号 AlE(Address latch Enable)。 在系统扩展时,AlE的下降沿将PO口输出的低8位地址锁存在外接的地址锁存器中,以实现低字节地址和数据的分时传送。此外,ALE端连续输出正脉冲频率为晶振频率的16,可用做外部定时脉冲使用。但要注意,每次访问外RAM时要丢失一个ALE脉冲。 在编程期间该引脚输入编程脉冲()。 电源线 VCC电源电压输入。GND接地。 外部晶振引线 XTAL1片内振荡器反相放大器和时钟发生线路的输入端。使用片内振荡器时,连接外部石英晶体和微调电容。 XTAL2片内振荡器反相放大器的输出端。当使用片内振荡器时,外接石英晶体 和微调电容。 当使用外部振荡器时,引脚XTAL1接收外振荡器信号,XTAIL2悬空。3.2.5 中断控制可采用中断的时机: 当计数值数完时要做一个特定的动作。 当外部信号有一个脉冲信号产生时要做某种特定的运算。 当外部某些信号成立时,必须立即处理。 当收到通信界面上的一个特定值时,必须立即反应。 当程序必须处理数个小程序,且这些程序必须几乎同时都在执行中。 当程序必须随时更新某项数据或显示值。 当程序必须自动且随时去检查系统中的状态值时。上述的情形亦可采用平常的程序,以持续或经常询问的写法来应付,但是若系统有多个条件要询问时,写法就会变得相当的复杂。假如改用程序中断的写法,则程序的写法就会变得较单纯些,中断程序通常有以下一个或一个以上的特征,假使我们的应用中发现有这些特征时,在程序规划前就要考虑是否采用中断的写法。特征1:每隔一个时间间隔就必须做某件特定的事情。特征2:当某个条件(不论软件或硬件线路)成立时,就让CPU立即处理。特征3:CPU 正以多任务(Multi-task)的模式,同时处理数个程序或信号。特征4:某项状态可能平时均不成立,可是一成立时,CPU 必须立即停止原先的动作,马上来处理这个状态。3.2.6 单片机控制程序设计单片机模块包括单片机AT89S51及其控制的显示和键盘系统,AT89S51对FPGA的数据进行计算,计算出用车总费用并送入显示系统显示,同时它接收键盘信息并处理显示切换。系统采用6+1显示,6个数码管作常规显示,一个数码管作状态显示。按键共有5个,分别是功能切换键,确定键,修改键,启动模拟键和空车牌压下模拟键。图3.2.5 主程序流程图图 3.2.6 按键处理流程图图3.2.7 显示子程序流程图图3.2.8 里程显示子程序流程图图3.2.9 乘车费用显示子程序流程图3.3 CPLD复杂可编程逻辑器件CPLD与现场可编程门阵列FPGA都是在PLA、PAL、GAL等逻辑器件的基础上发展起来的。与以往的PLA、PAL、GAL等相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。这样的FPGA/CPLD实际上就是一个子系统部件。这种芯片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。3.3.1 CPLD的基本结构CPLD的集成度在千门/片以上,其基本结构是由与阵列、或阵列、输入缓冲电路、输出宏单元组成。其与阵列比PAL大得多,但并非靠简单的增大阵列的输入、输出端口达到。阵列占用芯片的面积随其输入端数的增加而急剧增加,而芯片面积的增大不仅使芯片的成本增大,还使信号在阵列中传输延迟加大而影响其运行速度。所以CPLD通常是由多个类似PAL功能块组成,具有很大的固定于芯片上的布线资源,通过位于中心的互连矩阵连接在一起。互连阵列要将来自I/O的信号和逻辑块的输出布线到器件内任何逻辑块的输入。一般互连矩阵有两种形式:基于阵列的互连和基于多路开关的互连。基于阵列的互连是纵横开关的实现方式,它允许任何输入到互连矩阵中的信号布线到任何逻辑块,是完全可布通的。基于多路开关的互连是对逻辑块的每个输入有一个多路转换器,输入到互连矩阵的信号被连接到每个逻辑块的大量多路开关的输入端,这些多路转换器的选择是可编程的,只允许其一个输入通过它进入逻辑块。所以布通率与多路转换器的输入宽度有关,宽度愈大,所占面积增加,性能降低。与FPGA相比,CPLD不采用分段互连方式,因而具有较大的时间可预测性,产品可以给出引腿到引腿的最大延迟时间;此外,CPLD具有很宽的输入结构,适合于实现高级的有限状态机;具有ISP性能的CPLD,可以直接在系统内对其进行编程,因而类似于具有ISP性能的SRAM查找表类型的FPGA。3.3.2 CPLD的特点20世纪80年代中期,Altera和Xilinx分别推出了类似于PAL结构的扩展型CPLD和与标准门阵列类似的FPGA ,它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。这两种器件兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也很灵活,具有以下特点:(1) 目前的 CPLD主要是基于E2 PROM或 FLASH存储器编程 ,编程次数达 1万次。其优点是在系统断电后 ,编程信息不丢失。CPLD又可分为在编程器上编程和在系统编程 (ISP) CPLD两种。 ISP器件的优点是不需要编程器 ,可先将器件装焊于印制板 ,再经过编程电缆进行编程,编程、调试和维护都很方便 。(2) CPLD是将多个可编程阵列逻辑 (PAL)器件集成到一个芯片 ,具有类似 PAL的结构。一般情况下CPLD器件中至少包含三种结构 :可编程逻辑功能块 (FB);可编程 I/ O单元 ;可编程内部连线 。(3) 在速度上CPLD优于 FPGA。由于 FPGA是门级编程 ,且 CLB之间是采用分布式互连 ;而 CPLD是逻辑块级编程 ,且其逻辑块互连是集总式的。因此 ,CPLD比 FPGA有较高的速度和较大的时间可预测性 ,产品可以给出引腿到引腿的最大延迟时间 。(4) FPGA/CPLD软件包中有各种输入工具和仿真工具,以及版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。(5) 电路设计人员使用FPGA/CPLD进行电路设计时,软件易学易用。3.3.3 EP1K30管脚分配1、时钟源本实验器CPLD芯片由4M晶振提供振荡频率,接与P125管脚。22.1184MHz的时钟信号接于CPLD的55脚(P55)。2、输入开关本实验器中的开关引脚为 P7,P8,P9,P10,P11,P12,P13,P14,同时作为输出脚可用LED指示电平状态。3、RS232接口TXD(PC)接到RXD(CPLD)的P143RXD(PC)接到TXD(CPLD)的P1444、数码管显示本实验器有6个数码管(SEG1SEG6),采用共阴极段LED显示。SEG1SEG6采用动态扫描显示方式。SEG1SEG6的共阴公共端G经反向器分别与CPLD的对应管脚 P121,P122,P128,P130,P131,P132相连,由其控制实现各位分时选通,动态扫描。SEG1SEG6(a,b,c,d,e,f,g,p)的各段与CPLD引脚的对应关为P133,P135,P136,P137,P138,P140,P141,P142。5、键盘4X4键盘的接口电路如图3-2所示:CPLD的P44、P46、P47、P48,管脚作为扫描码输出,分别接到键盘的输入端,键盘的查询输出接到CPLD的P49、P51、P59、P60四个管脚上。图 键盘与CPLD的接口示意图5、单片机扩展槽及外扩槽在主板上留有一个模拟单片机扩展槽,用于CPLD模拟单片机之用,其与CPLD的接口分别为,P0.0P0.7(3932)对应与P17,P18,P19,P20,P21,P22,P23,P26;P1.0P1.7(18) 引到外接口;P2.0P2.7(2128) 对应与P27,P28,P29,P30,P31,P32,P33,P36;P3.0P3.7(1017) 对应与P37,P38,P39,P41,P42,P43,P124,P126;PSEN脚对应于P56,ALE脚对应与P54;6、扩展接口 P62,P63,P64,P65,P67,P68,P69,P70,P72,P73 P78,P79,P80,P81,P82,P83,P86,P87,P88,P89 P90,P91,P92,P95,P96,P97,P98,P99,P100,P101 P102,P109,P110,P111,P112,P113,P114,P116,P117,P118 , P119,P1203.4 显示及按键控制系统3.3.1 LED数码管 发光二极管(LED)是能将电信号转换成光信号的结型电路发光器件。如果把发光二极管制成条状,再按照一定方式连接,组成数字“8”,就构成LED数码管。使用时按规定使某些笔段上的发光二极管发光,即可组成09的一系列数字。 LED数码管的性能特点: 1) 能在低电压、小电流条件下驱动发光,能与CMOS、TTL电路兼容 2) 发光响应时间极短,高频特性好,单色性好,亮度高。 3) 体积小,重量轻,抗冲击性能好。4) 寿命长,使用寿命在10万小时以上,甚至可达100万小时,且成本低。 LED数码管已被广泛用做数字仪表、数控装置、计算机的数显器件. LED数码管的结构 LED数码管分共阳极与共阴极两种, a g 代表7个笔段的驱动端,亦称笔段电极,DP是小数点.3与8内部连通,“”表示公共阳极,“”表示公共阴极.对于共阳极LED数码管,将8只发光二极管的阳极(正极)短接后作为公共阳极.其工作特点是,当笔段电极接低电平,公共阳极接高电平时,相应笔段才能发光.共阴极LED数码管则与之相反,它是将发光二极管的阴极(负极)短接后作为公共阴极,当驱动信号为高电平“”端接低电平时才能发光. 1 2 3 4 5 f e 6 7 8 9 10abcdg 图 3.3.1 LED数码管LED数码管的产品中,以发红光,绿光,黄光的居多.如前所述,LED数码管等效于多只具有发光性能的PN结.当PN结导通时,依靠少数载流子的注入及随后的复合辐射发光,其伏安特性与普通二极管相似. 在正向导通之前,正向电流近似于零,笔段不发光.当电压超过开启电压时,电流就急剧上升,笔段发光.因此,LED数码管属于电流控制型器件,其发光亮度L(单位是CD/M2)与正向电流有关,用公式表示: L=K即亮度与正向电流成正比.LED的正向电压则与正向电流以及管芯材料有关.使用LED数码管时,每段工作电流一般选10mA 左右,既保证亮度适中,又不会损坏器件.3.3.2 数据显示电路的设计表3.3.1 数码管的编码表显示数码段 码显示数码段 码00c0h70f8h10f9h880h20a4h990h30b0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit 6 Entertaining Us教学设计-2025-2026学年高中英语重庆大学版选修九-重大版2004
- 《用“四舍”法试商的除法》(教学设计)-2024-2025学年四年级上册数学人教版
- 蔬菜培训基本知识总结课件
- 蔬菜品种知识培训课件
- Unit 9 Section A 1a - 2c 说课稿 2024-2025学年人教版八年级英语下册
- 2.2《大战中的插曲》教学设计 2023-2024学年统编版高中语文选择性必修上册
- 怎样通知最快 (教学设计)-2024-2025学年五年级下册数学人教版
- 2025年常识试题及答案解析
- 蓄电池知识培训课件
- 《游动物园》(教学设计)-2024-2025学年一年级上册数学冀教版
- 五年级体育课教案全集
- 新审计法知识讲解课件
- 幼儿教育幼儿园安全知识教育试题
- 哮喘患儿自我管理指导
- 2022学年上海复旦附中高一(上)期末信息技术试题及答案
- 数学思维与问题解决能力-深度研究
- 银行员工消保知识培训
- 初中数学新人教版七年级上册第二章《有理数的运算》教案(2024秋)
- 《种质资源利用》课件
- 安全防护设施培训
- 保洁投标书范本
评论
0/150
提交评论