微机原理课设--模拟电风扇工作_第1页
微机原理课设--模拟电风扇工作_第2页
微机原理课设--模拟电风扇工作_第3页
微机原理课设--模拟电风扇工作_第4页
微机原理课设--模拟电风扇工作_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、 课课 程程 设设 计计 报报 告告课程设计名称:微机系统综合课程设计微机系统综合课程设计课程设计题目:模拟电风扇工作模拟电风扇工作院(系):计算机学院专 业:计算机科学与技术 -I-目目 录录第第 1 章章 总体设计方案总体设计方案.11.1 设计原理.11.2 设计思路.11.3 实验环境.2第第 2 章章 详细设计方案详细设计方案.32.1 硬件电路设计.32.2 主程序设计.42.3 功能选择模块的设计与实现.52.3.1 计时模块流程图.52.3.2 显示模块流程图.62.3.3 改变风速模块流程图.6第第 3 章章 结果测试及分析结果测试及分析.73.1 结果测试.73.2 结果分

2、析.7参考文献参考文献.8附附 录录.9 第 1 章 总体设计方案-1-第 1 章 总体设计方案1.1 设计原理设计原理利用芯片 8259,8255,8253,8279,分别控制中断,单色发光二极管,时钟,和 LED 显示。用受 8253 控制的 8259 给 8255 和 8279 产生每秒钟一次的中断,控制单色发光二极管和 LED 的显示。1.2 设计思路设计思路首先需要一个总开关,用来控制电风扇的开关,可以用 8255 的输入端 A 接收这一信号,信号为 1 时进入循环,此时单色发光二极管不亮,当不为 1 时执行下一步。其次需要实现的功能是三级风速的变换,可以设计三个变换延时的子程序,并

3、根据键盘输入的不同来分别调用这三个步骤。再次是要实现定时功能,用 8253 和 8259 实现这一功能并不困难,当时间减为零时,向 8255 的 AL 中输入 OFFH,使单色发光二极管不显示。还有就是单色发光二极管的显示问题,只需将 8255 中控制单色发光二极管显示的数据循环左移或右移即可。(1) 提出方案提出方案总开关是用来控制风扇的启动停止的,所以只需有两种状态,即开和关,所以,选择用实验箱右下角的开关来实现这一功能。为了能显示风扇的转动,选用8255 和实验箱上的 8 个单色发光二极管来显示风扇的转动。为了实现定时功能,选用 8253 定时,8259 产生中断,用中断程序来控制定时。

4、由于定时时需要显示倒计时,所以还需要 8279 键盘显示接口芯片。(2) 方案论证方案论证1)用 8255 和单色发光二极管模拟风扇的转动,所以,可以将 8255 的 B 口设为工作在方式 0,输出状态,然后通过输出不同二进制数来控制单色发光二极 第 1 章 总体设计方案-2-管的显示,通过循环右移使单色发光二极管循环显示来实现风扇转动的模拟。2)用右下角的开关控制风扇的转动与停止,所以,可将 8255A 口设为方式 0,输入状态,来读取开关的状态,然后在程序中判断输入的是 1 还是 0,进而控制风扇的转动与停止。3)为了实现定时的功能,可以用 8253 的分频功能,将输入的脉冲信号分频,以输

5、出 1HZ 的脉冲信号,然后输入到 8259 的 INT0 以产生周期为 1s 的中断,即每秒钟进一次中断,在中断服务程序中来实现时间的递减,当减到 0 时就将风扇停止,这样就实现了定时功能了。4)为了实现三级风速的选择和定时功能、定时时间的变化显示等功能,需要8279 的键盘显示功能,在键盘上设置 A,B,C 三个键分别控制三级风速,再设置一个 D 按键来控制定时功能的选择,当按下定时功能键 D 后,还需要键盘的数字键来实现定时时间的设定,设定完成后还需再次按下 D 键来确认。最后就是用数码管显示时间的变化了。1.3 实验环境实验环境硬件环境:AEDK 实验箱,PC 机。软件环境:LCA88

