单片机综合实训报告.docx

上传人:b****7 文档编号:9928298 上传时间:2023-02-07 格式:DOCX 页数:31 大小:894.10KB
下载 相关 举报
单片机综合实训报告.docx_第1页
第1页 / 共31页
单片机综合实训报告.docx_第2页
第2页 / 共31页
单片机综合实训报告.docx_第3页
第3页 / 共31页
单片机综合实训报告.docx_第4页
第4页 / 共31页
单片机综合实训报告.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

单片机综合实训报告.docx

《单片机综合实训报告.docx》由会员分享,可在线阅读,更多相关《单片机综合实训报告.docx(31页珍藏版)》请在冰豆网上搜索。

单片机综合实训报告.docx

单片机综合实训报告

辽宁石油化工大学实习设计本

 

(第一册)

专业班级:

电气自动化技术0832班

姓名:

学号:

09号

实习、设计名称:

单片机综合实训

实习、设计地点:

实训室

实习、设计时间:

2010年9月27日至2010年11月15日

指导教师:

成绩:

评阅人:

 

职业技术学院教务科制

目录

前言1

1单片机实训中常用的软件2

1.1Protel99SE的介绍2

1.1.1Protel99SE的系统组成2

1.1.2Protel99SE的功能特性3

1.1.3Protel99se设计举例3

1.2Protues的介绍4

1.2.1Protues的功能特点5

1.2.2Protues的功能模块5

1.2.3Protues提供了丰富的资源7

1.3Keil软件的介绍7

1.3.1Keil仿真器的结构8

1.3.2Keil仿真器的使用特点8

2单片机系统仿真11

2.1步进电机的正反转设计11

2.1.1主要元器件11

2.1.2电路功能11

2.1.3电路原理图11

2.1.4程序清单12

2.1.5系统仿真12

2.2外部中断的应用13

2.2.1主要元器件13

2.2.2电路功能14

2.2.3电路原理图14

2.2.4程序清单14

2.2.5系统仿真15

2.3数字温度计16

2.3.1主要器件16

2.3.2电路功能16

2.3.3方案论证16

2.3.4电路原理图18

2.3.5系统仿真19

3单片机系统设计20

3.1系统要求20

3.2总体分析20

3.3硬件设计21

3.4软件设计22

总结25

参考文献26

 

前言

随着社会的进步和发展和人们生活水平的不断提高,单片机技术已经成为当今各种新技术的载体,各个应用领域的工程技术人员都应掌握单片机应用技术。

同时它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。

本次设计的共分五大章:

第一章简单介绍了本次实训的目的及要求;第二章介绍的是实训中主要用到的软件(Protel99SE、Protues和Keil软件);第三章主要进行两个小型试验的Protues仿真(一个是步进电机正反转,一个是外部中断应用);第四章是单片机的综合实例设计,本文所设计的是数字温度计;最后一章是对本次单片机综合实训的总结。

对于本次单片机仿真实训用到的Protel99SE、Protues以及Keil三种运行软件是在单片机技术不断发展情况下,最为流行的三种软件。

Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,具有很强的数据交换能力和开放性及3D模拟功能。

Proteus软件也是一种EDA工具软件。

它除了具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

KeilC51是51系列兼容单片机C语言软件开发系统,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件。

本设计最后介绍的数字温度计具有读数方便,测温范围广,测温准确的特点。

它的温度控制器输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89C51,测温传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。

本人水平有限,编写过程中难免有错误之处,希望老师能给与批评指导。

 

1单片机实训中常用的软件

1.1Protel99SE的介绍

Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源--地层和16个机加工层。

1.1.1Protel99SE的系统组成

  按照系统功能来划分,Protel99se主要包含以下俩大部分和6个功能模块。

1)电路工程设计部分

  

(1)电路原理设计部分(AdvancedSchematic99):

电路原理图设计部分包括电路图编辑器(简称SCH编辑器)、电路图零件库编辑器(简称Schlib编辑器)和各种文本编辑器。

本系统的主要功能是:

绘制、修改和编辑电路原理图;更新和修改电路图零件库;查看和编辑有关电路图和零件库的各种报表。

  

(2)印刷电路板设计系统(AdvancedPCB99):

