模拟电脑加油机控制_第1页
模拟电脑加油机控制_第2页
模拟电脑加油机控制_第3页
模拟电脑加油机控制_第4页
模拟电脑加油机控制_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、沈阳航空航天大学课 程 设 计 报 告课程设计名称: 单片机系统综合课程设计课程设计题目:模拟电脑加油机控制院(系):计算机学院专业: 科学与技术班级: 24010101学号: 201204010124姓名: 孙皓指导教师:孙恩岩说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要求;数据不实 ,不予通过。报告和电子数据必须作为实验现象重复的关键依据。沈阳航空航天大学课程设计报告学术诚信声明本人声明 :所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。尽我所知,除了文中特别加以标注或致谢中所罗列的内容以外,报告中不包含其他人

2、己经发表或撰写过的研究结果,也不包含其它教育机构使用过的材料。与我一同工作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意。报告资料及实验数据若有不实之处,本人愿意接受本教学环节“不及格”和“重修或重做”的评分结论并承担相关一切后果。本人签名 :日期:年月日I沈阳航空航天大学课程设计报告沈阳航空航天大学课程设计任务书课程设计名称单 片机 系统 综合 课程 设计专业计 算 机 科 学 与 技 术学生姓名孙皓班级24010101学号2012010101024题目名称模拟电脑加油机控制起止日期2015年 6 月29 日起至2015 年7月 10 日止课设内容和要求:学习电脑加油机的

3、结构和工作原理, 利用定时器产生的脉冲作为脉冲源代表单位加油量,利用数码管显示加油量和钱数,通过小键盘可以选着定量加油,定钱加油或随机加油等方式,再用两个键实现启动加油机工作和停止加油机工作二、课程设计要求1独立完成课程设计任务;2通过老师当场验收;3交出完整的课程设计报告。参考资料:1 张毅刚,刘杰. MCS-51 单片机原理及应用M.哈尔滨:哈尔滨工业大学出版社,20082 高 锋 . 单片微型计算机原理与接口技术M. 北京:科学出版社, 20073 胡汉才 . 单片机原理及其接口技术 M. 北京:清华大学出版社, 2004教 研室 审核 意见 :教 研室 主任 签字 :指导教师(签名)年

4、月日学 生(签名)年月日II沈阳航空航天大学课程设计报告课程设计总结:做了两周的单片机课程设计,我有了很多的体会和感想。我的课程设计主要内容:电脑模拟加油机控制系统;通过键盘的实现一些有关的功能,拿到程序时感觉程序的难易程度还是可以的,但是真的琢磨的时候才发现其中的功能很不好实现,有好几天我都一直在实验室内研究其中一个功能,但是很不好实现。通过对资料的查询和对老师和同学的请教,逐步对功能有了一定的理解,然后对其认真的做一些研究;最终实现功能的时候还是很不容易,但是做出来之后真的很有成就感。这次实习让我受益匪浅,无论从知识上还是其他的各个方面。上课的时候的学习从来没有见过真正的单片机,只是从理论

5、的角度去理解枯燥乏味。但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会在 QQ 群里讨论或者是同学之间相互帮助。团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。单片机是很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了

6、一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助 。III沈阳航空航天大学课程设计报告目录第 1 章总体设计方案 .11.1设计内容 .11.2设计原理 .11.3设计思路 .11.4实验环境 .22详细设计方案 .32.1硬件设计 .32.1.1键盘设计 .32.1.2数码管设计 .42. 2 主程序设计 .52.2.1键盘输入模块 .62.2.2数码管显示模块 .63调试及结果分析 .93.1调试过程 .93.2结果分析 .9参考文献.10附录(源程序清单)11IV沈阳航空航天大学课程设计报告第 1 章总体设计方案1.1设计内容学习电脑加油机的结构和工作原理,利用定

7、时器产生的脉冲作为脉冲源代表单位加油量,利用数码管显示加油量和钱数,通过小键盘可以选着定量加油,定钱加油或随机加油等方式,再用两个键实现启动加油机工作和停止加油机工作。1.2设计原理根据课程设计任务书的要求,完成电脑模拟加油机的设计。首先通过键盘的输入确定是以什么方式加油,共有三种加油方式:定量加油、定钱加油和随机加油的方式。定量加油和定钱加油首先输入想要加油的量或者输入想要加油的钱数。相应的输入会在数码管显示出来,然后会有一个功能键是启动加油机工作,从零开始计数,一直模拟到刚刚输入的钱数或者是加油的量,则停止计数,表示加油已经完成。随机加油方式是按下启动功能键启动加油机工作,然后再按下一停止

8、键停止加油机工作,表示加油过程完成,所有的油量和价钱在数码管上都有相应的显示。共设置了四个功能键,来控制加油方式、启动和停止加油机。硬件主要由 8051 单片机、数码管、小键盘和若干导线组成。1.3设计思路模拟电脑加油机控制主要由小键盘输入模块、数码管显示模块和中断模块组成。其中键盘输入模块和数码管显示模块是本次设计的核心部分,通过键盘的输入来控制模式的选择和加油机的启动和停止。定量加油时首先通过键盘输入加油的定量值,通过数码管显示程序将油量和需要的钱数显示在数码管上,然后启动加油键,这时程序执行中断查询,每当定1沈阳航空航天大学课程设计报告时器产生中断,油量和钱数进行相应的增加,直到加到输入