6、ET 应用软件。沈阳航空航天大学课程设计报告 第 2 章 详细设计方案-3-第 2 章 详细设计方案2.1 硬件电路设计硬件电路设计硬件电路由键盘显示接口芯片 8279 构成,如图 2.1 所示。 Pa0 Pb0 Pb7 cs8279Clk1 out1Gate1 8253 clk0Out0 cs gate0 Int08259 cs20020722822fDL8 DL1csPc0Pc3脉冲源210217220227图图 2.1 硬件电路连线图硬件电路连线图8279 是可编程设置型键盘/显示芯片,其特点是:(1)可同时进行键盘扫描及文字显示;(2)键盘扫描模式;(3)传感器扫描模式;(4)激发输入

7、模式;(5)8 乘 8 键盘 FIFO;(6)具有接点消除抖动,2 键锁定及 N 键依次读出模式;(7)双排 8 位数或双排 16 位数显示器;(8)右边进入或左边进入,16 字符或 8 字符显示。8255的 A 口工作在方式 0,输入;B 口工作在方式 0,输出;C 口工作在方式 0,输出;8253 将脉冲源分频,产生周期为 1s 的脉冲信号,驱动 8259 产生周期为 1s 的中断。8255、8259、8253、8279 的端口地址分别接 210H-217H、220H-227H、200H-K1沈阳航空航天大学课程设计报告 第 2 章 详细设计方案-4-207H、228H-22FH。2.2主

8、程序设计主程序设计下载到实验箱之后,由主控开关 K 控制程序运行,调节风速和设定定时由中断程序实现,电风扇模拟转动由 8 个单色灯实现。当开关 K 断开或者定时到达时,电风扇停转,程序结束。开始各芯片初始化8255清零开关为开?输入为A?输入为B?输入为C?输入为D?变风速为1显示变风速为3显示变风速为2显示输入时间输入为D?计时时间为0?AL清零结束YNNNNYYYYYYNNN沈阳航空航天大学课程设计报告 第 2 章 详细设计方案-5-图图 2.2 主程序流程图主程序流程图2.3 功能选择模块的设计与实现功能选择模块的设计与实现2.3.1 计时模块流程图计时模块流程图计时器模块,主要实现对电

9、风扇的定时功能,并在定时期间支持改变风速的功能,对设定的时间进行减一操作,当剩余时间为 0 时,则停止电风扇的工作,结束程序。NYYYYYNNNN保存寄存器计时是否为 0秒位是否为 0分位是否为 010 秒位是否为 010 分位是否为0秒位变为 9恢复寄存器10 秒位减 110 分位减 1分位减 1秒位减 110 秒位变为 5分位变为 910 分位变为 5数码管显示沈阳航空航天大学课程设计报告 第 2 章 详细设计方案-6-图图 2.3.1 功能选择模块流程图功能选择模块流程图沈阳航空航天大学课程设计报告 第 2 章 详细设计方案-7-2.3.2 显示模块流程图显示模块流程图用于模拟电风扇的转

10、速和旋转方向,由一个循环右移实现,使单色灯循环点亮。开始FLAGFLAG1AL0FEHYNAL 循环右移 1结束图图 2.3.2 显示模块流程图显示模块流程图2.3.3 改变风速模块流程图改变风速模块流程图通过键盘的输入,8259 产生中断,程序读取输入内容,A,B,C 为改变风速,当读取到相应的内容时,改变为相应的风速。开始判断输入改变结束图图 2.3.32.3.3 改变风速模块流程图改变风速模块流程图沈阳航空航天大学课程设计报告 第 3 章 结果测试及分析-8-第 3 章 结果测试及分析3.1 结果测试结果测试 编译并连接程序,然后全速运行,在数码管上就显示计时器的时间,开始时是全 0。此

11、时单色发光二极管为全灭。将开关 K1 向上扳去,此时 8255 的 PA0 口输入高电平,PB 口输出使单色发光二极管循环亮灯。即以一定的速度循环点亮八个灯,模拟出了电风扇的转动。当需要改变风速时,只需按下键盘上的A、B、C 键,便可切换风速。当需要设定运行时间时,只需要按下 D 键,则进入定时状态,接着只需按下键盘上的数字键,设定好定时的时间,然后再按下 D键,风扇就将在设定的时间内转动,并且在数码管上显示时间的变化,以一秒为单位逐渐减少,当减到 0 时,风扇就将停止转动,单色灯全灭,如此便实现了定时功能。如要让单色灯再亮,则需将总开关关掉再打开。3.2结果分析结果分析开始运行时,发现单色发