印刷电路板设计系统包括印刷电路板编辑器(简称PCB编辑器)、零件封装编辑器(简称PCBLib编辑器)和电路板组件管理器。

本系统的主要功能是:

绘制、修改和编辑电路板;更新和修改零件封装;管理电路板组件。

  (3)自动布线系统(AdvancedRoute99):

本系统包含一个基于形状(Shape-based)的无栅格自动布线器,用于印刷电路板的自动布线,以实现PCB设计的自动化。

2)电路仿真与PLD部分

  

(1)电路模拟仿真系统(AdvancedSIM99):

电路模拟仿真系统包含一个数字/模拟信号仿真器,可提供连续的数字信号和模拟信号,以便对电路原理图进行信号模拟仿真,从而验证其正确性和可行性。

  

(2)可编程逻辑设计系统(AdvancedPLD99):

可编程逻辑设计系统包含一个有语法功能的文本编辑器和一个波形编辑器(Waveform)。

本系统的主要功能是;对逻辑电路进行分析、综合;观察信号的波形。

利用PLD系统可以最大限度的精简逻辑部件,使数字电路设计达到最简化。

  (3)高级信号完整性分析系统(AdvancedIntegrity99):

信号完整性分析系统提供了一个精确的信号完整性模拟器,可用来分析PCB设计、检查电路设计参数、实验超调量、阻抗和信号谐波要求等。

1.1.2Protel99SE的功能特性

1、开放式集成化的设计管理体系

2、超强功能的、修改与编辑功能

3、强大的设计自动化功能

1.1.3Protel99se设计举例

1)总线驱动原理图

  

图1.1总线驱动原理图

MCS-51系列单片机的外部扩展空间可达64KB,但扩展总线接口的负载能力有限,P0口能驱动8个LSTTL电路,P2口只能驱动4个LSTTL电路。

在实际应用中,若负载过重,则应采用总线驱动电路,以提高端口的驱动能力和系统的抗干扰能力。

对于P0口作为数据总线宜采用双向8路三态缓冲器74LS245,而P2口作为地址总线可采用单向8路三态缓冲器74LLS244,其接口方法如图1.1。

2)键盘、显示器扩展原理图

(1)键盘接口电路:

根据系统要求,采用两个按键:

开始键和停止键;

键盘使用8155芯片扩展;

各键键码确定原则为开始键01H、停止键02H,具体键盘接口电路如图1.2所示。

(2)显示器接口电路:

根据系统要求,采用4位显示时间;

根据实际需要,显示器采用7段共阴极LED数码管显示器,显示缓冲区选择40H-43H单元;

显示接口电路选择8155芯片,采用动态显示、软件译码方式,段、位驱动芯片采用6路集电极开路输出驱动7407芯片,具体显示器接口电路如图1.2所示。

图1.2键盘、显示器扩展原理图

1.2Protues的介绍

  Proteus软件是英国Labcenterelectronics公司出版的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等多种编译器。

1.2.1Protues的功能特点

  Proteus软件具有其它EDA工具软件(例:

multisim)的功能,这些功能是:

  

(1)原理布图

  

(2)PCB自动或人工布线

  (3)SPICE电路仿真

  此外它还具有革命性的特点:

  

(1)互动的电路仿真

  用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。

  

(2)仿真处理器及其外围电路

  可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。

还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。

配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境。

1.2.2Protues的功能模块

 1)智能原理图设计(ISIS)

  

(1)丰富的器件库:

超过27000种元器件,可方便地创建新元件。

  

(2)智能的器件搜索:

通过模糊搜索可以快速定位所需要的器件。

  (3)智能化的连线功能:

自动连线功能使连接导线简单快捷,大大缩短绘图时间。

  (4)支持总线结构:

使用总线器件和总线布线使电路设计简明清晰。

  (5)可输出高质量图纸:

通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。

 2)完善的电路仿真功能(Prospice)

(1)ProSPICE混合仿真:

基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真。

(2)超过27000个仿真器件:

可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件。

(3)多样的激励源:

包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入。

(4)丰富的虚拟仪器:

13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等。

(5)生动的仿真显示:

用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动。

(6)高级图形仿真功能(ASF):

基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析。

 3)独特的单片机协同仿真功能(VSM)

(1)支持主流的CPU类型:

如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器。

(2)支持通用外设模型:

如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信。

(3)实时仿真:

支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真。

(4)编译及调试:

支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试。

 4)实用的PCB设计平台

 

(1)原理图到PCB的快速通道:

原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计。

  

(2)先进的自动布局/布线功能:

支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理。

  (3)完整的PCB设计功能:

最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D可视化预览。

  (4)多种输出格式的支持:

可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。

1.2.3Protues提供了丰富的资源

 

(1)Proteus可提供的仿真元器件资源:

仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。

  

(2)Proteus可提供的仿真仪表资源:

示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。

理论上同一种仪器可以在一个电路中随意的调用。

  (3)除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。

这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。

这些都尽可能减少了仪器对测量结果的影响。

  (4)Proteus可提供的调试手段Proteus提供了比较丰富的测试信号用于电路的测试。

这些测试信号包括模拟信号和数字信号。

  

1.3Keil软件的介绍

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。

机器汇编是通过汇编软件将源程序变为机器码,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。

掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

1.3.1Keil仿真器的结构

 

(1)该仿真器配合uVision集成开发环境使用,分独立使用的Keil仿真器和非独立使用的Keil仿真器两种(参看下图),前者可应用于其他的51单片机目标系统,后者一般只限于在配套的51实验板上使用(请参看教材中的有关段落)。

(2)独立使用的Keil仿真器采用标准4线USB插座作电气接口,注意它不是真的总线意义上的USB口——4线中,中间的两线用于RS-232通信,外侧的两线是电源和地。

顺便说明,市面上也有直接使用USB接口的Keil仿真器出售,其原理是用一片USB——UART转换芯片代替仿真器上原来的232——UART转换芯片。

由于uVision集成调试环境不直接支持USB口,所以,这样做需要在PC机端增加USB驱动,并在仿真器端增加硬件开销,从而使仿真器的整体售价上升较多。

非独立使用的Keil仿真器限于在配套的51实验板上使用,它通过一般的两头串行电缆与PC机进行通信,并使用实验板上的复位按键(黄色)进行复位。

(3)独立使用的Keil仿真器配有一根长约2米的定制电缆,该电缆一共有3个接头,其中,9孔RS-232接头连接PC的COM口(COM1-COM4);从它根部分出来的一个USB接头连接PC机的USB口,用于从该口取电(5V/最大500mA)供给仿真器和目标系统,但如果用户采用外部电源给目标系统和仿真器供电,则该接头应悬空;另一个USB接头用于连接仿真器。

(4)必要时,独立使用的Keil仿真器还可以直接当编程下载器来使用(不依赖别的硬件)。

做法是:

拔掉仿真器上的仿真芯片,换成支持UART串口在线下载的芯片,如STC公司的STC89C51/52/53/54/55/58/516等(出厂时其内部已固化有支持在线下载的程序),连上串行电缆,并适当控制上电过程,就可将用户程序直接下载到这些芯片(烧写寿命>100万次)。

这些芯片的抗干扰性能、片内资源的配置及烧写寿命等项指标均优于Atmel等公司的同类芯片,但价格会略高几毛钱到1元钱(与购买渠道有关)。

至于PC机端的在线下载程序(STC-ISP),可以从STC公司或深圳宏晶公司网站上免费下载。

1.3.2Keil仿真器的使用特点

 

(1)Keil仿真器的使用:

以51实验板为例,将仿真器按正确方向插入实验板的CPU插座并锁紧(USB接口与锁紧把手方向一致),用定制电缆连接仿真器和PC机,其供电方式有两种:

①通过外部电源同时向实验板和仿真器供电,此时仿真器上的跳线器应开路;

②从PC机的USB口取电(5V/最大500mA)同时供给仿真器和实验板,此时仿真器上的跳线器应该短路。

两种供电方式不要同时采用。

若采用后一方式,应尽量避免带电插拔仿真器端的接头,因为RS-232口不支持热插拔操作,如果这样做,有可能损坏两端的通信芯片(但发生几率并不高)。

(2)Keil仿真器的核心是一片由SST公司生产的51兼容芯片SST89E564RD或SST89E516RD。

该仿真芯片拥有64KB(Block0)+8KB(Block1)的Flash-ROM,其ROM中常驻有名为“SoftICE(在电路仿真,SoftwareInCircuitEmulator)”的仿真监控程序。

