51单片机课程设计实验报告

  • 格式:doc
  • 大小:377.50 KB
  • 文档页数:23

51单片机应用设计与仿真

---------------基于Keil C 与 Proteus

院校 成都理工大学工程技术学院

专业 测控技术与仪器

学号 ************

姓名 李刚

指导老师 赵老师

成绩

1

目录

第一章 51单片机结构和原理 …………………………………2

1.1 51单片机的结构 …………………………………2

第二章 相关编程软件与仿真软件的介绍 ………………………3

2.1 从标准C转向Keil C …………………………………3

2.2 Keil C上机的基本方法 …………………………………3

2.3 Proteus简介 ……………………………………………4

第三章 基于单片机的PID温度控制系统 ………………………5

3.1 PID温控器简介 ……………………………………………5

3.2 8051存储系统扩展和PID温控器的存储系统设计………………5

3.2.1 PID温控器存储系统设计 …………………………………5

3.3 人机接口和PID温控器的输入/输出设计及仿真…………………6

3.3.1 八段LED显示器……………………………………………6

3.3.2 LED显示器的显示方式………………………………………8

3.3.3 PID温控器LED显示及仿真…………………………………9

3.3.4 键盘监测基本原理………………………………………12

3.3.5 PID温控器的键盘设计及其Proteus仿真 …………………13

3.3.6 PID温控器的炉温采样接口及仿真 ………………………16

第四章 总结与展望 ……………………………………………22

参考文献 ………………………………………………………………22

2

第一章 51单片机结构和原理

单片微型计算机简称单片机,也称为微控制器(Micro Controller Unit),英文缩写为MCU.单片机的结构及功能均是按照工业控制要求而设计的,它把微型计算机的宫格功能部件(中央处理器CPU、随机存取存储器RAM、只读存储器ROM、输入输出I/O接口、定时器/计数器以及串行通信接口等)集成在一块芯片上,构成一个完整的微型计算机,故又称为单片微型计算机。除工业领域外,单片机还广泛应用于各种民用电子、电器之中。

MCS-51是由美国INTEL公司20世纪80年代生产的一系列8位单片机的总称,此系列单片机包括很多型号,如:8031、8051、8751、8032、8052等,其中8051是最早最典型的产品。该系列其他单片机都是在8051的基础上进行功能的增、减改变而来的,所以人们习惯用8051来称呼MCS-8051系列单片机,而其中的8031在20世纪80年代末90年代初是我国最流行的单片机之一。INTEL公司后来将MCS-51的核心技术授权给了其他公司,现在生产8051内核单片机的公司,主要有ATMEL、WINBOND、NXP、NC DRAGON等。

随着技术的发展,各种高性能的16位、32位MCU不断出现,但以8051、PIC、AVG以及MC68HC等系列为典型代表的8位MCU,由于成本低、开发工具完善、易学易用等特点,仍具有强大的生命力和极高的实使用价值。

1.1 51单片机的结构

1.1.11 基本结构

8051单片机的基本结构为:

☆ 8位CPU,片内振荡器。

☆ 4KB程序存储器ROM(4096个8位淹没ROM)。

☆ 128字节的数据存储器RAM(128个8位淹没RAM)。

☆ 21个特殊功能寄存器。

☆ 32条I/O口线。

☆ 外部数据存储器寻址空间为64KB。外部程序存储器寻址空间为64KB。

☆ 2个16位的可编程定时/计数器。

☆ 中断结构:具有5个中断源,2个优先级。

☆ 一个全双工串行通信口。

☆ 有位寻址功能,适于布尔处理的位处理机制。

3

1.2.1 8051单片机引脚图

XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51

图表 1 at89c51单片机

第二章 相关编程与仿真软件的介绍

常用的单片机语言有很多,如:汇编、C语言、BASIC、C++等,对51单片机而言,使用最为广泛的还是汇编语言和C语言。有经验的程序员用汇编语言可以写出高效率的程序,但每种语言都有自己个子的特点。

2.1 从标准C转向Keil C

C51是专门为51系列单片机设计的,根据51单片机自身的特点进行了若干扩展,与ANSIC在语法和库函数方面存在稍许差别,但绝大部分是兼容的。但在学习中,使用最多的还是Keil C8.08 u

Vision3。

2.2 Keil C上机的基本方法

2.2.1 uVision 3中编程的基本步骤

☆ 在uVision 3集成开发环境中创建一个新项目(Project),并为该项目选定合适的单片机型号。

