摘要:单片机课程设计为我们具体接触和了解实际单片机电路的设计方法提供了一个综合性工程训练的机会,在内容上、方法上、手段上进行创造性的改革已取得初步成果,激发了我们的学习热情、创作思路,让我们开阔了眼界,初步掌握了单片机电路的设计方法,提高了单片机电路的设计和软件的应用能力,为今后的毕业设计和从事单片机技术方面的开发工作打下了基础。我们通过实践教学环节的训练与锻炼,才能在实践中不断巩固和加深理论知识,提高独立工作能力和创新能力。
关键词:单片机 计数器 i/o接口
1 概述
本次课程设计通过独立完成单片机外部接线设计和编写程序的任务,加深了自己对理论知识的理解,提高了动手能力,独立分析问题、解决问题能力,协调能力和创造性思维能力。提高了单片机应用方面的实践技能,树立了严谨的科学作风。通过电路和程序的设计、安装、调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。通过课程设计要实现以下两个目标:第一,让学生初步掌握单片机的试验、设计方法。即学生根据设计要求和性能参数,查阅文献资料,收集、分析类似电路的性能,并通过组装调试等实践活动,使电路达到性能指标;第二,课程设计为后续的毕业设计打好基础。通过实验训练,掌握单片机应用的基本操作方法,为今后从事相关工作打下扎实的基础,在此过程中培养从事设计工作的整体观念。
2 单片机介绍
单片机是一种集成电路芯片。它采用超大规模技术将具有数据处理能力的微处理器(cpu)、存储器(含程序存储器rom和数据存储器ram)、输入、输出接口电路(i/o接口)集成在同一块芯片上,构成一个即小巧又很完善的计算机硬件系统,在单片机程序的控制下能准确、迅速、高效地完成程序设计者事先规定的任务。所以说,一片单片机芯片就具有了组成计算机的全部功能。
由此来看,单片机有着一般微处理器(cpu)芯片所不具备的功能,它可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。
3 软件介绍
3.1 proteus软件介绍 proteus isis是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,该软件的特点是:①实现了单片机仿真和spice电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、rs232动态仿真、i2c调试器、spi调试器、键盘和lcd系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。②支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各种外围芯片。③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如keil c51 uvision2等软件。④具有强大的原理图绘制功能。总之,该软件是一款集单片机和spice分析于一身的仿真软件,功能极其强大。本章介绍proteus isis软件的工作环境和一些基本操作。
3.2 keilc软件介绍 keil c51 μvision2集成开发环境是keil software,inc/keil elektronik gmbh开发的基于80c51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是c编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想。
4 设计方案
4.1 设计目的 设计包括确定控制任务、系统总体方案设计、硬件系统设计、控制软件的设计等,以便使学生掌握单片机系统设计的总体思路和方法。
4.2 设计内容 利用单片机制作一个手动计数器,在单片机的p3.7管脚接一个轻触开关,作为手动计数的按钮,用单片机的p2.0-p2.7接一个共阴数码管,作为00-99计数的个位显示,用单片机的p0.0-0.7接一个共阴数码管,作为00-99计数的十位显示。
4.3 设计工作任务及工作量的要求 ①根据题目要求的指标,通过查阅有关资料,确定系统设计方案,并设计其硬件电路
图。②画出电路方框图,叙述主要模块的功能及他们之间的控制关系和数据传输。③用protel等软件绘制电路原理图。希望通过proteus等仿真软件仿真通过。④软件设计包括流程图、并用汇编语言对软件进行编译,并能通过调试。
4.4 系统板上硬件连线 ①把“单片机系统”区域中的p0.0/ad0-p0.7/ad7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:p0.0/ad0对应着a,p0.1/ad1对应着b,……,p0.7/ad7对应着h。②把“单片机系统”区域中的p2.0/a8-p2.7/a15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的a-h端口上;③把“单片机系统”区域中的p3.7/rd端口用导线连接到“独立式键盘”区域中的sp1端口上。
4.5 程序设计内容 ①单片机对按键的识别过程处理;②单片机对正确识别的按键进行计数,计数满时,又从零开始计数;③单片机对计的数值要进行数码显示,计得的数是十进数,含有十位和个位,我们要把十位和个位拆开分别送出这样的十位和个位数值到对应的数码管上显示。如何拆开十位和个位我们可以把所计得的数值对10求余,即可得到个位数字,对10整除,即可得到十位数字了。④通过查表方式,分别显示出个位和十位数字。⑤程序框图。
4.6 电路图
4.7 仿真结果
参考文献:
[1]孙涵芳,mcs-51/96系列单片机原理及应用(修订版)北京航空航天大学出版社,1994.