实际上,SoftICE只占用5KB的存储空间,包括Block0中的1KB(FC00H-FFFFH)和Block1中的4KB(0000H-0FFFH)。

在Block0中还剩下约63KB(0000-FBFFH)可用作用户的仿真空间。

(3)调试时,在PC机上uVision套件和仿真器上SoftICE固件的共同控制下,利用仿真芯片“在应用编程(IAP,InAplicationProgramming)”的特性,先将目标程序下载到仿真芯片的Block0空间(0000H-FBFFH),随后可对目标系统进行各种硬件仿真调试。

调试期间PC机与仿真器之间始终保持通信联络,导致独立Keil仿真器上一个指示数据接收的LED不断闪亮。

(4)对独立Keil仿真器,用户必须用仿真器上的复位按钮来结束前一轮的硬件仿真调试,此时,仿真芯片进行复位操作,芯片中前次的用户程序被清除,仿真监控程序重新掌握控制权,准备开始新一轮的下载和调试。

对非独立的Keil仿真器,用户应通过51实验板上的黄色复位按键来进行复位。

(5)仿真芯片内的以下资源将在硬件仿真时被占用,但其它资源向用户开放。

UART串口——仿真时用于PC机与SoftICE间的串行通信;

定时器2——仿真时用作串行通信的波特率发生器;

内部RAM间接寻址区最高端的8个字节——仿真时用作堆栈。

(6)由于仿真时Keil仿真器要占用一部分硬件资源,所以它不是真正意义上的仿真器,正确的叫法应该是“在线调试器”。

此外,仿真芯片有一定的使用寿命。

这是因为每次仿真都需要重新将用户代码下载烧写到片内的Flash-ROM。

有资料说,它可以支持1万次以上的全速运行调试和100万次以上的单步运行调试。

(7)SST89E564RD/516RD的最高工作频率为40MHz,除Flash-ROM外,片内拥有以下一些硬件资源:

1KB的内部RAM,定时器T0/T1/T2,1个UART口和1个SPI串口,看门狗定时器WDT,5个可编程计数器阵列PCA、8个中断源和4级中断优先结构,2个数据指针等。

其中,44脚封装的SST89E516RD比SST89E564RD多出一个4线的P4口。

但用户应注意有些资源(如WDT)的使用不同于AT89S51/52等常用芯片。

使用仿真芯片SST89E564RD/516RD可仿真多种51单片机芯片。

其仿真空间约63KB,系统时钟可选到40MHz。

也就是说,只要仿真芯片上有该项资源,且仿真时未被占用,那么用户就可以在硬件仿真时使用它。

(8)使用独立的Keil仿真器时,请注意以下几点:

仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振;

仿真器上的复位按钮只复位仿真芯片,不复位目标系统。

仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。

 

2单片机系统仿真

2.1步进电机的正反转设计

2.1.1主要元器件

(1)单片机(AT89C51)

(2)运放(ULN2003A)

(3)电阻(MINRES10K)(4)按钮(BUTTON)

(5)电容(CAP)(6)晶振(CRYSTAL)

(7)单极性步进电机(MOTOR.STEPPER)(8)反相器(74LS04)

2.1.2电路功能

电路中有三个按键:

STOP键使电动机停止转动;FOR键控制电动机正转;REV键控制电动机反转。

按键分别接在单片机的P1.0-P1.2引脚上,作为控制信号的输入端,输出端采用ULN2003驱动电路控制步进电机的转向。

2.1.3电路原理图

步进电机正反转控制电路原理图如图2.1所示。

图2.1步进电机正反转控制电路原理图

2.1.4程序清单

ORG0000HMOVDPTR,#TABDLY:

MOVR1,#20

NOPMOVCA,@A+DPTRD1:

MOVR2,#248

ACALLDLYJZREVDJNZR2,$

STOP:

ORLP2,#0FFHMOVP2,ADJNZR1,D1

LOOP:

JNBP1.0,FOR2JNBP1.2,STP1RET

JNBP1.1,REV2JNBP1.0,FOR2TAB:

DB3,6,0CH,9

JNBP1.2,STP1ACALLDLYDB0

JMPLOOPINCR0DB3,9,0CH,6

FOR:

MO

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

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1