9、的油量,然后数码管显示最初的输入的油量和相应的价钱保持不变,定钱加油方式亦是如此。随机加油方式时通过键盘直接启动加油机工作,程序去查询中断,定时器每产生中断,油量进行加一并且价钱进行相应的显示,然后进行键盘扫面程序,查看是否有停止键的按下。若停止键被按下,则关闭定时器的中断,数码管显示当前的油量和价钱;若停止键没有被按下,则继续执行中断查询,油量进行加一操作。直至有停止键被按下,随机加油的方式结束。各个方式在进行加油的时候不能被其他方式所干扰,直至此次加油结束,才能再输入下一次的加油方式,进行一下的加油过程。1.4实验环境硬件环境:伟福Lab8000 实验箱, PC机。软件环境: Keil u

10、Vision3。2沈阳航空航天大学课程设计报告2 详细设计方案2.1硬件设计本次课程设计采用8051 单片机,其 8051 单片机内部的总体电路图如图2.1所示图 2.1电脑加油机控制系统总体工作框图电脑加油机控制系统主要包括单片机控制系统、键盘输入模块、动态显示模块三部分。电脑加油机控制工作模式框图如图2.2 所示。单片机键盘输入数码管显示图 2.2电脑加油机控制系统总体工作框图2.1.1 键盘设计本系统采用矩阵式键盘模块,键盘的工作方式利用编程扫描方式。编程扫描方式工作过程如下:在键盘扫描子程序中,首先判断整个键盘上有无键按下;然3沈阳航空航天大学课程设计报告后用软件延时10ms 来消除按

11、键抖动的影响。如确实有键按下,进行下一步;求按下的键号;等待按键释放后,再进行按键功能的处理操作。键盘的工作层次如图 2.3 所示。键盘工作层次监视键盘输入确定具体按键实现按键功能图 2.3键盘的工作层次2.1.2 数码管设计动态显示电路的功能主要是通过单片机的控制将所加油的容积值以及总金额显示出来。显示电路框图如图2.4 所示。本课题中的动态显示电路采用LED 数码管。常用的 LED 数码管有 7 段和 “米”字段之分。本次采用7 段数码管。 LED 数码管有共阳极和共阴极两种。共阴极LED 数码管的发光二极管的阴极连接在一起,通常此共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点

12、亮,相应的段被显示。同样,共阳极 LED 数码管的发光二极管的阳极连接在一起时,通常此共阳极接高电平,当某个发光二极管接低电平时,发光二极管被点亮,相应的段被显示。使用 LED 显示时,为了显示数字或符号, 要为 LED 提供代码,因为这些代码是通过各段的亮与灭来显示不同字形的,因此称之为段码。总油量(两位)单片机显示电路总金额(两位)图 2.4显示电路框图4沈阳航空航天大学课程设计报告2. 2 主程序设计主程序设计是整个系统软件设计的核心,它明确的阐明了系统软件设计的步骤以及加油机系统的工作流程等等。在程序设计的开始,首先进行初始化,接下来将进行键盘扫描,判断是否有键按下。如果没有键按下,

13、系统将继续进行键盘扫描, 直到扫描到有键按下为止。接下来根据按键判断系统按照哪种方式加油以及读出所要加油的容积值或金额值等等。然后便转向单片机的处理程序。主程序流程图如图2.5 所示。开 始初 始 化调用显示子程序调键盘扫描子程序N是否有键按下?Y按键处理图 2.5主程序流程图5沈阳航空航天大学课程设计报告2.2.1 键盘输入模块一共设置 6 个功能键,分别对应定量加油、定钱加油、随机加油、清零加油金额和油量、启动加油机工作及停止加油机工作。每次加油结束时,清零加油机准备进行下一次的机油工作。键盘输入模块流程图如图2.7 所示。键盘的电路图如图 2.6 所示。2.2.2 数码管显示模块将 80

14、51 的片选端 CS0连接到数码管的 LED/CS/端,利用七段共阴数码管对定时器产生的信息进行显示。 用前两个数码管显示油量, 接下来的两个显示总金额,最后的两个数码管不参与显示。数码管显示模块流程图如图2.8 所示。图 2.6 键盘电路图6沈阳航空航天大学课程设计报告开始初始化N有键闭合吗?Y软件延时40msN有键闭合吗?Y确定按键位置N闭合键释放?Y按键值 A返回图 2.7键盘扫描模块流程图7沈阳航空航天大学课程设计报告开始取 显 示 缓 冲 区 首 地 址取数据输 出 段 选 码输 出 位 选 码延 时修 改 地 址N数据显示结束?Y返回图 2.8 数码管显示模块流程图8沈阳航空航天大

