毕业论文——发动机自动熄火的诊断分析1 .doc

上传人:laozhun 文档编号:2983484 上传时间:2023-03-07 格式:DOC 页数:22 大小:2.09MB
返回 下载 相关 举报
毕业论文——发动机自动熄火的诊断分析1 .doc_第1页
第1页 / 共22页
毕业论文——发动机自动熄火的诊断分析1 .doc_第2页
第2页 / 共22页
毕业论文——发动机自动熄火的诊断分析1 .doc_第3页
第3页 / 共22页
毕业论文——发动机自动熄火的诊断分析1 .doc_第4页
第4页 / 共22页
毕业论文——发动机自动熄火的诊断分析1 .doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《毕业论文——发动机自动熄火的诊断分析1 .doc》由会员分享,可在线阅读,更多相关《毕业论文——发动机自动熄火的诊断分析1 .doc(22页珍藏版)》请在三一办公上搜索。

1、C51程序设计实验报告班 级:10电信01班 姓 名: 陈海祥 学 号:101202060130日 期:2012.6.2 指导老师: 赵金龙 主要应用: 电脑钟 目录第一章 AT89C51介绍21.1 AT89C51简介21.2 AT89C51主要特性31.3各引脚说明4第二章 PROTEUS电路图设计及应用72.1 Proteus软件介绍72.2 Proteus绘制电脑钟实例8第三章KEIL软件的应用103.1 Keil软件的使用103.2 生成.HEX文件13第四章 仿真结果14第五章 结论15附录:176.1原理图176.2程序代码17参考文献:21第一章 AT89C51介绍1.1 AT

2、89C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单

3、片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示:1.2 AT89C51主要特性 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路1.3各引脚说明 VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储

4、器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低

5、,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下所示: P3.0 RXD(串行

6、输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1

7、/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/E

8、A将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 振荡器特向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反第二章 Proteus电路图设计及应用2.1 Proteus软件介绍 图. 2.1

9、.0 Proteus启动界面Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是: (1)、实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。 (2)、支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PI

10、C18系列、Z80系列、HC11系列以及各种外围芯片。 (3)、提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。 (4)、具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大2.2 Proteus绘制电脑钟实例 打开Proteus软件,出现工作界面如图所示:图. 2.2.0 Proteus工作界面将所需元器件加入到对象选择器窗口,单击对象选择器按钮P,如图所示:。

11、查找并放置元器件至图形编辑窗口,电路图如下图所示:图.2.2.1 软件查找选择界面选择放置原件调整布局连线:图2.2.2 LED电脑钟显示电路图绘制完电路图后应点击左下方player按钮进行电路检测第三章Keil软件的应用3.1 Keil软件的使用 Keil C51 软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编,PLM 语言和C 语言的程序设计,界面友好,易学易用。图 3.1.0 Keil 软件启动界面 进入Keil C51后的编辑界面,如图所示:图 3.1.1 Keil软件编辑界面(1)、新建文件单击Project 菜单,在弹出的下拉菜单中选中New Proj

12、ect 选项,新建一个项目,然后选择要保存的路径。这时会弹出一个对话框,要求选择单片机的型号,如图所示:选定Atmel下的89C51,单击确定。在下图中,单击“File”菜单,再在下拉菜单中单击“New”选项,新建文件后如下图所示:将程序编辑到新建的文档中 并保存后缀名为 .C文件(2)、添加程序文件到工程文件中 回到编辑界面后,单击“Target 1”前面的“”号,然后在“Source Group 1”上单击右键,弹出如下菜单 图3.1.2 添加程序文件到工程文件菜单 然后单击“Add File to Group Source Group 1” 屏幕如下图所示 图3.1.3程序添加3.2 生

13、成.HEX文件单击“Project”菜单,再在下拉菜单中单击 “Options for Target Target 1” 在下图中,单击“Output”中单击“Create HEXFile” 选项,使程序编译后产生 HEX 代码,供下载器软件使用。图3.2.1 生成.HEX文件设置对话框图3.2.2编译运行第四章 仿真结果在Proteus中双击51单片机将.HEX文件烧入单片机中(图4.1.0)。点击左下方的player按钮 运行电子钟仿真图4.1.0 HEX文件烧入图4.1.1时钟仿真图第五章 结论在本学期的课程设计中,重新巩固了单片机的理论知识学到了很多内容。刚开始学习这门课的时候觉得很困

14、难,没有思路。由刚开始的不熟悉到现在的熟悉并且能熟练运用,收获颇丰。把以前学到的知识得到巩固提高和进一步的理解和认识。虽然在过程中遇到了困难,比如程序代码错误,仿真结果出错,但是在经过修改和同学的帮助下都一一进行了完善。同时,我发现自身还有很多缺点,诸如C语言基础不够牢固,容易马虎等。总之,课设是一个整体,要想完成课设,必须要有条有理的确定课设的整体结构,这就需要我们有一个整体的概念,从目录到结尾都应该贯穿整体,流畅。此外结构必须要清晰,对于每个部分,我们要做到有理有据,对课题进行深刻的讨论,不能只是走个形式而已,要从中学到有用的知识,为我们将来就业打下坚实基础。附录:6.1原理图 图6.1.

15、0时钟设计流程图6.2程序代码#include unsigned char code dispcode=0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71,0x40; unsigned char dispcnt=0,0,16,0,0,16,0,0;unsigned char dispsel=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;unsigned char s,m,h;unsigned char tcnt;unsigned char i,j,

16、k;void desp1ms(void)for(i=0;i4;i+)for(j=0;j250;j+);main()s=0;m=0;h=0;tcnt=0;TMOD=0x01;ET0=1;EA=1;TH0=0x3c;TL0=0xb0;TR0=1;while(1)for(k=0;k8;k+)P2=dispselk;P0=dispcodedispcntk;desp1ms();void t0(void) interrupt 1 using 0 tcnt+; TH0=0x3c;TL0=0xb0;if(tcnt=20) tcnt=0; s+; if(s=60) s=0; m+;if(m=60)m=0;h+;if(h=24)h=0; dispcnt0=h/10;dispcnt1=h%10;dispcnt3=m/10;dispcnt4=m%10;dispcnt6=s/10;dispcnt7=s%10;参考文献:单片机原理与应用及C51程序设计 唐颖编著:北京大学出版社C51程序设计首次操作教程PDF版 C51程序设计实验指导书PDF版

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号