12、光二极管并不是按理想顺序逐渐点亮红色,而是与风扇转动方向相反,检查硬件连线却并没有发现错误,后来,检查程序时发现将循环右移的代码写错了,从而导致了与旋转方向相反的循环点亮顺序,改正后完美运行。风扇正常运行了,但是在定时时发现数码管上的时间变化过于缓慢,于是检查 8253 芯片的初始化程序,发现 CLK1 的输入时倍数太大,于是将其数值调小后运行,发现时间变化回归正常。实验结果总的来说基本实现了课设的要求,虽然有些小问题和还会有些不稳定,这些问题我会在以后的不断学习中进行完善 。沈阳航空航天大学课程设计报告 参考文献-9-参考文献1王爱英.计算机组成与设计 M 北京:教育出版社, 2021 2杨

13、素行.微型计算机系统原理及应用 M 北京: 清华大学出版社, 19963张雪兰.汇编语言程序设计 M 北京: 清华大学出版社, 2021 4龚尚福.微机原理与接口技术 M 西安: 西安电子科技大学出版社, 2021 5王中民.微型计算机原理 M 西安: 西安电子科技大学出版社, 2021 6沈美明,温冬婵.IBM-PC 汇编语言程序设计M 北京: 清华大学出版社, 2021 沈阳航空航天大学课程设计报告 附 录-10-附 录程序清单:data segment isend db 0 n0 db 0 n1 db 0 n2 db 0 isright db 1 keykind db 0 oldkey

14、db 0 kind db 0 isstop db 0 flags db 0 numbers db 3fh,6,5bh,0,0,0,0,0,0,0data endscode segment assume cs:code,ds:datamain:;主程序 cli mov ax,cs mov ds,ax mov kind,0 mov isright,1 mov keykind,0ah mov oldkey,0ah mov kind,0 mov isstop,0 mov flags,0 mov isend,0 mov n0,0 mov n1,0 mov n2,0 call initnumbers ca

15、ll init8255 call init8259 call init8253 call modifyint mov dx,212h mov al,0沈阳航空航天大学课程设计报告 附 录-11- out dx,al call cleardevice call display mov al,0 mov dx,22ah out dx,al mov al,30h out dx,al mov al,7fh stidowhat: push axdowait: mov al,0ffh;单色灯清零 mov dx,211h out dx,al mov dx,210h in al,dx test al,1;判断

16、开关 jz dowait pop ax call readakey cmp keykind,0ah jnz a1 mov kind,2 call gotonext jmp aaa1:;判断风速改变 cmp keykind,0bh jnz a2 mov kind,1 call gotonext jmp aaa2: cmp keykind,0ch jnz a3 mov kind,0 call gotonext jmp aaa3: cmp keykind,0dh jnz a4 push ax沈阳航空航天大学课程设计报告 附 录-12- mov dx,212h mov al,0 out dx,al p

17、op ax mov isstop,0 push ax mov al,oldkey mov keykind,al call reading mov dx,212h mov al,0ffh out dx,al pop ax sti jmp aaa4: cmp keykind,0eh jnz aa not flags push ax mov al,oldkey mov keykind,al pop axaa: jmp dowhatgotonext:;单色灯循环亮灭 mov dx,211h out dx,al cmp flags,0 jnz noror ror al,1noror: cmp al,0f

18、eh jnz continue jmp continuecontinue: cmp kind,2 jnz mm1 call speed2 jmp mm3mm1:;改变风速 cmp kind,1 jnz mm2沈阳航空航天大学课程设计报告 附 录-13- call speed1 jmp mm3mm2: cmp kind,0 jnz mm3 call speed0mm3: push axmm33: cmp isstop,0 jz mm4 mov dx,211h mov al,0ffh out dx,al mov dx,210h in al,dx test al,1 jnz mm33 mov iss

19、top,0 climm4: pop ax retreadakey:;读取键盘输入 push ax mov al,keykind mov oldkey,al mov dx,22ah in al,dx and al,0fh cmp al,0 jz gotoexit mov al,40h mov dx,22ah out dx,al mov dx,228h in al,dx mov keykind,algotoexit: pop ax retspeed1:;速度设置 push cx沈阳航空航天大学课程设计报告 附 录-14- mov cx,18000sp1: loop sp1 pop cx retsp

