湖南工业大学_单片机课程设计.doc_第1页
湖南工业大学_单片机课程设计.doc_第2页
湖南工业大学_单片机课程设计.doc_第3页
湖南工业大学_单片机课程设计.doc_第4页
湖南工业大学_单片机课程设计.doc_第5页
免费预览已结束,剩余13页可下载查看

下载本文档

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

文档简介

湖南工业大学课 程 设 计资 料 袋 电气与信息工程 学院 3 学年第 1 学期 课程名称 单片机系统课程设计 指导教师 李祥飞 职称 教授 学生姓名 曾文龙 专业班级 电自094 学号 5 题 目 0-255和0-999999计数及显示, 出租车计费系统 成 绩 起止日期 2011 年 12 月 19 日 2011 年 12 月 31 日目 录 清 单序号材 料 名 称资料数量备 注1课程设计任务书2课程设计说明书3课程设计图纸张456湖南工业大学课程设计任务书2011 2012 学年第1 学期 电气与信息工程 学院 电气工程及其自动化 专业 电气094 班级课程名称: 单片机系统课程设计 设计题目: 0-255和0-999999计数及显示, 出租车计费系统 完成期限:自 2011 年 12 月 19 日至 2011 年 12 月 31 日共 2 周内容及任务1.1 外部脉冲自动计数,自动显示。1.1.1设计一个255计数器:0255计数,计满后自动清0,重新计数(在数码管中显示)。1.1.2设计一个999999计数器:0999999计数,计满后自动清0,重新计数(在数码管中显示)。1.2 设计一个出租车计费系统: 起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位数码管中,前三位显示数码管显示里程数,后三位数码管显示价钱(角,元,十元)进度安排起止日期工作内容2011.12.19-2011.12.20讲述设计内容及基本原理2011.12.21-2011.12.30进行系统的设计2011.12.31-2011.12.31完成课程设计的验收主要参考资料1 刘苗生、潘宗预. 单片机测控系统设计. 中国物质出版社,2006年2 欧伟明、何静.单片机原理与应用系统设计.电子工业出版社,2009年18单片机系统课程设计说明书出租车计费系统起止日期: 2011 年 12 月 19 日 至 2011 年 12 月 31 日学生姓名曾文龙班级电自094学号09401300405成绩电气与信息工程学院2011年12 月19日摘 要单片机是单片微型计算机(CPU)的简称,是集CPU、读写寄存器、定时器、计数器和多种接口于一体的微控制器。它体积小,功耗小,成本低,功能强,广泛应用于智能产品和工业自动化控制领域。而51系列单片机是各单片机中最为典型和最有代表性的一种。这次课程设计的目的就是要通过对它的学习应用,从而达到学习、设计、开发单片机软硬件的能力。此次设计的出租车计费系统,是基于单片机最小系统设计的,利用外围的一些逻辑电路和数码管,来模拟显示出租车计费系统。最后由protues 7.5软件仿真。关键词:单片机最小系统,出租车计费单片机最小系统简介单片机最小系统电路原理设计分析与讲解P1为外部电源输入座(DC+5V),S8为电源最小系统的电源开关,E1和C3为电源滤波,去耦电容。D1为系统电源指示灯。J2为ISP下载接口,S7系统复位按键。CRY1,C1,C2为外部时针电路。IC1为89S51(DIP-40),左上角为第一脚。PRE1,PRE2。为上拉排阻(阻值4.7k10k)。J5,J9,J6,J10分别对应单片机的P0,P1,P2,P3口。便于二次开发。6路共阳极数码管动态显示电路,P0口通过74HC573(起驱动和隔离作用,让电流通过74CH573流入公共地),来控制数码管的8路段码,P20-P22通过74HC138译码器(使用其中的6路)控制数码管的公共端(中间还有三极管做驱动器)。这样设计的理由:为了保证该单片机最小系统的二次开发的资源充足和合理性。如果单只做一个动态显示电路,可以省去74HC573,和74HC138。图1 单片机最小系统原理图 硬件原理图本次单片机课程设计脉冲计数的基本硬件主要由AT89C51、七段LED数码管显示器连接而成,其AT89C51芯片的P0口和P1口分别与四个七段数码显示管连接实现数码显示功能,P3.2和P3.4相连,实现外部中断与计数的连接,即当外部来一个脉冲实现一次加一计数,中断完成转到跳转程序,计下的数字通过送七段数码管进行显示。 图2硬件原理图复位电路模块如图4所示图4 复位电路图软件的设计出租车计费系统设计要求设计一个出租车计费系统,起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位数码管中,前三位显示数码管显示里程数,后三位数码管显示价钱(角,元,十元)。资源分配:60H-62H存放里程数的BCD码。70H-72H存放价钱的BCD码。程序流程图系统初始化读取计数器的内容BCD转换判断显示?调用显示程序开始结束图5 主程序流程图图6 公里计算流程图图7 价钱计算子程序流程图 由于延时15ms的程序比较简单故没有画出流程图,程序附在后面附录中。下同。附录出租车计费源程序:ORG 0000HSJMP MAINORG 0030HMAIN: MOV 60H,#0MOV 61H,#0MOV 62H,#0MOV 70H,#0MOV 71H,#0MOV 72H,#0MOV TMOD,#01100000BMOV TH1,#255MOV TL1,#255SETB TR1L1: JNB TF1,L2CLR TF1LCALL KMLCALL PRICEL2: LCALL DISPLAYSJMP L1KM:MOV A,60HADD A,#5MOV 60H,ACJNE A,#10,BTOMMOV 60H,#0INC 61HMOV A,61HCJNE A,#10,BTOMMOV 61H,#0INC 62HMOV A,62HCJNE A,#10,BTOMMOV 62H,#0BTOM: RETPRICE:MOV A,62HCJNE A,#0,SUB11MOV A,61HCJNE A,#2,SUB1MOV A,60HCJNE A,#0,SUB11SJMP FIVEYSUB1: JC FIVEYSUB11: MOV A,70HADD A,#8MOV 70H,ACJNE A,#10,SUB2SJMP SUB3SUB2: JC BTOM2SUB3: SUBB A,#10MOV 70H,AINC 71HMOV A,71HCJNE A,#10,BTOM2MOV 71H,#0INC 72HMOV A,72HCJNE A,#10,BTOM2MOV 72H,#0SJMP BTOM2FIVEY: MOV 71H,#5BTOM2: RETDISPLAY:MOV R0,#70HMOV R3,#0MOV R1,#60HMOV R4,#3MOV DPTR,#SEGLOOP: MOV A,R0MOVC A,A+DPTRMOV P2,R3CJNE R3,#1,DIS1ANL A,#7FHDIS1: MOV P0,ALCALL D6MSMOV A,R1MOVC A,A+DPTRMOV P2,R4CJNE R4,#4,DIS2ANL A,#7FHDIS2:MOV P0,ALCALL D6MSINC R0INC R1INC R3INC R4CJNE R3,#3,LOOPRETSEG: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB 80H,90HD6MS:MOV R7,#30DL: MOV R6,#100DJNZ R6,$DJNZ R7,DLRETEND硬件仿真本次硬件仿真是用的protues 7.5软件。Protues软件是英国Labcenter electronics公司出版的EDA工 具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已 受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布 图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和 虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译。仿真图如下:0-255计数显示设计要求开始设计一个255计数器:0255计数,计满后自动清0,重新计数(在数码管中显示)。70H-72H中分别存放个位、十位、百位。程序流程图70HR10R3开始 开始 MOV A,R1,A并查表送入P0口R3送到P2口100B,A/B72HA%BA 程序初始化否(R1)+1R1(R3)+1R3调用延时10BA/B71HA%B70H (TL1)A调用BCD转化程序和现实程序R33?返回返回图6主程序流程图 图7 BCD转换程序流程图 图8 显示程序流程图程序清单见附件。硬件仿真图如下:0-255计数显示源程序:ORG 0000HLJMP MAINORG 0060HMAIN: MOV TMOD,#01100000BMOV TH1,#0MOV TL1,#0SETB TR1L1: MOV A,TL1LCALL TOBCDLCALL DISPLAYSJMP L1TOBCD: MOV B,#100DIV ABMOV 72H,AXCH A,BMOV B,#10DIV ABMOV 71H,AMOV 70H,BRETDISPLAY: MOV R1,#70HMOV R3,#0MOV DPTR,#SEGL2: MOV A,R1MOVC A,A+DPTRMOV P2,R3MOV P0,ALCALL D15MSINC R1INC R3MOV P0,#0FFH;消隐CJNE R3,#3,L2RETSEG: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB 80H,90HD15MS: MOV R7,#30DL: MOV R6,#255DJNZ R6,$DJNZ R7,DLRETEND255计数仿真图0-999999计数显示设计要求设计一个999999计数器:0999999计数,计满后自动清0,重新计数(在数码管中显示)。70H-75H分别存放个位到十万位的BCD码。 70HR1 0R3开始 70HR1 开始 开始程序流程图 (R1)+1R1 程序初始化MOV A,R1;R3送到P2 (R1)=10?否P3.5是否有脉冲 0(R1) (R1)+1R1(R1)+1R1(R3)+1R3 调用延时调用COUNT程序否 (R1)=76H?否 R3=6?是 70HR1调用显示子程序返回返回 图9 主程序流程图 图10 COUNT子程序流程图 图11 显示子程序流程图程序清单见附录硬件仿真图0-999999计数显示源程序:ORG 0000HSJMP MAINORG 0030HMAIN: MOV 70H,#0MOV 71H,#0MOV 72H,#0MOV 73H,#0MOV 74H,#0MOV 75H,#0MOV TMOD,#01100000BMOV TH1,#255MOV TL1,#255SETB TR1L1: JNB TF1,L3; 用MOV A,TL1 CJNE A,#0,L3 经试验 不行CLR TF1LCALL COUNTL3: LCALL DISPLAYSJMP L1COUNT: MOV R1,#70HL2:INC R1CJNE R1,#10,BTOMMOV R1,#0INC R1CJNE R1,#76H,L2MOV R1,#70HBTOM: RETDISPLAY: MOV R0,#70HMOV R3,#0MOV DPTR,#SEGL4: MOV A,R0MOVC A,A+DPTRMOV P2,R3MOV P0,AINC R0INC R3LCALL D6MS;经试验,延时15ms不行MOV P0,#0FFHCJNE R3,#6,L4RETSEG: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB 80H,90HD6MS: MOV R7,#30DL: MOV R6,#100DJNZ R6,$DJNZ R7,DLRETEND单片机课程设计体会 为期两周的单片机课程设计,提升了我对单片机的认识也锻炼了自己的动手能力和知识的应用。在此感谢李老师和实验室老师对我们的帮助和教导。在和同学的交流中我学会了基本的编程的应用和范例,在以后的学习中我还会更加努力学好单片机。编写255计数器的过程,我首先参考和同组同学的编程思路和流程图进行编写程序。整个过程在老师和同学的协助下才完成。经过255计数的编译,对99999计数器程序的汇编语言编写也就好很多了,编写过程也是参照流程图进行了相应编写。然后跟据要求,我用Proteus7.5画了模拟仿真图。编写出租车计费器的过程也和前面计数器的编写思路一样,首先我做了流程图和设计大纲,然后分配确定编译的各支路语言,然后组织好相应的程序编写组织结构。然后用Protes7.5拟了仿真图,进行汇编导入仿真进行模拟编译显示。做课程设计时,首先做的是将单片机的最小系统在protues 7.5画出

温馨提示

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

评论

0/150

提交评论