占空比可调的脉冲发生器_第1页
占空比可调的脉冲发生器_第2页
占空比可调的脉冲发生器_第3页
占空比可调的脉冲发生器_第4页
占空比可调的脉冲发生器_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I / 25 下载文档可编辑 沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称:微机系统综合课程设计微机系统综合课程设计 课程设计题目:占空比可调的脉冲发生器占空比可调的脉冲发生器 院(系):计算机学院 专 业:计算机科学与技术 班 级: 学 号: 姓 名: 指导教师:张维君 完成日期:2012年7月15日 目目 录录 第第 1 1 章章 总体设计方案总体设计方案.1 1 1.1 课程设计的内容和要求.1 1.2 课程设计原理 .1 1.3 方案设计 .1 1.4 方案论证 .2 1.5 设计环境.2 第第 2 2 章章 详细设计方案详细设计方案.3 3 2.1 模块设计 .3 2.2 程序流程图 .4 II / 25 下载文档可编辑 2.3 硬件连线图 .6 第第 3 3 章章 调试及结果分析调试及结果分析.7 7 3.1 调试步骤及方法 .7 3.2 实验结果 .7 3.3 结果分析 .8 参考文献参考文献.9 9 附附 录(源程序)录(源程序).1010 下载文档可编辑 第 1 章 总体设计方案 1.11.1 课程设计的内容和要求课程设计的内容和要求 一、课程设计内容: 具体内容如下: 1.用 8255 和 8253 产生脉宽可调的脉冲信号; 2.用实验箱上键盘中的两个按键调节脉冲; 3.按脉宽增加键脉宽逐渐增大,按脉宽减小键脉宽逐渐减小; 二、课程设计要求: 1.认真查阅相关资料; 2.独立设计、调试并通过指导教师现场验收; 3.撰写课程设计报告。 1.21.2 课程设计原理课程设计原理 根据课设要求,要实现通过键盘按键调节脉宽的脉冲信号发生 器。本次设计中主要使用了 8259 可编程中断控制器,8255 可编程 并行接口芯片,8279 键盘/显示芯片,8253 定时/计数器以及部分连 线来实现以上功能。利用 8253 芯片产生一定频率的脉冲信号,并用 8255 芯片以程序查询方式,检测该信号上高、低电平的持续时间, 还要利用 8259 芯片的中断信号扫描信号,通过改变高电平的持续时 间来调节占空比。最后,应用 8279 芯片将结果显示到数码管上。 2 / 25 下载文档可编辑 1.31.3 方案设计方案设计 根据本次课程设计要求,用 8253 芯片计数器 0 产生低频率的方 波信号,然后叠加一个矩形波,使之成为一个改变分频就可以改变 占空比的矩形波。再将该矩形波作为计数器 1 产生的输入信号,使 计数器 1 产生脉宽可调的脉冲信号,并把该脉冲信号接到 8255 的一 个引脚(PB0) ,运用程序查询方式循环检测这个引脚高、低电平持 续时间。利用芯片 8259 的中断功能循环扫描芯片 8253 计数器 1 的 分频数,通过分频数计算占空比的值。在 BX 中存放分频数 NUM,在 CX 中存放(NUM-1) 。然后,将 BX 中的数扩大 100 倍,再除以 CX 中 的值,以此来计算出被扩大 100 倍后的占空比;接下来就是显示正 确的占空比,将前面得到的准占空比除以 10,再将 AH 中的结果存 到 CH 中,将 AL 中的结果存到 CL 中,最后,由 8279 芯片将最终结 果显示到数码管上。 1.41.4 方案论证方案论证 通过仔细阅读课程设计任务书,对本次课程设计所要完成的题 目和要求要充分理解,从以下两方面进行方案论证。 对预设使用的芯片进行论证 8253 可编程定时/计数器的功能:一是作为计数器,即在设置 好计数初值后,便开始对外部脉冲作减 1 操作,当减为 0 时,输出 一个信号;二是作为定时器,在设置好定时参数后,便开始对外部 信号作减 1 操作,并按定时常数不断地输出为时钟周期整数倍的定 3 / 25 下载文档可编辑 时间隔。 8255A 是可编程并行输入输出接口芯片,具有三个 8 位并行端 口,40 个引脚,双列直插式封装。有三种输入输出方式,用于输出 给定信号。 8259A 是可编程中断控制器芯片,用于管理和控制 80 x86 的外 部中断请求,坑人可实现中断优先级判定,提供中断信号,屏蔽中 断输入等功能。 8279 是可编程键盘/显示接口芯片。它的功能主要包括键盘输入 和显示控制 部分,其中键盘部分提供扫描功能。显示部分则是提供扫描方式的 显示接口,可与 8 位或 16 位 LED 数码管连接构成。 对预设计的程序进行论证 用小灯测试 8253 芯片产生的脉冲信号的频率,已达到设计中所 要求的低频率信号。逐步测试数据采集模块,计算占空比模块,显 示模块。 经过认真仔细论证,证明所提出的方案切实可行。 1.51.5 设计环境设计环境 软件环境:LCT88EA 应有软件、Win2000、PC 机 硬件环境:AEDK 实验箱 下载文档可编辑 第 2 章 详细设计方案 2.12.1 模块设计模块设计 1. 主模块: 在主程序中,主要实现各个芯片的初始化,将 8253 芯片的计数 器 0 设置为工作方式 3,低 8 位读写,二进制计数方式,使其输出方 波在与一个矩形波叠加产生新的矩形波。 ,再将该矩形波作为计时器 1 的输入信号,并将计数器 1 设置为工作方式 2,低 8 位读写,十进 制计数方式,使计数器 1 产生低频率符合要求的脉冲信号; 2. 数据结构部分: 用 BX 寄存器存储当前的分频数,用 CX 寄存器存储当前分频数 减一数。在内存中开辟了一个字节空间 DISBUF,用来存放每种模式 所要显示的结果在 TAB 表中的编码,在中断服务程序中通过按照这 个空间中的 8 个编码查表显示数码管上所要显示的结果。 3. 数据采集模块: 采用程序查询方式,循环检测 8253 芯片计数器 1 的分频状态。 记录当前分频数 NUM,并保存到 BX 寄存器。 4. 计算占空比模块: 将 BX 中的数减一得到的数存入 CX 中,然后,将 BX 中的数乘以 100,再除以 CX 中的值,以此来计算出被扩大 100 倍后的占空比; 接下来就是显示正确的占空比,将前面的到的准占空比除以 10,再 4 / 25 下载文档可编辑 将 AH 中的结果存到 CH 中,将 AL 中的结果存到 CL 中。 5. 显示模块: 根据 CH、CL 中的值,由 8279 芯片查表后将对应的数据显示到 数码管上,以得到最后的正确结果。 下载文档可编辑 2.22.2 程序流程图程序流程图 本次设计的主流程图如图 2.2.1 所示;采集数据模块流程图如 图 2.2.2 所示; 计算占空比模块流程图如图 2.2.3 所示;显示占空比模块流程图如 图 2.2.4 所示。 图 2.2.1 占空比测量的主流程图 下载文档可编辑 6 / 25 下载文档可编辑 图 2.2.2 数据采集模块流程图 图 2.2.3 计算占空比模块流程图 图 2.2.4 显示模块流程图 下载文档可编辑 2.32.3 硬件连线图硬件连线图 本次设计用到四个芯片,分别是 8259 可编程中断控制器,8255 可编程并行接口芯片,8279 键盘/显示芯片,8253 定时/计数器。其 中 8255 芯片的 A、B、C 端口及控制端口的地址为分别为 200H,201H,202H,203H;键盘/显示芯片 8279 的数据端口地址为 210H,控制端口地址为 212H;定时/计数器芯片 8253 的端口地址为 228-22BH。芯片 8259 的端口地址为 220H 具体连接情况如图 2.2 所 示。 图 2.2 硬件连线图 下载文档可编辑 第 3 章 调试及结果分析 3.13.1 调试步骤及方法调试步骤及方法 在开始的时候,每次都没有结果显示。于是通过单步调试,通 过查看各个寄存器中的值,来验证各模块是否正常跳转以及模块的 正确性。结果,在数据中断中没有中断产生。经过调试,可以正常 显示预定的占空比的值,但是无法对占空比进行调节。经过思考发 现,问题出在数据显示模块,每次显示完第一次预定的值以后没有 对数码管进行清空,所以显示出现问题。之后,修改程序,在每次 显示之前对数码管进行清空操作。问题得到解决。进一步修改,在 计算模块中,将 BX 寄存器中的值乘以 100 后得到的结果存到 AX 寄 存器中,用 DX:AX 做被除数,防止因 BX 中数值过大而使 AL 寄存器 产生溢出而得到的不正确的结果。修改后,再次测试,则可以得到 稳定而且正确的结果,误差很小。 3.23.2 实验结果实验结果 本设计已经基本满足任务书的要求。现将结果简单介绍如下: 1.当将计数器 1 的初值赋为 5,即产生五分频的脉冲信号时,数码 管显示结果为 0.80; 2.当按下实验箱上的”+”时,显示的占空比值增加,向 1 逼近。 3.当按下实验箱上的”-”时,显示的占空比值减小。向 0.5 逼近。 下载文档可编辑 3.33.3 结果分析结果分析 由实验结果可知,由 8253 产生的方波最小的占空比的值为 0.5。方波和矩形波叠加之后应该可以产生占空比小于 0.5 的值,但 是此程序没有实现这个功能,有待提高。 下载文档可编辑 参考文献 1 龚尚福.微机原理与接口技术M.西安:西安电子科技大学出版 社,2003 2 王忠民.微型计算机原理M. 西安:西安电子科技大学出版社, 2003 3 沈美明,温冬婵. IBM-PC 汇编语言程序设计M.北京:清华大 学出版,2001 下载文档可编辑 附 录(源程序) TIM_CTLEQU 22bH TIMER0EQU 228H TIMER1EQU 229H TIMER2EQU 22AH PC8255EQU 203H PC8255CEQU 202H PC8255B EQU 201H Z8279 EQU 212H D8279 EQU 210H LEDMODEQU 00H ;左边输入,八位显示外部译码八位显示 CODE SEGMENT ASSUMECS:CODE START: JMP S NUM DB 5 S: cli MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0c2H OUT DX,AL CALL INIT8253 11 / 25 下载文档可编辑 CALL INIT8259 MOV DX,TIM_CTL MOV AL,00010110B ;计数器 0,低 8 位读写,工作方式 3,二进制 OUT DX,AL MOV AL,00000101B MOV DX,TIMER0 OUT DX,AL MOV DX,TIM_CTL MOV AL,01010101B ;计数器 1,低 8 位读写,工作方式 2,十进制 OUT DX,AL MOV AL,NUM MOV DX,TIMER1 OUT DX,AL MOV DX,PC8255 MOV AL,10000010B ;A 方式 0,输出 B 方式 0,输入 C 输出 OUT DX,AL MOV DX,PC8255B MOV BX,0 MOV CX,0 12 / 25 下载文档可编辑 CALL DISPLAY mov dx,223h out dx,al mov al,30h out dx,al STI JMP $ A1: NOP JMP A1 INIT8259: MOV AL,13H MOV DX,220H OUT DX,AL MOV DX,221H MOV AL,30H OUT DX,AL MOV AL,03 OUT DX,AL MOV AL,0FEH ;ocw1 OUT DX,AL IN AL,DX MOVAX,0 13 / 25 下载文档可编辑 MOVDS,AX MOVSI,30H*4 MOVAX,OFFSET INTR1 MOVSI,AX MOVAX,CS MOVSI+2,AX ret INIT8253: push AX MOV DX,TIM_CTL MOV AL,00010110B ;计数器 0,低 8 位读写,工作方式 2,二进制 OUT DX,AL MOV AL,00000101B MOV DX,TIMER0 OUT DX,AL MOV AL,10110101B MOV DX,TIM_CTL OUT DX,AL MOV AX,6144 MOV DX,TIMER2 OUT DX,AL 14 / 25 下载文档可编辑 MOV AL,AH OUT DX,AL POP AX RET intr1: call readkey CMP AL,12H ;是减小 JE down CMP AL,13H JE up iret DOWN: JMP A UP: INC NUM INC NUM JMP A RET A: MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0c2H OUT DX,AL 15 / 25 下载文档可编辑 CALL DISPLAY IRET readkey: MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0C2H OUT DX,AL WAIIT: NOP MOV AX,0 IN AL,DX MOV BL,AL AND AL,80H CMP AL,80H JE WAIIT ;FIFO 正在清除期间则跳转等 待 MOV AL,BL AND AL,0FH CMP AL,00H JE WAIIT ;无键按下则等待 MOV DX,Z8279 MOV AL,82H ;置 读 FIFO RAM 命令字 OUT DX,AL 16 / 25 下载文档可编辑 MOV DX,D8279 ;读入 FIFO RAM 内容 IN AL,DX ret DISPLAY: MOV CX,00H MOV BX,00H MOV DX,0 MOV CL,NUM DEC NUM MOV BL,NUM MOVAX,100 MUL BX DIV CX MOV CL,10 DIV CL MOV CH,AH ;个位 MOV CL,AL ;十位 PUSH CS POP DS MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0C2H OUT DX,AL 17 / 25 下载文档可编辑 MOV DX,Z8279 MOV AL,LEDMOD OUT DX,AL MOV AL,90H OUT DX,AL MOVAL,CH LEABX,LED XLAT MOV DX,D8279 OUT DX,AL ;显示个位 MOV AL,CL LEA BX,LED XLAT MOV DX,D8279 OUT DX,AL ;显示十位 MOV AL,10111111b MOV DX,D8279

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论