




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称:微机系统综合课程设计微机系统综合课程设计 课程设计题目:占空比的测量占空比的测量 院(系):计算机学院 专 业:计算机科学与技术 班 级: 学 号: 姓 名: 指导教师: 完成日期:2011年7月15日 沈阳航空航天大学课程设计报告 2 目目 录录 第第 1 章章 总体设计方案总体设计方案3 1.1课程设计的内容和要求3 1.2课程设计原理3 1.3 课程设计思路3 第第 2 章章 详细设计方案详细设计方案4 2.1模块设计4 2.2程序流程图5 2.3 硬件连线图7 第第 3 章章 调试及结果分析调试及结果分析8 3.1 调试步骤及方法8 3.2 实验结果8 参考文献参考文献9 附附 录(源程序)录(源程序)10 沈阳航空航天大学课程设计报告 3 第 1 章 总体设计方案 1.1课程设计的内容和要求课程设计的内容和要求 一、课程设计内容: 具体内容如下: 1. 用 8255 和 8253 产生脉宽可调的脉冲信号; 2. 把脉冲信号接到 8255 的一个引脚,检测这个引脚高、低电平持续时间,计 算出占空比; 3. 将测试结果用数码管显示出来。 二、课程设计要求: 1. 认真查阅相关资料; 2. 独立设计、调试并通过指导教师现场验收; 3. 撰写课程设计报告。 1.2课程设计原理课程设计原理 根据题目要求,要实现脉宽可调的脉冲信号的占空比的测量与显示功能, 本次设计中主要使用了 8255 可编程并行接口芯片,8279 键盘/显示芯片,8253 定时/计数器以及部分连线来实现以上功能。利用 8253 芯片产生一定频率的脉 冲信号,并把该信号接到 8255 芯片的一个引脚,用程序查询方式,检测该引脚 上高、低电平的持续时间,并以此结果计算出占空比。最后,应用 8279 芯片将 结果显示到数码管上。 1.3 课程设计思路课程设计思路 根据本次课程设计要求,用 8253 芯片产生脉宽可调的脉冲信号,并把该脉 冲信号接到 8255 的一个引脚(pb0) ,运用程序查询方式循环检测这个引脚高、 低电平持续时间,并分别存到 bx,cx 寄存器中。再将 bx 中的数与 cx 中的数 求和,得到的结果存到 cx 中。然后,将 bx 中的数扩大 100 倍,再除以 cx 中的值,以此来计算出被扩大 100 倍后的占空比;接下来就是显示正确的占空 比,将前面的到的准占空比除以 10,再将 ah 中的结果存到 ch 中,将 al 中 的结果存到 cl 中,最后,由 8279 芯片将最终结果显示到数码管上。 沈阳航空航天大学课程设计报告 4 第 2 章 详细设计方案 2.1模块设计模块设计 1. 数据结构部分: 用 bx 寄存器存储脉冲信号的高电平的持续时间,用 cx 寄存器存储脉冲信 号的低电平的持续时间。在内存中开辟了一个字节空间 disbuf,用来存放每种 模式所要显示的结果在 tab 表中的编码,在中断服务程序中通过按照这个空间 中的 8 个编码查表显示数码管上所要显示的结果。 2. 主模块: 在主程序中,主要实现各个芯片的初始化,将 8253 芯片的计数器 0 设置为 工作方式 2,低 8 位读写,二进制计数方式,使其输出方波,再将该方波作为计 时器 1 的输入信号,并设置计数器 1 设置为工作方式 2,低 8 位读写,十进制 计数方式,使计数器 1 产生低频率符合要求的脉冲信号; 3. 数据采集模块: 采用程序查询方式,循环检测 8255 芯片 pb0 引脚的状态。当该引脚为高电 平时开始计数,并保存到 bx 寄存器中,当该引脚为低电平时,停止用 bx 计数, 改用 cx 寄存器计数。 4. 计算占空比模块: 将 bx 中的数与 cx 中的数求和,得到的结果存到 cx 中。然后,将 bx 中 的数乘以 100,再除以 cx 中的值,以此来计算出被扩大 100 倍后的占空比; 接下来就是显示正确的占空比,将前面的到的准占空比除以 10,再将 ah 中的 结果存到 ch 中,将 al 中的结果存到 cl 中。 5. 显示模块: 根据 ch、cl 中的值,由 8279 芯片查表后将对应的数据显示到数码管上, 以得到最后的正确结果。 沈阳航空航天大学课程设计报告 5 2.2程序流程图程序流程图 本次设计的主流程图如图 2.2.1 所示;采集数据模块流程图如图 2.2.2 所示; 计算占空比模块流程图如图 2.2.3 所示;显示占空比模块流程图如图 2.2.4 所示。 开始 初始化8253 初始化8255 计算占空比 结束 显示占空比 采集数据 图 2.2.1 占空比测量的主流程图 沈阳航空航天大学课程设计报告 6 pb0高电平 读入b口状态 bl寄存器中的数据加1 是 将bx,cx寄存器清零 cl寄存器中的数据加1 否 pb0低电平 读入b口状态 是 结束 否 开始 开始 dx寄存器清零 计算脉冲信号总时 间,存到cx寄存器中 将bx寄存器中记录的高 电平持续时间乘100 将结果除以cx中的值 结束 再将结果除以10 将结果的个位存到ch 寄存器中 将结果的十位存到cl 寄存器中 图 2.2.2 数据采集模块流程图 图 2.2.3 计算占空比模块流程图 开始 push cs pop ds 将ch中的值赋给al 查表显示结果的个位 将cl中的值赋给al 查表显示结果的十位 查表显示零及小数点 结束 图 2.2.4 显示模块流程图 沈阳航空航天大学课程设计报告 7 2.3 硬件连线图硬件连线图 本次设计用到三个芯片,分别是 8255 可编程并行接口芯片,8279 键盘/显 示芯片,8253 定时/计数器。其中 8255 芯片的 a、b、c 端口及控制端口的地址 为分别为 200h,201h,202h,203h;键盘/显示芯片 8279 的数据端口地址为 210h,控制端口地址为 212h;定时/计数器芯片 8253 的端口地址为 228-22bh。 具体连接情况如图 2.2 所示。 图图 2.2 硬件连线图硬件连线图 沈阳航空航天大学课程设计报告 8 第 3 章 调试及结果分析 3.1 调试步骤及方法调试步骤及方法 开始调试时,每次得到的结果都不相同,正确结果无法稳定显示。于是, 进行单步调试,通过查看各个寄存器中的值,来验证各模块是否正常运行。结 果发现,在数据采集模块中,每次采集的数据都不同,说明每次采集数据时产 生了较大的误差,经过思考发现,问题出在计数器产生的脉冲信号频率过快, 使得程序还没来得及对数据进行采集时就被错过了,引起错读或漏读数据,才 造成了每次采集的数据都不同的情况。 之后,修改程序,再用一个计数器对脉冲信号进行分频,进一步降低脉冲 信号频率,尽量避免因频率过快而造成的错读或漏读现象,使得采集到的数据 更加准确。修改后,再次测试,则可以得到稳定而且正确的结果,误差很小。 每次只需修改计数器 1 的初值,就可以得到脉宽不同的脉冲信号,通过本 程序,便可测得各个脉冲信号的占空比,并显示在数码管上。 3.2 实验结果实验结果 本设计已经基本满足任务书的要求。现将结果简单介绍如下: 1. 当将计数器 1 的初值赋为 2,即产生二分频的脉冲信号时,数码管显示结果 为 0.50; 2. 当将计数器 1 的初值赋为 3,即产生三分频的脉冲信号时,数码管显示结果 为 0.66; 3. 当将计数器 1 的初值赋为 4,即产生四分频的脉冲信号时,数码管显示结果 为 0.75; 4. 当将计数器 1 的初值赋为 5,即产生五分频的脉冲信号时,数码管显示结果 为 0.78; 沈阳航空航天大学课程设计报告 9 参考文献 1 龚尚福.微机原理与接口技术m.西安:西安电子科技大学出版社,2003 2 王忠民.微型计算机原理m. 西安:西安电子科技大学出版社,2003 3 沈美明,温冬婵 ibm-pc 汇编语言程序设计m.北京:清华大学出版社 2001 沈阳航空航天大学课程设计报告 10 附 录(源程序) tim_ctlequ 22bh timer0equ 228h timer1equ 229h pc8255 equ 203h pc8255cequ 202h pc8255b equ 201h z8279equ 212h d8279 equ 210h ledmodequ 00h ;左边输入,八位显示外部译码八位显示 data segment data ends code segment assumecs:code,ds:data start: mov dx,tim_ctl mov al,00010110b ;计数器 0,低 8 位读写,工作方式 2,二进制 outdx,al mov al,00000101b mov dx,timer0 outdx,al mov dx,tim_ctl mov al,01010101b ;计数器 1,低 8 位读写,工作方式 2,十进制 outdx,al mov al,3 mov dx,timer1 outdx,al mov dx,pc8255 mov al,10000010b ;a 方式 0,输出 b 方式 0,输入 c 输出 outdx,al mov dx,pc8255b mov bx,0 mov cx,0 t: in al,dx andal,1 jz t t1: incbl 沈阳航空航天大学课程设计报告 11 inal,dx andal,1 jnzt1 t2: inccl inal,dx andal,1 jz t2 mov dx,0 addcl,bl mov ax,100 mul bx divcx mov cl,10 divcl mov ch,ah ;个位 mov cl,al ;十位 push cs pop ds mov dx,z8279 moval,ledmod out dx,al mov al,ch leabx,led xlat mov dx,d8279 outdx,al ;显示个位 mov al,cl leabx,led xlat mov dx,d8279 outdx,al ;显示十位 mov al,10111111b mov dx,d8279 out dx,al ;显示小数点 led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h db 5eh,79h,71h 沈阳航空航天大学课程设计报告 12 code ends end start 课程设计总结:课程设计总结: 通过本次课程设计,我对微机原理的理论知识有了更加深刻的理解,增强 了动手能力。对所学的各芯片,尤其是 8253,8255, 8279 这三个芯片的结构、 功能和使用方法有了更加清晰的认识,也能更加熟练地运用汇编语言编写一些 稍复杂些的程序。通过编写和调试程序,我也进一步熟悉了所用的编程环境 lct88ea 应用软件和 aedk 实验箱的功能和使用方法。为以后进一步学习微 机原理、汇编语言和硬件相关知识打下了很好的基础。 通过这次课程设计,我发现了我在以前学习中的缺点和不足,比如对芯片 的相关命令和使用方法还不够熟练;在编程中,汇编语言的使用不如 c 语言那 样的得心应手,编写的程序也不是很高效和完美;调试时,对软件和硬件的使 用还不熟练。由于开始考虑不周全,造成每次执行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 凯里学院《工程化学C》2023-2024学年第二学期期末试卷
- 兰州理工大学《微机原理与嵌入式系统》2023-2024学年第二学期期末试卷
- 黑龙江幼儿师范高等专科学校《建筑初步》2023-2024学年第二学期期末试卷
- 青海民族大学《卫生统计学C》2023-2024学年第二学期期末试卷
- 山西应用科技学院《光电软件基础综合实践》2023-2024学年第二学期期末试卷
- 贵州建设职业技术学院《C程序设计》2023-2024学年第二学期期末试卷
- 丽江师范高等专科学校《现代舞基训》2023-2024学年第二学期期末试卷
- 哈密职业技术学院《逻辑电子技术》2023-2024学年第二学期期末试卷
- 临汾职业技术学院《创新创业实践(二)》2023-2024学年第二学期期末试卷
- 豫章师范学院《水利信息技术》2023-2024学年第二学期期末试卷
- 粮油配送项目服务承诺及售后服务
- 公司内部文件管理规定及办法
- 2024-2025中国服装行业科技创新白皮书
- 道路安全交通课课件
- 眼科住院及手术患者安全
- 数字化转型对企业人力资本的影响研究
- 保密基本知识培训材料范文
- 公开征集招标代理机构投标方案(技术方案)
- 信息系统安全等级保护等级测评报告模板【等保2.0】
- 《荣安地产公司财务风险研究与防范研究(定量论文)》8200字
- 【MOOC】理性思维实训-华南师范大学 中国大学慕课MOOC答案
评论
0/150
提交评论