20、eed2: push cx mov cx,50000sp2: loop sp2 pop cx retspeed0: push cx mov cx,8000sp0: loop sp0 pop cx retreadisd:key: mov dx,22ah in al,dx and al,0fh cmp al,0 jz key mov al,40h out dx,al mov dx,228h in al,dx cmp al,0dh jnz key retreading:;输入时间 push ax mov n0,0 mov n1,0 mov n2,0 call readanumber mov n0,a

21、l call display call readanumber cmp al,0dh沈阳航空航天大学课程设计报告 附 录-15- jz readexit mov ah,n0 mov n0,al mov n1,ah call display call readanumber cmp al,0dh jz readexit mov ah,n0 mov n0,al mov al,n1 mov n1,ah mov n2,al call display call readisdreadexit: pop ax retreadanumber:key2: mov dx,22ah in al,dx and al

22、,0fh cmp al,0 jz key2 mov al,40h out dx,al mov dx,228h in al,dx retinitnumbers: push bx mov bx,offset numbers mov byte ptrbx,3fh mov byte ptrbx+1,6 mov byte ptrbx+2,5bh mov byte ptrbx+3,4fh mov byte ptrbx+4,66h mov byte ptrbx+5,6dh mov byte ptrbx+6,7dh mov byte ptrbx+7,7 mov byte ptrbx+8,7fh mov byt

23、e ptrbx+9,6fh沈阳航空航天大学课程设计报告 附 录-16- pop bx retdisplay:;时间显示 call cleardevice mov bx,offset numbers mov al,80h mov dx,22ah out dx,al mov al,n0 xor ah,ah add bx,ax mov al,bx mov dx,228h out dx,al mov bx,offset numbers mov al,81h mov dx,22ah out dx,al mov dx,228h mov al,n1 xor ah,ah add bx,ax mov al,bx

24、 out dx,al mov bx,offset numbers mov al,82h mov dx,22ah out dx,al mov dx,228h mov al,n2 xor ah,ah add bx,ax mov al,bx out dx,al retintcount: push ax push bx push dx cmp n0,0 jz next1 dec n0 jmp next4沈阳航空航天大学课程设计报告 附 录-17-next1: mov n0,9 cmp n1,0 jz next2 dec n1 jmp next4next2: mov n1,9 cmp n2,0 jz n

25、ext3 dec n2 jmp next4next3: mov n2,9next4: cmp n0,0 jnz next5 cmp n1,0 jnz next5 cmp n2,0 jnz next5 mov isstop,1 mov dx,212h mov al,0 out dx,alnext5: call display pop dx pop bx pop ax iretinit8255: mov al,90h mov dx,213h out dx,al retinit8259: mov al,13h mov dx,220h out dx,al mov dx,221h mov al,30h

26、out dx,al沈阳航空航天大学课程设计报告 附 录-18- mov al,3 out dx,al mov al,0feh out dx,al retmodifyint: push ds push bx push ax xor ax,ax mov ds,ax mov bx,30h*4 mov ax,offset intcount mov bx,ax mov ax,8100h mov bx+2,ax pop ax pop bx pop ds retinit8253: push ax mov al,35h mov dx,203h out dx,al mov ax,0ffffh mov dx,20

27、0h out dx,al mov al,ah out dx,al mov al,75h mov dx,203h out dx,al mov ax,27 mov dx,201h out dx,al mov al,ah out dx,al pop ax retcleardevice: push ax push dx沈阳航空航天大学课程设计报告 附 录-19- mov al,0c1h mov dx,22ah out dx,alwait1: mov dx,22ah in al,dx test al,80h jnz wait1 pop dx pop ax retcode ends end main沈阳航

