您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 微机原理课程设计简单数字电压表的设计模板
12020年4月19日微机原理课程设计简单数字电压表的设计《微机原理与接口技术》课程设计姓名:黄涛学号:班级:09电信2班专业:电子信息工程学院:电气与信息工程学院江苏科技大学张家港校区6月文档仅供参考12020年4月19日目录一理论部分..........................................................................错误!未定义书签。1课题要求与内容...........................................................错误!未定义书签。2系统方案设计...............................................................错误!未定义书签。3系统硬件的设计......................................................................................3二实践部分.....................................................................................................41系统硬件原理简介..................................................................................42系统硬件调试中出现的问题及解决措施.............................................83系统软件..................................................................................................83.1软件设计...............................................................................................83.2软件调试中出现的问题及解决措施................................................10三附录...........................................................................................................11文档仅供参考22020年4月19日数字电压表的设计一理论部分1课题要求与内容基本要求:(1)使用AD0809获取电压数据。(2)数据在数码管上面实时显示。(3)经过按键设置采样时间,比如60秒采集一次。(4)采样时间计时结束后产生中断,采集电压数据。附加要求:(1)经过串口在PC上的串口调试助手显示实时电压信号。2系统方案设计本电路采用模块化设计,主要由A/D转换模块、控制模块和LED显示模块组成.文档仅供参考32020年4月19日图1数字电压表原理框图框图功能说明基准电源:提供A/D转换参考电压,基准电压的精度和稳定性是影响转换精度的主要因素。A/D电路:A/D转换器是数字电压表的核心部件,由它完成模拟量转换为数字量的任务。译码驱动电路:将二--十进制(BCD)码转换成七段供LED发光显示信号。显示电路:将译码器输出的七段信号进行数字显示,即A/D转换结果。积分RC元件:经过对RC元件的选取,控制测量量程。字位驱动电路:根据A/D器上DS4~DS1端的位选信号,控制显示部分个、十、百、千位哪一位上进行显示。3系统硬件设计本电路采用模块化设计,主要由A/D转换模块、控制模块和被测电压基准电压源积分RC元件31/2位A/D转换器A/D转换器显示电路字位驱动电路VREF文档仅供参考42020年4月19日LED显示模块组成(如图1.0)。图2系统总体硬件框图设计的基本思想和顺序利用0809采集电压数据,将模拟电压信号数字电压信号。8255经过I/O控制两位数码管显示采集电压值。8254设置采样频率。8359设置中断。基本思路:当到定时时间时产生中断信号,进入中断采集电压数据。采集的数据转化后保存到内存空间里,返回主程序后在数码管上显示。二实践部分(一)系统硬件原理简介1模数(A/D)转换器ADC08091.1概述ADC0809是采样分辨率为8位的、以逐次逼近原理进行模控制模块LED显示模块A/D转换模块外部电压计数器中断请求与响应文档仅供参考52020年4月19日123456ABCD654321DCBATitleNumberRevisionSizeBDate:19-Jun-2004SheetofFile:F:\工作\精品课\单片机教案.ddbDrawnBy:IN-026msb2-1212-220IN-1272-3192-418IN-2282-582-615IN-312-714lsb2-817IN-42EOC7IN-53ADD-A25IN-64ADD-B24ADD-C23IN-75ALE22ref(-)16ENABLE9START6ref(+)12CLOCK10ADC0809—数转换的器件。其内部有一个8通道多路开关,它能够根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。1.2主要特性1)8路输入通道,8位A/D转换器,即分辨率为8位。2)具有转换起停控制端。3)转换时间为100μs4)单个+5V电源供电5)模拟输入电压范围0~+5V,不需零点和满刻度校准。6)工作温度范围为-40~+85摄氏度7)低功耗,约15mW。图3ADC0809引脚图2可编程中断控制器8259A2.1概述8259A是专门为了对8085A和8086/8088进行中断控制而设文档仅供参考62020年4月19日计的芯片,它是能够用程序控制的中断控制器。单个的8259A能管理8级向量优先级中断。在不增加其它电路的情况下,最多能够级联成64级的向量优先级中断系统。8259A有多种工作方式,能用于各种系统。各种工作方式的设定是在初始化时经过软件进行的。在总线控制器的控制下,8259A芯片能够处于编程状态和操作状态.编程状态是CPU使用IN或OUT指令对8259A芯片进行初始化编程的状态2.28259A引脚图图48259A引脚图2.3主要功能在有多个中断源的系统中,接受外部的中断请求,并进行判断,选中当前优先级最高的中断请求,再将此请求送到CPU的INTR端;当CPU响应中断并进入中断子程序的处理过程后,文档仅供参考72020年4月19日中断控制器仍负责对外部中断请求的管理。3并行接口8255A3.1概述Intel8086/8088系列的可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强,使用灵活,经过它CPU可直接与外设相连接。3.28255A工作方式方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路3.38255A引脚图文档仅供参考82020年4月19日图58255A引脚图4数码管4.1数码管结构图(a)七段式LED(b)共阳极LED(c)共阴极LED图6七段式LED显示部件数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到文档仅供参考92020年4月19日+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。5计数器Intel82545.1概述8254芯片是一款使用十分广泛的可编程定时,计数芯片,其主要功能是定时和计数的功能。是8253的改进型,比8253具有更优良的性能。与大多数微处理器兼容;技术频率从支流到10MHz;有6种可编程计数器方式;3个独立的16位计数器,二进制或十进制(BCD)计数;任一引脚对地电压-0.5~7V.5.2Intel8254的引脚图与逻辑引脚图文档仅供参考102020年4月19日图78254的引脚图对8254的编程一般只需注意两点:先写控制字,再写计数初值;计数初值必须遵循控制字中设定的格式(只有低字节或只有高字节或者先低后高,由RW1,RW0规定)。只有当CPU向8254控制字寄存器写入控制字后,即对其初始化之后,8254才能正常地工作。写入控制字后,所有控制逻辑电路将立即复位,输出端OUT立即进入初始状态。接着向计数器的计数初值寄存器中写计数初值,在写入初值后,需要经过一个时钟脉冲后,计数器才开始在脉冲下降沿进行减1计数。一般在时钟脉冲的上升沿时,门控信号GATE被采样。当A1,A0=11时,控制字寄存器被选择,控制字寄存器中的SC1,SC0则决定着(0~2)计数器中哪个会被选中以写计数初值。文档仅供参考112020年4月19日2系统硬件调试中出现的问题及解决措施实验中,在连接总电路之前我们运用实验系统提供的实验程序将实验箱各个模块芯片检查了一遍.确定各个芯片和电位器能够正常工作之后开始连接总的电路.(1)连接好电路图后运行程序数码管显示不太稳定.重新检查电路,发现有些导线接触不良甚至损坏,更换损坏导线重新运行程序直至数码管显示稳定.(2)连接好电路后发现调节电位器数码管显示不改变。首先检查整个电路,发现电路正常;转而检查程序是否有问题,发现有个子程序参数设置错误,设置了错误的终端屏蔽端口。纠正之后重新连接中断部分电路之后运行程序,发现当调节电位器之后,在一个计数周期之后,数码管的显示值会变化电路正常。3系统软件3.1软件设计1、整个程序源代码包括定义数据段,定义代码段、子程序及主程序内容。子程序中包括延时子程序、中断服务子程序及8259A初始化主程序。2、A/D转换器从启动转换到转换结束需要一定时间。为了得到正确的转换结果,必须在转换结束之后才能去读取数字量,这就是时间配合。常见三种方法实现时间配合,有:延时等待文档仅供参考122020年4月19日法、查询法和中断法。中断法是当ADC转换结束,用转换结束信号作为中断请求信号向CPU提出中断请求,CPU相应中断,在中断服务子程序中读取转换结果。3、此次设计中我使用的是中断法。将ADC0809的转换结束指示引脚EOC输出信号作为中断请求信号,送中断控制器8259A,占用一个终端类型号n,在中断服务程序里读取转换结果。4、A/D转换中IN0单极性输入电压与转换后数字的关系为N=(输入电压/参考电压)*2565、经过A/D转换后的数字量是八位二进制数,经过以下程序转换为原始电压值MOVBL,0C4H;乘以5/256*10000=196MULBL;AX=AL*BL,得16位结果PUSHAX;压栈,存入结果MOVBX,0001HPOPAXMULBX;将AX扩展为32位,结果在DX:AX中MOVBX,64H;100DIVBX;DX:AX/BX,得32位,商在AX中,余数在DX中DIVBL;AX/BL,得16位,商在AL中,余数在AH中文档仅供参考132020年4月
本文标题:微机原理课程设计简单数字电压表的设计模板
链接地址:https://www.777doc.com/doc-6110921 .html