15、学课程设计报告3 调试及结果分析3.1 调试过程在随机加油方式中开始加油后对停止加油这一功能实现不了,所以在本次的课程设计的调试过程中,对这一部分进行了大量的学习和调试,以便对这部分共能加以实现。随机加油功能出现的问题就是可以启动加油,但是在加油的过程不能随时的停止加油。这个问题我调试三到四天的时间,最后知道了问题出现在中断方式的位置,我用的中断是查询的方式,而不是设置中断的入口地址,导致程序一直在工作在查询的位置,不能去做别的功能。找到了问题的所在,这样使解决问题变的容易了很多。对于调试过程中其他的语法问题和其他模块的逻辑问题,都是通过软件的提示,来分析此次的问题,进行修调试和修改。3.2

16、结果分析首先,按下清零键,四个数码管都变为零。假设按下按量加油键,然后输入想要加油的量,会在前两个数码管显示出来,假设输入10,则会另两个的数码管自动显示出来相应的金额,这时在按下启动加油键,油量会从0 一直累加到 10,金额也做相应的累加, 油量到 10 时此次模拟加油过程结束, 按下清零键, 四个数码管又变为零。等待下一次的加油。9沈阳航空航天大学课程设计报告参考文献1 张毅刚,刘杰 . MCS-51 单片机原理及应用 M. 哈尔滨:哈尔滨工业大学出版社, 20082 高 锋. 单片微型计算机原理与接口技术 M. 北京:科学出版社, 20073 胡汉才 . 单片机原理及其接口技术 M. 北

17、京:清华大学出版社, 20044 谭浩强 .C 语言程序设计 M. 北京 : 清华大学出版社 ,20055 龚尚福 . 微机原理与接口技术 M. 西安 : 西安电子科技大学出版社 ,20036 王中民 . 微型计算机原理 M. 西安 : 西安电子科技大学出版社 ,200310沈阳航空航天大学课程设计报告附录(源程序清单)ORG 0000HJMP STARTORG 0100HSTART:MXEQU 30HFIEQU 31HDZEQU 33HXZEQU 42HMOV 80H,#00H;MOVTMOD,#01HMOVTL0,#0B0HMOVTH0,#3CHSETB EASETB TR0MAIN:LC

18、ALLDISP1LCALLSTART1JMP MAINLP:LCALL DISP1JBC TF0,CHECKLJMP LPCHECK:DJNZ 70H,LPITOP1:MOV 70H,#10MOV TL0,#0B0HMOV TH0,#3CHMOV A,72HMOV 30H,72HMOV B,#6MUL ABMOV 31H,ALCALL DISP1LOOP1:INC 72HMOV A,72H11沈阳航空航天大学课程设计报告DJNZ 71H,LPLJMP MAINSTART1:MOV R6,#02HKEYI:ACALLKS1JNZLK1NI:ACALLDISP1;调用显示AJMPKEYI; 调用键

19、盘LK1:ACALLDISP1ACALLKS1JNZLK2ACALLDISP1AJMPKEYILK2:MOV R2,#0FBHMOV R4,#00HLK4:MOV 34H,R2MOVDPTR ,#8002HMOV A, R2MOVX DPTR,AMOV DPTR,#8001HMOVX A,DPTRJB Acc.0,LONEMOV A,#00HLJMP LKPLONE:JB Acc.1,LTWOMOV A,#04HLJMP LKPLTWO:JB ACC.2,LTHRMOV A,#08HLJMP LKPLTHR:JB Acc.3,NEXTMOV A,#0CH12沈阳航空航天大学课程设计报告LKP:

20、ADD A,R4MOV DZ,ALK3:ACALL DISP1ACALL KS1JNZ LK3NEXT:INC R4MOV R2,34HMOV A,R2JNB Acc.5,LK6RL AMOV R2,AMOV A,34HLJMP LK4LK6:MOV A,DZMOV DPTR ,#TAB0MOVC A,A+DPTRLK7:CJNE A,#0BH,LK5; 按钱加油MOV80H,#01HLJMP KEYILK5:CJNE A,#0AH,LK10; 按量加油MOV 80H,#00HLJMP KEYILK10:CJNE A,#0CH,LK11; 随机方式MOV A,TL0MOV B,#10DIV A

21、BMOV 30H,BMOV A,#6MUL AB13沈阳航空航天大学课程设计报告MOV 31H,ALJMP KEYILK11:CJNE A,#0DH,LK12SETB EAMOV 71H,30HMOV 72H,#1MOV 70H,#10LJMP LPLK12:CJNE A,#0EH,LK8CLR EALJMP MAINLK8:CJNE A,#0FH,LK9MOV 30H,#00HMOV 31H,#00HAJMP MAINLK9:MOVR5,80HCJNE R5,#00H,PPODJNZ R6,KK1MOV R7,MXADD A, R7MOV MX,AMOV R5,80HMOV B,#6MUL ABMOV 31H,ALJMP START1PPO:MOV R5,80HCJNE R5,#01H,PPPDJNZ R6,KK2MOV R7,31HADD A, R7MOV 31H,AMOV R5,80HMOV B,#6DIV ABMOV 30H,ALJMP START114沈阳航空航天大学课程设计报告PPP:LJMP START1KK1:MOV B,#10

温馨提示

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

评论

0/150

提交评论