28、空航天大学课程设计报告 设计总结-20-课程设计总结:课程设计总结:通过本次课程设计,使我对所学的微机原理知识有了更深的理解,对各芯片,特别是 8255、8259、8253、8279 等常用芯片的功能和使用方法有了更加深层的掌握,也能更加熟练的运用这些芯片来实现各种功能。在用汇编语言编写程序时,使我更加熟悉各种语句的作用和使用方法,为我以后编写更加大型的汇编语言程序打下了坚实的基础。但通过这次课程设计,我也发现了许多在学习中没有发现和注意到的缺点和不足,在调试运行时,程序很不稳定,这很有可能是我对软件和硬件的结构和功能还不是很透彻,加之第一次用汇编语言编写程序,不可能编写出高效又健壮的程序来,

29、所以,这可能是运行时出现不稳定的主要原因;再有,调试程序时,一些调试方法不够熟练,很多调试方法和工具都不知道,但是,以后有机会我会多用相关软件编写汇编语言,这样就能更加熟练地使用软件使所编写的程序更加完美。在本次课设中,不但培养了我专心致志的工作学习习惯,同时也使我懂得了作为学生要好问,在这期间我向同学和老师请教,可谓获益匪浅,也是这次课设我能顺利的完成的原因。指导教师评语:指导教师(签字): 年 月 日课程设计成绩沈阳航空航天大学课程设计报告 设计总结-21- 教师见习报告总结期待已久的见习已经结束了,在龙岩三中高中部见习听课,虽然只是短短的两个星期,但感触还是蛮深的,以前作为一名学生坐在课

30、室听课,和现在作为一名准教师坐在课室听课是完全不同的感受,感觉自己学到了一些在平时课堂上学不到的东西。在这里,我获得的不仅是经验上的收获,更多是教学管理,课堂教学等的理念,以及他们带给我的种种思考。教育见习实践过程:听课。教育见习的主要目的是让学生在指导教师的引导下,观摩教师上课方法、技巧等。听课是教育见习的主要内容。我院规定在一周的见习中需完成至少 6 课的见习任务。我在教师的安排指导下,分别对高一、高二物理专业课型为主,其他课型齐头的方式,积极主动的完成了听课任务,收到良好的效果。我听的第一节课是高二(8)班,这是一个平衡班,水平不如实验班高。在上课前。科任老师已经跟我说了这个班的纪律是比

31、较差的,而且成绩也不是很好。在我听课期间,确实有几个学生在课堂上说话,但是我发现了一个有趣的现象,这个现象我在往后的几个班都发现了,就是绝大部分的学生的学习热情都好高涨,积极举手发言,积极参与课堂活动。我跟老师们提起这个现象的时候,科任老师就跟我说,一个班里不可能所有的学生都能全神贯注地听完一节课,所以作为一名教师,应该想办法吸引学生的注意力,调动的积极性,比如可以以小组为单位,以抢答计分的形式调动学生的积极性,这样课堂气氛就会活跃起来了。在为期两周的见习工作中,我真的有很大的感触,我第一次感受到自己已经从一名学生向一名教师靠近,走在校园里,每当有学生叫我一声老师,我在感到无比自豪的同时,还感

32、受到了自己的责任。见习工作结束了,我要回到学校继续我的学习了,但是我会好好记住我从*中学学到的一切,并应用于我的专业学习中去。一、教学管理理念 在龙岩三中,从领导阶层到一位普通的科任老师,都秉承以学生为主体的宗旨进行学校的管理,进行教学工作的开展。作为一个课程改革的示范学校,一个教育实验基地。这所学校鼓励着老师做各种研究,各种改革。每个班主任都有着沈阳航空航天大学课程设计报告 设计总结-22-自己的管理经验与管理宗旨。有了这种思想的自由,自然这里也就充满着探索与尝试,从而有所创造与进步。在我见习的班集体中,班主任对他的学生说:“我要让你们成为学习型的管理者,也是管理型的学习者。 ”这样一句简单的话,让我感到这里老师进行班级管理的良苦用心。他们关心的不只是学生的学习,更多的是从一个完整的人的概念出发,去培养学生多方面的素质。二、教学理念 在见习期间,借着录课的机会,我听了很多的市级,校级的公开棵,还有理科实验班的课。在这些课堂上,让我看到教学改革正在悄然进行,有意识的老师正在努力体会“以学生为主体”的课堂模式。学生的创造也逐步成为教师追求的教学效果。其次,这里的老师也都在适应着多媒体教学,信息化教学,使得课堂更加生动,资源更加丰富,学生获取学

温馨提示

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

评论

0/150

提交评论