4

☆ 利用uVision 3的文件编译器编写C语言(或者汇编语言)源程序文件,并将文件添加到项目中去。

☆ 通过uVision 3的各种选项,配置Cx51编译器、Ax51宏编译器、BL51/Lx51连接定位器以Debug 调试器的功能。

☆ 利用uVision 3的构造功能对项目中的源程序文件进行编译链接,生成绝对目标代码和可选的HEX格式的可执行文件,如果出现编译链接错误则返回上一步,修改源程序中的错误后重新构造整个项目。

☆ 将没有错误的绝对目标代码装入uVision 3调试器进行仿真调试,调试成功后用编程器将可执行文件写入到单片机应用系统的程序存储器或者单片机内部的Flash ROM中。

2.2.2 uVision 上机注意事项

◎C51源程序汗汉字注释内容时,删除、插入汉字会出现乱码。解决方法为:选择Edit|Configuration

菜单项,弹出界面,将C源程序文本字体选择为DotumChe , 此字体可避免出现汉字乱码现象。

◎原版的Keil C编译器会忽略编码为0xFD的字符,当编写中文显示程序时会出现问题,应安装针对这一问题的专用补丁,许多Keil C安装包都含有该补丁程序,安装时间可根据帮助文件安装该补丁。

2.3 Proteus简介

Proteus是英国Labcenter公司开发的嵌入式系统仿真软件,组合了高级原理图设计工具ISIS、混合模式SPICE仿真、PCB设计以及自动布线而形成了一个完整的电子设计系统。它运行于Windows操作系统上,可以仿真、分析各种模拟和数字电路,并且对PC机的硬件配置要求不高。

2.3.1 Proteus 与Keil C 的联合仿真

目前,单片机仿真软件很多,Proteus ISIS 与其他单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能够仿真单片机外围电路或没有单片机参与的其他电路的工作情况。一次在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程师的角度直接看程序运行和电路工作的过程和结果。同事,当原理图调试成功后,利用Proteus ARES软件,很容易获得PCB图,为今后的制造提供了方便。

Keil是美国Keil Software公司开发的,是目前世界上最好的51单片机的汇编和C语言的开发工具。它支持汇编、C语言以及混合编程,同时具备功能强大的软件仿真,在软件模拟仿真方式下不需要任何单片机硬件即可完成用户程序仿真调试;虽然Keil也提供了硬件仿真(用Monitor51协议,需要硬件支持)功能,但我们在利用它的硬件仿真功能的时候,它会受到一定的限制。如果我们将Proteus ISIS与Keil整合起来使用,充分利用各自的仿真功能,单片机软硬件的调试将变的十分有效。

打开LED.dsn,删除LED设计页中的ULA2003A驱动部分,在LED设计页新建一个子电路LED_DRIVER,为该子电路见撒谎那个输入/输出端子。移动鼠标指针带子电路上。按Ctrl+C计入子电路所在的设计页,原ULA2003驱动部分加上相应的端子。由于LED的驱动部分有多中方案,将来采用别的方案时不需要做任何的修改。用BUTTON元件绘出键盘的部分,并为行扫描线和列扫描线上的端子命名,此处不采用Proteus中现成的键盘模型是为了是读者更透彻的理解键盘的设计和按键识别的原理,但在商业产品的开发中可购买现成的键盘模块。

5

第三章 基于单片机的PID温度控制系统

3.1 PID温控器简介

PID温控器原理图

电炉内的热电阻温度传感器测出的温度信号经运算放大器放大和模/数转换后,由8051读出电阻炉炉温,控制程序根据当前炉温和目标温度的偏差,按照一定的控制方法控制开关K的开与断,提供适当的加热功率,以使炉温尽快趋近目标温度。PID温控器还通过串口与PC通信,以实现远程监控。LED和键盘用于人机接口,交流电过零检测部分可使8051只在正弦交流电零点附近控制开关K的通与断,以避免对交流电斩波而造成干扰。

本设计是接口技术、应用系统设计、Proteus仿真的结合,介绍存储系统、人机接口、数据采集、串口通信等知识及其在PID温控器设计中的应用于仿真,从个子系统开始,设计并逐步完善,直至整个应用系统的实现。

3.2 8051存储系统扩展和PID温控器的存储系统设计

3.2.1 PID温控器存储系统设计

PID温控器的存储系统设计中使用了一片3-8译码器74LS138来产生各芯片所需的片选信号。6264