您的当前位置:首页单片机毕业设计 优秀论文

单片机毕业设计 优秀论文

来源:小侦探旅游网
 编 号:

审定成绩:

重庆邮电大学 毕业设计(论文)

设计(论文)题目:

基于MSC-51单片机计算器

学 院 名 称 : 学 生 姓 名 : 专 业 : 班 级 : 学 号 : 指 导 教 师 : 答辩组 负责人 :

通信学院 田倚晨 电子信息工程 3101002 10010247

填表时间:2012 年 6 月 重庆邮电大学教务处制

重庆邮电大学本科毕业设计(论文)

摘 要

近年来,伴随着计算机在大规模集成电路的发展和社会领域的渗透,单片机应用正在不断地走向深入。由于它具有功能强,体积小,功耗低,性价比高,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域。

作为微型机的一个主要分支,单片机在结构上的最大特点是把CPU、RAM和ROM存储器、定时器和多种I/O接口电路集成在一块超大规模集成电路芯片上。从它的组成和功能来看,一块单片机芯片其实就是一台计算机。

本次设计是采用MSC-51单片机来设计的四位数计算器, 采用C语言进行程序编写实现计算器功能。外接4X4的键盘,通过键盘扫描来完成输入数的控制,利用驱动电路使数值与结果在七段共阴极数码管上正常显示,并设有清零键可随时完成计算与显示的清零。计算器将完成的0至9999整数的一次加/减/乘/除运算。

【关键词】MSC-51单片机 四位数计算器 C语言

- I -

重庆邮电大学本科毕业设计(论文)

ABSTRACT

In recent years, with the computer in the social sector and the development of large-scale integrated circuits, the application of SCM is continuously to thoroughly, because it has the strong function, small volume, low power consumption, low price and reliable, easy to use, so particularly suitable for related control and system, more and more widely used in automatic control, intelligent instrument and meter, data acquisition, military products, and household electrical appliances, etc.

As one of the main branch of microcomputer, the single-chip microcomputer in the structure of the biggest characteristic is to put the CPU, memory, and timer RAM and ROM and I/O interface circuit integration on a large scale integrated circuit chip. From its composition and function, a single chip is actually a computer.

This design is adopted to design the MSC - 51 single-chip four digits calculator, using C language program realization calculator function. External 4X4 keyboard, through the keyboard scan to complete input number of control, use drive circuit make numerical results in the seventh with the normal cathode tube of digital display, and reset button at the finish calculation and display cleared. Calculators will complete the 0-9999 integer by plus / minus / multiply / divide.

【Key words】MSC-51 Microcontroller Four-digit Calculator C Programming Language

- II -

重庆邮电大学本科毕业设计(论文)

目 录

前 言 .................................................................................................................................................. 1 第一章 单片机介绍 .......................................................................................................................... 2

第一节 单片机的发展历史和趋势 ........................................................................................... 2

一、发展历史 ........................................................................................................................ 2 二、发展趋势 ........................................................................................................................ 3 第二节 MCS-51单片机系统简介 ............................................................................................ 4

一、单片机的基本特点 ........................................................................................................ 4 二、单片机的组成 ................................................................................................................ 5 第三节 本章小结 ......................................................................................................................... 6 第二章 MCS-51单片机计算器总体方案 ....................................................................................... 7

第一节 设计任务 ......................................................................................................................... 7 第二节 方案设计 ......................................................................................................................... 7

一、主程序方案 .................................................................................................................... 7 二、按键显示方案 ................................................................................................................ 8 三、设计难点 ........................................................................................................................ 8 第三节 本章小结 ......................................................................................................................... 8 第三章 MCS-51单片机计算器硬件设计 ....................................................................................... 9

第一节 主要元件介绍与选择 ................................................................................................... 9

一、电阻 ................................................................................................................................ 9 二、常用电容器 .................................................................................................................... 9 三、AT89S51单片机.......................................................................................................... 10 四、7段数码管 ................................................................................................................... 12 五、按键 .............................................................................................................................. 12 第二节 硬件设计 ..................................................................................................................... 10

一、矩阵式键盘设定 .......................................................................................................... 13 二、显示数码管设定 ............................................................................ 错误!未定义书签。 三、复位、时钟电路设计 .................................................................................................. 14

- III -

重庆邮电大学本科毕业设计(论文)

第三节 本章小结 ..................................................................................................................... 15 第四章 MCS-51单片机计算器软件设计 ..................................................................................... 15

第一节 软件设定 ..................................................................................................................... 16

一、程序规划 ...................................................................................................................... 16 二、程序设定 ...................................................................................................................... 16 三、数码管显示程序设计 .................................................................................................. 17 四、键盘程序设计 .............................................................................................................. 18 第二节 程序总编 ..................................................................................................................... 21

一、主要变量 ...................................................................................................................... 21 二、程序模块 ...................................................................................................................... 21 第三节 本章小结 ....................................................................................................................... 22 第五章 实验方法及调试手段 ........................................................................................................ 23

第一节 实验技术 ..................................................................................................................... 23

一、实验方法 ........................................................................................ 错误!未定义书签。 二、实验手段及环境 .......................................................................................................... 24 三、Keil C51单片机软件应用 .......................................................................................... 24 第二节 实际焊接及其注意事项 ............................................................................................. 25 第三节 本章小结 ..................................................................................................................... 26 结 论 ................................................................................................................................................ 27 致 谢 ................................................................................................................................................ 28 参考文献 ............................................................................................................................................ 29 附 录 ................................................................................................................................................ 30

一、英文原文: .................................................................................................................. 30 二、英文翻译: .................................................................................................................. 39 三、工程设计图纸: .......................................................................................................... 45 四、源程序: ...................................................................................................................... 47

- IV -

重庆邮电大学本科毕业设计(论文)

前 言

随着科学的不断发展与进步,微电子技术的发展越来越快。

单片机自20实际70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,前景广阔。给人类社会带来了根本性的改变。

尤其Intel公司生产的MSC-51系列单片机,因为其处理能力强,结构简单,易于使用等优点,在世界范围内得到了广泛的普及和应用。

目前在工业,办公,家电等诸多领域,随处可见单片机的踪影,单片机技术的开发已经成为国家工业化水平的标志之一。

“工欲善其事,必先利其器”,对于单片机,我们不但要认识它的作用和价值,还需要熟悉它的原理和性能。单片机本身只是一个电子元件,只有当它与其它的器件,设备有机的组合在一起,并配置适当的工作程序后,才能具有特定的功能。就目前来看,单片机应用系统的研究也在不断推出,各式各样由单片机开发出的新产品层出不穷。

计算器是日常生活中非常常见的电子设备,可以有效而快速地解决人们在商业交易、学习工作等生产和生活中遇到的数字运算问题。计算器的普及和利用还有极大的发展空间。

基于这样的理念,本次设计是用MCS-51单片机为芯片, P1口作为输入端,外接4X4的键盘,通过键盘扫描来完成输入数的控制,同时连接一个驱动电路,用来保证LED的工作正常。由此完成一个能实现简单功能的计算器。

- 1 -

重庆邮电大学本科毕业设计(论文)

第一章 单片机介绍

第一节 单片机的发展历史和趋势

一、发展历史

继1971年微处理器的研制成功不久以后,就出现了单片机,但最早的单片机是1位的,当时因为工艺限制,单片机采用双片的形式而且功能比较简单。如果我们以8位单片机的推出作为起点,那么单片机的发展历史大致可分为以下几个阶段。 [1]

1、第一阶段(1976-1978)

单片机的初级阶段。以Intel公司的MCS–48为代表。MCS–48的推出是在工业控制领域的控索,参与这一控索的公司还有Motorola 、Zilog等,都取得了满意的效果。这就是SCM的诞生年代,“单机片”一词即由此而来。

2、第二阶段(1978-1982)

单片机的完善阶段。Intel公司在MCS–48 基础上推出了完善的、典型的单片机系列MCS –51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。

①完善的外部总线。MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有很多机通信功能的串行通信接口;

②CPU外围功能单元的集中管理模式; ③体现工控特性的位地址空间及位操作方式;

④指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。

3、第三阶段(1982-1990)

8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel公司推出的MCS–96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。随着MCS–51系列的广应用,

- 2 -

重庆邮电大学本科毕业设计(论文)

许多电气厂商竞相使用8051为内核,将许多测控系统中使用的电路技术、接口技术、多通道A/D转换部件、可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征。

4、第四阶段(1990—现在)

微控制器的全面发展阶段。随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。

[2]

二、发展趋势

目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。

CMOS化:近年来由于CHMOS技术的进小,大大地促进了单片机的CMOS化。CMOS芯片除了低功耗特性之外,还具有功耗的可控性,使单片机可以工作在功耗精细管理状态。这也是今后以80C51取代8051为标准MCU芯片的原因。因为单片机芯片多数是采用CMOS(金属栅氧化物)半导体工艺生产。CMOS电路的特点是低功耗、高密度、低速度、低价格。采用双极型半导体工艺的TTL电路速度快,但功耗和芯片面积较大。随着技术和工艺水平的提高,又出现了HMOS(高密度、高速度MOS)和CHMOS工艺。CHMOS和HMOS工艺的结合。目前生产的CHMOS电路已达到LSTTL的速度,传输延迟时间小于2ns,它的综合优势已在于TTL电路。因而,在单片机领域CMOS正在逐渐取代TTL电路。

低功耗化:单片机的功耗已从Ma级,甚至1uA以下;使用电压在3~6V之间,完全适应电池工作。低功耗化的效应不仅是功耗低,而且带来了产品的高可靠性、高抗干扰能力以及产品的便携化。

低电压化:几乎所有的单片机都有WAIT、STOP等省电运行方式。允许使用的电压范围越来越宽,一般在3~6V范围内工作。低电压供电的单片机电源下限已可达1~2V。目前0.8V供电的单片机已经问世。

低噪声与高可靠性:为提高单片机的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片厂家在单片机内部电路中都采用了新的技术措施。

- 3 -

重庆邮电大学本科毕业设计(论文)

大容量化:以往单片机内的ROM为1KB~4KB,RAM为64~128B。但在需要复杂控制的场合,该存储容量是不够的,必须进行外接扩充。为了适应这种领域的要求,须运用新的工艺,使片内存储器大容量化。目前,单片机内ROM最大可达64KB,RAM最大为2KB。

高性能化:主要是指进一步改进CPU的性能,加快指令运算的速度和提高系统控制的可靠性。这类单片机的运算速度比标准的单片机高出10倍以上。由于这类单片机有极高的指令速度,就可以用软件模拟其I/O功能,由此引入了虚拟外设的新概念。

小容量、低价格化:与上述相反,以4位、8位机为中心的小容量、低价格化也是发展动向之一。这类单片机的用途是把以往用数字逻辑集成电路组成的控制电路单片化,可广泛用于家电产品。

外围电路内装化:这也是单片机发展的主要方向。随着集成度的不断提高,有可能把众多的各种处围功能器件集成在片内。除了一般必须具有的CPU、ROM、RAM、定时器/计数器等以外,片内集成的部件还有模/数转换器、声音发生器、监视定时器、液晶显示驱动器、彩色电视机和录像机用的锁相电路等。

串行扩展技术:在很长一段时间里,通用型单片机通过三总线结构扩展外围器件成为单片机应用的主流结构。随着低价位OTP(One Time Programble)及各种类型片内程序存储器的发展,加之处围接口不断进入片内,推动了单片机“单片”应用结构的发展。特别是 IC、SPI等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化。

第二节 MCS-51单片机系统简介

一、单片机的基本特点

由于单片机的这种结构形式及它所采取的半导体工艺,使其具有很多显著的特点,因而在各个领域都得到了迅猛的发展。单片机主要有如下特点:

① 有优异的性能价格比;

② 集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力。另外,

- 4 -

重庆邮电大学本科毕业设计(论文)

其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作;

③ 控制功能强。为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。;

④ 低功耗、低电压,便于生产便携式的产品。;

⑤ 外部总线增加了IC(Inter-Integrated Circuit)及SPI(Serial Peripheral Interface)等串行总线方式,进一步缩小了体积,简化了结构;

⑥单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。[3]

二、单片机的组成

图1.1为单片机的典型功能结构框图。

由图可见,它通过内部总线把计算机的各主要部件连接为一体,其内部总线包括地址总线、数据总线和控制总线。

其中,地址总线的作用是在进行数据交换时提供地址,CPU通过它们将地址输出到存储器或I/O接口;/数据总线的作用是在CPU与存储器或I/O接口之间,或存储器与外设之间交换数据;控制总线包括CPU发出的控制信号线和外部送入CPU的应答信号线等。[4]

图1.1 MSC-51单片机功能结构框图

64K总线扩展控制器 可编程I/O 可编程全双工串行口 振荡器及时序 OSC 程序存储器4KB ROM 数据存储器256B 2个16位定时器/计数器 CPU - 5 -

重庆邮电大学本科毕业设计(论文)

第三节 本章小结

本章详细讲述了单片机的发展过程,介绍了MSC-51单片机的基本结构。一方面对本设计的意义作了阐释,令一方面也为后面的理论知识展开进行铺垫。

单片机的使用体现在我们生活中的方方面面,几乎很难找到哪个领域没有单片机的踪迹,认识它的历史和了解其未来的发展,更能拓展我们的视野和知识。可以说,单片机现在仍然处于成长阶段,但是它已经在不断促进整个世界前进的步伐,我们对于电子技术的研究,特别是微电子技术方向的学习,一定是需要与单片机密切联系的。

- 6 -

重庆邮电大学本科毕业设计(论文)

第二章 MCS-51单片机计算器总体方案

第一节 设计任务

按照任务书大纲和自己的理解,所设计的单片机计算器需满足以下要求: ① 扩展一个4*4的键盘,其中包括10个数字键,5个功能键以及1个清零键; ②完成基本的十进制的四则运算(即加、减、乘、除); ③使用使用keil C软件编写和调试程序; ④计算器可显示4位数字。

其中,系统划分为显示模块、键盘模块、处理程序三个模块。显示模块实现将CUNZHI中的值进行动态数码显示,包括:P0口送显示码,P2口为公共端扫描;键盘模块进行键盘扫描;处理程序模块实现计算器加减乘除运算。[5]

第二节 方案设计

一、主程序方案

①方案一将显示处理程序置于定时中断程序中实现其功能,主程序为键盘扫描程序。[6] ②方案二利用主程序为显示处理程序键盘扫描程序。取消定时中断的使用。

在方案比较中,方案一效率低,单片机的反应无法进行运行,方案二虽未能解决按键长按无显示的缺点,但其运算速度快。最终选定为方案二。

- 7 -

重庆邮电大学本科毕业设计(论文)

二、按键显示方案

因为计算器至少需要显示4位数字,开机运行时,只有数码管最低位显示为“0”,其余位全部不显示;当键盘第一次按下时,数码显示“D1”,第二次按下时,显示出“D1D2”,第三次按下时,显示“D1D2D3”。四个全显示完毕,再按下按键下时,输入的第五个数不接收。

可以对计算结果小于9999的两个无符号数进行+、-、*、/运算,并显示计算结果,如果输入的预计算的数超过9999,则运算时报错,在”D5”上显示“E”,以提示使用者输入错误,可按清零键清零,重新输入数据,运算过程中,如果运算的表达式是加、减、乘、除混合运算,需分步先按等号键,再继续进行运算。

三、设计难点

本设计的难点是键盘识别和数值显示,因为这里边涉及到键盘输入的数值在内部要转换成10进制运算,运算结果要转换成各个位的显示数字输出。

第三节 本章小结

本章对单片机计算器的设计进行了预先分析,为具体的操作和实现定下总纲,,简单的说明了设计上的规划和步骤。为以后的硬件部分和软件部分设计指明了方向。

初次接触一个需要由理论结合实际的设计,并将其具体实现,不是一件容易的事情。明确此次设计的目标要求,实施方法,重点难点,可以不至于难于入手。参考一些技术文献,对应自己的计划,各个环节分步研究,最终结合在一起就可达到要求。

- 8 -

重庆邮电大学本科毕业设计(论文)

第三章 MCS-51单片机计算器硬件设计

第一节 主要元件介绍与选择

一、电阻

通常分为三大类:固定电阻,可变电阻,特种电阻。该设计上电阻的选择主要为固定电阻。一般电阻上面都有不同的色环,国际上惯用\"色环标注法\"。

表3.1 测量的电阻数值

电阻 R1 R2 理论值 10K 4.7k 实际值 10.5K 4.65k

二、电容器

电容的基本单位为法拉,由两个金属极,中间夹有绝缘材料(介质)构成。由于绝缘材料的不同,所构成的电容器的种类也有所不同:按介质材料可分为:气体介质电容,液体介质电容,无机固体介质电容,有机固体介质电容电解电容。本设计主要选用的就是电解电容。 电容在电路中具有隔断直流电,通过交流电的作用,因此常用于级间耦合、滤波、去耦、旁路及信号调谐。[7]

表3.2 测量的电容数值

电容 C1 C5 C13 理论值 104pF 30 pF 100uF - 9 -

实际值 104.32pF 32.451pF 103.75uF 重庆邮电大学本科毕业设计(论文)

第二节 各硬件的功能与连接

一、 AT89S51单片机

1、AT89S51介绍

AT89S51是由近年来美国ATMEL公司生产的一种低功耗、高性能CMOS8位微控制器,总共具有8K的系统可编程Flash存储器。与工业80C51 产品指令和引脚完全兼容。

在单芯片上,AT89S51拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S51为众多嵌入式控制应用系统提供高灵活、有效的解决方案。

AT89S51具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个5向量两级中断结构,全双工串行口,为片内晶振及时钟电路,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。与AT89C51相比,二者都是都是8051的内核。但是AT89S51比AT89C51增加了一个16位的计数器T2,相应的内存也128字节提高到了256字节,ROM的容量从2K提高到了4K,可以装下更大的程序,另外AT89S51比AT89C51增加了ISP功能,即在线可编程功能。[8]

2、AT89S51单片机的各主要引脚功能

VCC:电源 GND:地

P0 口:P0口是一组8位漏极开路型双向I/0口,也即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

P1 口:P1口是一个具有内部上拉电阻的8 位双向I/O口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。Flash

- 10 -

重庆邮电大学本科毕业设计(论文)

编程和程序校验期间,Pl接收低8位地址。

P2 口:基本与P1口相同。但是在Flash编程或校验时,P2接收高位地址和其它控制信号。

图3.1 AT89S51单片机引脚图

P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能。

RST:复位输入。晶振工作时,RST脚持续2个机器周期,高电平将使单片机复位。 ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。

PSEN:外部程序存储器选通信号。当AT89S51从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。

EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。 在flash编程期间,EA也接收12伏VPP电压。

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。

- 11 -

重庆邮电大学本科毕业设计(论文)

XTAL2:振荡器反相放大器的输出端。[9]

二、七段数码管

1、数码管使用条件

①段及小数点上加限流电阻

②使用电压:段,根据发光颜色决定;小数点:根据发光颜色决定。

③使用电流:静态:总电流 80mA(每段 10mA);动态:平均电流 4-5mA,峰值电流 100mA

图3.2 7段数码管结构图

2、连接方式

LED显示器由七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器。为

了显示数字或符号,要为LED显示器提供代码,即字形代码。七段发光二极管,再加上一个小数点位,共计8段。本设计采用两个4位七段数码管连接AT89S51。 其中

采用共阴极接法,使用时,公共阴极接地,在阳极端输入高电平,发光二极管就导通发光。

五、按键

键盘可分为两类:编码键盘和非编码键盘。

- 12 -

重庆邮电大学本科毕业设计(论文)

图3.3 4*4矩阵式键盘结构

编码键盘是较多按键(20个以上)和专用驱动芯片的组合,当按下某个按键时,它能够处理按键抖动、连击等问题,直接输出按键的编码,无需系统软件干预。通用计算机使用的标准键盘就是编码键盘。

但大多数智能仪器和电子产品的按键数目都不太多(20个以内),为了降低成本和简化电路,我们采用非编码键盘。

非编码键盘的接口电路由设计者根据需要自行决定,按键信息通过接口软件来获取。 本设计需要的是16个按键,故选择用非编码键盘,为了减少所占用的端口,由P1口采用4*4矩阵式键盘外接。

一、矩阵式键盘设定

按照预定的设定方案,本次设计的计算器将通过按键输入数字和运算符,利用单片机不断扫描键盘。

其中数字键0~9 共十个,接下来依次是加号键(+)、减号键(-)、乘号键(*)、除号键(/)、等于号(=)、清除键。操作设备是四行四列共16键的简单键盘。第一行从左至右分别为F(清除键)、E(等号键)、D(除号键)、C(乘号键),第二行从左至右分别为B(减号键)、A(加号键)、9、8,第三行分别为7、6、5、4,第四行从左至右分别为3、2、1、0,“清除键”表示程序初始化,为下次输入准备。

- 13 -

重庆邮电大学本科毕业设计(论文)

三、复位、时钟电路设计

XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。当使用内部振荡电路时,XTAL1.XTAL2引脚外接石英晶体和微调电容,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。

MCS-51单片机内部的振荡电路是一个高增益反相放大器,引线 XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。

图3-4 晶振连接的内部、外部方式图

任何单片机在工作之前都要进行复位,以便CPU以及其他功能部件都处于一个确定的初始化状态,并从这个状态开始工作,也就是程序开始执行之前,单片机做好准备工作。如何进行复位呢?只用在单片机的RST引脚上保持两个机器周期(24个时钟周期)的高电平即可对单片机实现复位操作,且复位操作不会对内部RAM有所影响。

- 14 -

重庆邮电大学本科毕业设计(论文)

图3.5 常用复位电路图

第三节 本章小结

本章详细介绍了MCS-51单片机计算器设计的硬件元件选择以及各类主要硬件的功能结构。对单片机计算器的组成和工作原理进行了分析。更为后面的 难点软件设计部分做好了充分的准备。

综合来看,一个单片机计算器的组成并不复杂,但是如何将所有部件连接在一起并正常工作,这是在设计过程要一直不断思考的问题。

第四章 MCS-51单片机计算器软件设计

- 15 -

重庆邮电大学本科毕业设计(论文)

第一节 软件设定

一、程序规划

该计算器的程序主要包括以下功能模块: ①主模块,为系统的初始化。

②显示与读键模块,分为显示子程序,判键程序段、运算操作子程序部分;

图4.1 软件设计流程图

主程序主要是用来进行初始化的,调用其他子程序,清空各个标志位,清空缓存区,读取键码,判断功能,在LED上作出回应。[10]

二、程序设定

①数字送显示程序设计

简易计算器所显示的数值最大位为四位。要显示数值,先判断数值大小和位数,如果是

- 16 -

重庆邮电大学本科毕业设计(论文)

输入超过四位或大于9999,将不显示数字。需重新输入数字,再次计算。该程序输入同时输入四个定点数,设定运算符号有:A为加,B为减,C为乘,D为除,E等于,输出计算结果。数据输入采用规范化输入,即输入〈=3个数才算完成一个运算数的输入,两个运算数之间输入运算符A、B、C或者D,输入完成按E显示计算结果。

②运算程序的设计

首先初始化参数,送LED低位显示“0”,高位不显示。然后扫描键盘看是否有键输入,若有,读取键码。判断键码是数字键、清零键还是功能键,是数值键则送LED显示并保存数值,是清零键则做清零处理,是功能键则又判断是“=”还是运算键,若是“=”则计算最后结果并送LED显示,若是运算键则保存相对运算程序的首地址。F为清零重启,任何时候按下F将重新开始。[11]

三、数码管显示程序设计

本设计的,显示程序是这样设计的,因为考虑到显示程序的通用性,在接通电源后不进

行输入时显示为0,输入时显示输入的数字或运算结果,而且要使8个数码管同时显示不同的数字,选用动态显示应是最佳的。

开始 对数码管进行初始化,从按键程序和运算程序中接收数据,通过显示程序处理 数码管显示 否 判断显示是否完毕 是 返回 - 17 -

重庆邮电大学本科毕业设计(论文)

图4.2 显示扫描程序流程图

数码管用到的数字0~9的共阴极字形代码如下表:

表4.1 数码管共阴极字形代码表

显示字型 0 1 2 3 4 5 6 7 8 9

g 0 0 1 1 1 1 1 0 1 1 f 1 0 0 0 1 1 1 0 1 1 e 1 0 1 0 0 0 1 0 1 0 d 1 0 1 1 0 1 1 0 1 1 c 1 1 0 1 1 1 1 1 1 1 b 1 1 1 1 1 0 0 1 1 1 a 1 0 1 1 0 1 1 1 1 1 段码 3fh 06h 5bh 4fh 66h 6dh 7dh 07h 7fh 6fh LED用于显示十进制数字,要将0~9的数字用7段显示,必须将数字转换为LED对应七段码的信息,比如,要显示“0”,就是让a、b、c、d、e和f段发光,显示“1”,让b和c段发光,如表所示。然后根据LED是共阴极还是共阳极接法确定LED各输入端应接逻辑1还是逻辑0,本设计选用的是共阴接法,要显示“0” 时,a、b、c、d、e和f段就要输入逻辑1,即其段码为3F, 将待显示内容“翻译”为LED段码的过程,可以由软件查表方法实现译码。

[12]

四、键盘程序设计

确定矩阵式键盘上何键被按下,用“行扫描法”。 行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法。

判断键盘中有无键按下:将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交的4个按键之中。若所有列线均为高电平,则键盘中无键按下。

判断闭合键所在的位置: 在确认有键按下后,即可进入确定具体闭合键的过程。其方法

- 18 -

重庆邮电大学本科毕业设计(论文)

是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉按键就是闭合的按键。把每个键都分成水平和垂直的两端接入,比如说扫描码是从垂直的入,那就代表那一行所接收到的扫描码是同一个位,而读入扫描码的则是水平,扫描的动作是先输入扫描码,再去读取输入的值,经过比对之后就可知道是哪个键被按下。

- 19 -

重庆邮电大学本科毕业设计(论文)

开始 扫描第一行 是否有键按下 Y 判断键值 N 数字键放入显示缓冲区 运算符修改标志位 扫描第二行 调用显示程序显示数字 进行运算 是否有键按下 运算结果放入显示缓冲区 N 扫描第三行 是否有键按下 N 扫描第四行 是否有键按下 N

图4.3 按键扫描程序流程图

- 20 -

重庆邮电大学本科毕业设计(论文)

第二节 程序总编

一、主要变量

本设计的程序代码主要设置变量如下表

表4.2 程序设计主要变量表

SIGN FLAG WRONG COUNT SIZE SIGNCOUNT XIAOSHU DIVKEY CUNZHI 存运算符(+、-、*、/) 用第几个数组,(出现非运算符前为0,出现运算符后为1) 输入多于4个时错误标志位(0对、1错) 输入0~9数字的个数 减数大于被凑数时为1 输入运算符的个数 存一位小数的值 运算除法时置为1 全局变量 二、程序模块

主要的程序模块分为:

①显示程序:实现将全局变量CUNZHI中的值进行动态数码显示。入口参数无,所用端口功能为P1口送显示码,P2口进行公共端扫描,返回值无;

②处理程序:用来实现计算器的加减乘除运算。全局变量为key、CUNZHI、SHU[0]、SHU[1]、FLAG、SIGN;

③键盘扫描程序:进行键盘扫描,判断是否有键按下,全局变量为k,局部变量为i,j; 调用函数为CHULI(key);

④主程序:实现计算器加减乘除运算并显示,全局变量为CUNZHI、FLAG、SIGN,调用函数:disp()、JIANPAN(),返回值无。 [13] (具体源程序参见附录四)

- 21 -

重庆邮电大学本科毕业设计(论文)

第三节 本章小结

本章详细说明了MSC-51单片机计算器的软件设计过程,阐明了该计算器软件方面的编写流程及各个设备的程序思路。同时简单描述了源程序的变量设置以及主程序和相关子程序的功能。

本章是整个设计中的重要环节,是计算器得于实现的中心内容。

- 22 -

重庆邮电大学本科毕业设计(论文)

第五章 实验环境与调试

第一节

软件实验方法

一、 编写程序

1、软件工具

单片机开发的时候除必要的硬件外,同样离不开软件的编写。而我们写的源程序要变为 CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,但是目前已使用手工汇编的方法已经极少使用了。机器汇编是通过汇编软件将源程序变为机器码,对于 MCS-51单片机的程序汇编非常实用。

在软件设计部分我们已经对程序的实现进行了初步编写,但是能否正常运行我们还尚未知道,需要利用相关软件进行调试对错误的地方进行修改,并且将编写的程序转换为机器码。

C51工具包的整体结构中,其中uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。[14]

2、程序编译

我们使用uVision 的文本编辑器编写源文件,可以是汇编文件(程序扩展名为*.ASM),也可以使用C语言文件(程序扩展名为*.C),并将该文件添加到项目中去。一个项目文件可 以包含多个文件,除了源程序文件外,还可以是库文件、头文件或文本说明文件。这里我们使用的是C语言进行编写。

- 23 -

重庆邮电大学本科毕业设计(论文)

图 5.1 KEIL UVISION4程序编写环境

如图5.1所示,当我们打开Keil 软件以后使用菜单“File->New”或者点击工具栏的新建

文件按钮,即可在项目窗口的右侧打开一个新的文本编缉窗口

3、程序

二、实验手段及环境

三、Keil C51单片机软件应用

- 24 -

重庆邮电大学本科毕业设计(论文)

③通过uVision 2 的相关选择项,配置编译环境、编译过程中的信息将出现在输出窗口中的Build页中,如果源程序中有语法错误,会有错误报告出现,双击该行,可以定位到出错的位置,对源程序编写之后,会生成绝对目标代码和可选的HEX文件,如果出现编译连接错误则可以返回修改源文件中的错误后重构整个项目。。

④对没有语法错误的程序进行仿真调试。

⑤PL-2303 Driver Installer,这是一个可以将电脑的USB接口转为可接受串口数据的驱动程序。因为实验板上有PL-2303芯片,调试成功后就可以直接将 HEX文件写入到单片机应用系统的ROM中。

第二节 实际焊接及其注意事项

拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路;元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同;完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其逻辑关系。将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。

新烙铁使用前,应用细砂纸将烙铁头打光亮,通电烧热,蘸上松香后用烙铁头刃面接触焊锡丝,使烙铁头上均匀地镀上一层锡。这样做,可以便于焊接和防止烙铁头表面氧化。旧的烙铁头如严重氧化而发黑,可用钢挫挫去表层氧化物,使其露出金属光泽后,重新镀锡,才能使用。 电烙铁要用220V交流电源,使用时要特别注意安全。应认真做到以下几点:

① 电烙铁插头最好使用三极插头。要使外壳妥善接地。使用前,应认真检查电源插头、电源线有无损坏。并检查烙铁头是否松动。

② 焊接过程中,烙铁不能到处乱放。不焊时,应放在烙铁架上。注意电源线不可搭在烙铁头上,以防烫坏绝缘层而发生事故。使用结束后,应及时切断电源,拔下电源插头。

③焊接电路板时,一定要控制好时胡间太长,电路板将被烧焦,或造成铜箔脱落。从电路板上拆卸元件时,可将电烙铁头贴在焊点上,待焊点上的锡熔化后,将元件拔出。焊接时,要保证每个焊点焊接牢固、接触良好。要保证焊接质量。[15]

- 25 -

重庆邮电大学本科毕业设计(论文)

第三节 本章小结

本章简单说明了实际动手焊接单片机的实验方法,当我们编写出程序时,经过keil调试后检查无误,通过USB接口转串口驱动程序,与电脑连接后,再将程序烧入AT89S51芯片。

经过实验板调试可用,本次设计就基本完成了。

- 26 -

重庆邮电大学本科毕业设计(论文)

结 论

毕业设计是一个通过不断思考、发问、自己主动学习、提高的过程。这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大的锻炼。一方面通过MSC-51单片机等一些器件的设计让自己把以前的许多的知识在一起进行磨合,使以前学的很多相关课程都得到了运用;另一方面在用烙铁实际焊接单片机时,这个过程中让我获得了在电路设计中亲自动手的实践经验,可谓极其珍贵。

通过努力,我总算顺利完成了基于MCS-51单片机的计算器设计,达到了预期的目标。但因为时间仓促,一些不足还是再所难免,如电路板的焊接失误导致实验器材损坏,程序的设计暂时只能完成简单的四则运算,这些都还值得我去思考和改善。

但我相信,这次毕业设计的经历,我更多的是掌握了一种学习的方法和实践研究的精神,这些才是对于我最大的收获,而且还增强了自身对未知问题以及对知识的深化认识的能力。同时,仅仅是完成了设计还是不可以自我满足的,我们要认真的思考设计过程中遇到的问题,多查资料,将理论与实际相结合思考,常总结错误的教训,才能更好的走向成功。

以后无论是对此次的设计进行优化,或是重新进行新的设计,我都有了一种自信,只要做事尽心尽力,就一定能够得到回报。

- 27 -

重庆邮电大学本科毕业设计(论文)

致 谢

通到2个月的努力,毕业设计终于完成了,我感觉这段日子过得非常充实,在这个过程中我学到了很多。首先我要感谢我的导师,王文明老师在我完成论文的过程中,给予了我很大的帮助。

在我接到课题的时候,这是一次考验。怎么才能找到课堂所学与实际应用的最佳结合点,怎样让自己的成功地完成它?在我迷茫的时候王老师从我的特长和专业分析,引导我从基础的方向入手学习。

王老师学识渊博,治学严谨。为我规划了合理的设计进度,经常特意抽出时间来辅导我们,多次指出了我设计的失误让我改正。

正是因为王老师的认真教诲,我才能有今天的收获,同时领会到毕业设计的意义,学到了只靠书本掌握不到的知识。

同时我还要感谢许多关心帮助和教育我的老师们,你们的照顾与指导让我难忘,我唯有以努力学习和工作来报答他们无私的关怀。

还有那些与我一起探讨问题的同学,你们陪我走过了这一段充实的日子。谢谢大家!

- 28 -

重庆邮电大学本科毕业设计(论文)

参考文献

[1] 张毅刚.单片机原理及应用[M].北京:高等教育出版社,2003.

[2] 闫娟.MSC-51单片机汇编语言程序IDE设计与实现[D] .河南师范大学,2007. [3] 百度百科.单片机[OL].http://baike.baidu.com/view/1012.html?wtp=tt. [4] Structure and function of the MCS-51 series[OL] . http://wenku.baidu.com/view/bf7d83114431b90d6c85c762.html.

[5] 张迎新等.单片机初级教程:单片机基础[M] .北京:北京航空航天大学出版社,2006. [6] 单片机从入门到精通[OL] .

http://wenku.baidu.com/view/95fabc0ef12d2af90242e600.html.

[7] 关德新,冯文全等.单片机外围器件实用手册[M].北京:北京航空航天大学出版社,1998.

[8] AT89S51 8-bit Microcontroller with 8K Bytes In-System Programmable Flash.ATMEL Corporation,2001. [9]

96系列单片机仿真器研究与设计

[10] Kirk Zurell.C Programming for Embedded systems[D].CMP Media,Inc.2000. [11] 徐金增.单片机编程仿真实验系统的设计与实现[D].山东师范大学,2009.

[12] 刘焕平.MCS-51系列单片机实验板[J].石家庄职业技术学院学报,2002.14(4) :40-41. [13] Mautice Wilkes.Progress in Computers[D] .Prestige Lecture delivered to IEE,Cambridge,on 5 February 2004.

[14]张子红.96系列单片机仿真器研究与设计[D] .哈尔滨:哈尔滨工程大学,2006. [15]赖麟文.8051单片机C语言开发环境事务与设计[M].北京:科学出版社,2002.

- 29 -

重庆邮电大学本科毕业设计(论文)

附 录

一、英文原文:

Handoff in Cellular Systems

Nishith D. Tripathi, Nortel

Jeffrey H. Reed and Hugh F. VanLandingham

MPRG, Virginia Tech

Cellular System Deployment Scenarios

The radio propagation environment and related handoff challenges are different in different cellular structures. A handoff algorithm with fixed parameters cannot perform well in different system environments. Specific characteristics of the communication systems should be taken into account while designing handoff algorithms. Several basic cellular structures (e.g., macrocells, microcells, and overlay systems) and special architectures (e.g., underlays, multichannel bandwidth systems,and evolutionary architectures) are described next. Integrated cordless and cellular systems, integrated cellular systems, and integrated terrestrial and satellite systems are also described.

Macrocells

Macrocell radii are in several kilometers. Due to the low cellcrossing rate, centralized handoff is possible despite the large number of MSs the MSC has to manage. The signal quality in the uplink and downlink is approximately the same. The transition region between the BSs is large; handoff schemes should allow some delay to avoid flip-flopping. However, the delay should be short enough to preserve the signal quality because the interference increases as the MS penetrates the new cell. This cell penetration is called cell dragging. Macrocells have relatively gentle path loss characteristics . The averaging interval (i.e., the time period used to average the signal strength

- 30 -

重庆邮电大学本科毕业设计(论文)

variations) should be long enough to get rid of fading

fluctuations. First- and second-generation cellular systems provide wide-area coverage even in cities using macrocells .Typically, a BS transceiver in a macrocell transmits high output power with the antenna mounted several meters high on a tower to illuminate a large area.

Microcells

Some capacity improvement techniques (e.g., larger bandwidths, improved methods for speech coding, channel coding,and modulation) will not be sufficient to satisfy the required service demand. The use of microcells is considered the single most effective means of increasing the capacity of cellular systems.Microcells increase capacity, but radio resource management becomes more difficult. Microcells can be classified as one-, two-, or threedimensional,depending on whether they are along a road or a highway, covering an area such as a number of adjacent roads,or located in multilevel buildings, respectively . Microcells can be classified as hot spots (service areas with a higher traffic density or areas that are covered poorly), downtown clustered microcells (contiguous areas serving pedestrians and mobiles), and in-building 3-D cells (serving office buildings and pedestrians).Typically, a BS transceiver in a microcell transmits low output power with the antenna mounted at lamppost level (approximately 5 m above ground).The MS also transmits low power, which leads to longer battery life. Since BS antennas have lower heights compared to the surrounding buildings, RF signals propagate mostly along the streets.The antenna may cover 100–200 m in each street direction, serving a few city blocks. This propagation environment has low time dispersion, which allows high data rates.

Microcells are more sensitive to the traffic and interference than macrocells due to short-term variations (e.g., traffic and interference

variations),medium/long-term alterations (e.g., new buildings), and incremental growth of the radio network (e.g., new BSs) . The number of handoffs per cell is increased by an order of magnitude, and the time available to make a handoff is decreased. Using an umbrella cell is one way to reduce the handoff rate. Due to the increase in the microcell boundary crossings and expected high traffic loads, a higher degree of decentralization of the handoff process becomes necessary.

Microcells encounter a propagation phenomenon called the corner effect. The corner effect is characterized by a sudden large drop (e.g., 20–30 dB) in signal strength (e.g., at 10–20 m distance) when a mobile turns around a corner.

- 31 -

重庆邮电大学本科毕业设计(论文)

The corner effect is due to the loss of the line of sight (LOS) component from the serving BS to the MS. The corner effect demands a faster handoff and can change the signal quality very fast. The corner effect is hard to predict. A long measurement averaging interval is not desirable due to the corner effect. Moving obstacles can temporarily hinder the path between a BS and an MS,which resembles the corner effect. Reference studies the properties of symmetrical cell plans in a Manhattan-type environment. Cell plans affect signal-to-interference ratio (SIR) performance in the uplink and downlink significantly. Symmetrical cell plans have four nearest co-channel BSs located at the same distance. Such cell plans can be classified into half-square (HS), full-square (FS), and rectangular (R) cell plans. These cell plans are described next.

Half-Square Cell Plan — This cell planplaces BSs with omnidirectional antennas at each intersection, and each BS covers half a block in all four directions. This cell plan avoids the street corner effect and provides the highest capacity. This cell plan has only LOS handoffs. Figure 2 shows an example of a half-square cell plan in a microcellular system.

Full-Square Cell Plan — There is a BSwith an omnidirectional antenna located at every other intersection, and each BS coversa block in all four directions. It is possible for an MS to experience the street corner effect for this cell plan. The FS cell plan can have LOS or NLOS handoffs. Figure 3 shows an example of a fullsquare cell plan in a microcellular system.

Rectangular Cell Plan — Each BS covers a fraction of either a horizontal or vertical street with the BS located in the middle of the cell. This cell plan can easily be adapted to market penetration. Fewer BSs with high transmit power can be used initially. As user density increases, new BSs can be added with reduced transmit power from appropriate BSs.The street corner effect is possible for this cell plan. The R cell plan can have LOS or NLOS handoffs. Figure 4 shows an example of a rectangular cell plan in a microcellular system. Macrocell/Microcell Overlays Congestion of certain microcells, the lack of service of microcells in some areas, and high speed of some users are some reasons for higher handoff rates and signaling load for microcells. To alleviate some of these problems, a mixed-cell architecture (called an overlay/underlay system) consisting of largesize macrocells (called umbrella cells or overlay cells) and small-size microcells(called underlay cells) can be used. Figure 5 illustrates an overlay system.

The macrocell/microcell overlay architecture provides a balance between maximizing the number of users per unit area and minimizing the network control load associated with handoff. Macrocells provide wide-area coverage beyond microcell service areas and ensure better intercell

- 32 -

重庆邮电大学本科毕业设计(论文)

handoff.Microcells provide capacity due to greater frequency reuse and cover areas with high traffic density (called hot spots). Examples of hot spots include an airport,a railway station, or a parking lot. In less congested areas (e.g., areas beyond a city center or outside the main streets of a city) traffic demand is not very high, and macrocells can provide adequate coverage in such areas. Macrocells also serve highspeed MSs and the areas not covered by microcells (e.g., due

to lack of channels or the MS being out of the microcell range). Also, after the microcellular system is used to its fullest extent, the overflow traffic can be routed to macrocells.One of the important issues for the overlay/underlay system is the determination of optimum distribution of channels in the macrocells and microcells.

Reference evaluates four approaches to sharing the available spectrum between the two tiers. Approach 1 uses TDMA for microcell and CDMA for macrocell. Approach 2 uses CDMA for microcell and TDMA for macrocell. Approach 3 uses TDMA in both tiers, while approach 4 uses orthogonal frequency channels in both tiers.The overlay/underlay system has several advantages over a pure microcell system:

• The BSs are required only in high traffic load areas. Since it is not necessary to cover the whole service area with microcells,infrastructure costs are saved.

• The number of handoffs in an overlay system is much less than in a microcell system because fast-moving vehicles can be connected to the overlay macrocell.

• Both calling from an MS and location registration can easily be done through the microcell system.There are several classes of umbrella cells. In one class, orthogonal channels are distributed between microcells and macrocells.In another class, microcells use channels that are temporarily unused by macrocells. In yet another class,microcells reuse the channels already assigned to macrocells and use slightly higher transmit power levels to counteract the interference from the macrocells.

Within the overlay/underlay system environment, four types of handovers need to be managed [19]: microcell to microcell, microcell to macrocell, macrocell to macrocell, and macrocell to microcell.Reference describes combined cell splitting and overlaying. Reuse of channels in the two cells is done by establishing an overlaid small cell served by the same cell site as the large cell. Small cells reuse the split cell’s channels because of the large distance between the split cell and the small inner cell, while the large cell cannot reuse these channels. Overlaid cells are approximately 50 percent more spectrally efficient than segmenting (the process of distributing the channels

- 33 -

重庆邮电大学本科毕业设计(论文)

among the small- and largesize cells to avoid interference).A practical approach for implementation of a microcell system overlaid with an existing macrocell system is proposed in . This reference introduces channel segregation (a self-organized dynamic channel assignment)and automatic transmit power control to obviate the need to design channel assignment and transmit power control for the microcell system. The available channels are reused automatically between microcells and macrocells. A slight increase of transmit power for the microcell system compensates for the macrocell-to-microcell interference.

Simulation results indicate that the local traffic is accommodated by the microcells laid under macrocells without any significant channel management effort. The methodology of the Global System for Mobile Communications (GSM)-based system is extended to the macrocell/microcell overlay system in. The use of random frequency hopping and adaptive frequency planning is recommended,and different issues related to handoff and frequency planning for an overlay system are discussed. Four strategies are designed to determine a suitable cell for a user for an overlay system. Two strategies are based on the dwell time (the time for which a call can be maintained in a cell without handoff), and the other two strategies are based on user speed estimation. A speed estimation technique based on dwell times is also proposed.A CDMA cellular system can provide full connectivity between the microcells and the overlaying macrocells without capacity degradation. Reference analyzes several factors that determine the cell size, the soft handoff (SHO) zone, and the capacity of the cell clusters. Several techniques for overlay-underlay cell clustering are also outlined. Application of CDMA to microcell/macrocell overlay have the following major advantages:

• A heterogeneous environment can be illuminated uniformly by using a distributed antenna (with a series of radiators with different propagation delays) while still maintaining a high-quality signal.

• SHO obviates the need for complex frequency planning.Reference studies the feasibility of a CDMA overlay that can share the 1850–1990 MHz personal communications services (PCS) band with existing microwave signals (transmitted by utility companies and state agencies). The results of several field tests demonstrate the application of such an overlay for the PCS band. The issue of use of a CDMA microcell underlay for an existing analog macrocell is the focus of. It is shown that high capacity can be achieved in a microcell at the expense of a slight degradation in macrocell performance.Reference finds that transmit and receive notch filters should be used at the microcell

- 34 -

重庆邮电大学本科毕业设计(论文)

BSs. It shows that key parameters for such an overlay are the powers of the CDMA BS and MS transmitters relative to the macrocell BSs and the MSs served by the macrocells. Reference [25] studies spectrum management in an overlay system. A new cell selection method is proposed, which uses the history of microcell sojourn times. A procedure to determine an optimum velocity threshold for the proposed method is also outlined. A systematic approach to optimal frequency spectrum management is described.

Special Architectures There are several special cellular architectures that try to improve spectral efficiency without a large increase in infrastructure costs. Some of

these structures, discussed here, include an underlay/overlay system (which is different from the overlay/underlay system described earlier) and a multichannel bandwidth system. Many cellular systems are expected to evolve from a macrocellular system to an overlay/underlay system. A study that focuses on such evolution is described in [26].

A Multiple-Channel-Bandwidth System — Multiple channel bandwidths can be used within a cell to improve spectral efficiency.In a multiple-channel-bandwidth system (MCBS), a cell has two or three ring-shaped regions with different bandwidth channels [28]. Figure 7 shows an MCBS. Assume that 30 kHz is the normal bandwidth for a signal.Now, for a three-ring MCBS, 30 kHz channels can be used in the outermost ring, 15 kHz channels in the middle ring, and 7.5 kHz channels in the innermost ring. The areas of these rings can be determined based on the expected traffic conditions.

Thus, instead of using 30 kHz channels throughout the cell, different bandwidth channels (e.g., 15 kHz and 7.5 kHz) can be used to increase the number of channels in a cell. The MCBS uses the fact that a wide-bandwidth channel requires a lower carrier-to-interference ratio (C/I) than a narrow-bandwidth channel for the same voice quality. For example, C/I requirements for 30 kHz, 15 kHz, and 7.5 kHz channel bandwidths are 18 dB, 24 dB, and 30 dB, respectively, based on subjective voice quality tests [28]. If the transmit power at a cell cite is the same for all the bandwidths, a wide channel can serve a large cell while a narrow channel can serve a relatively small cell. Moreover, since a wide channel can tolerate a higher level of co-channel interference (CCI), it can afford a smaller D/R ratio (the ratio of co-channel distance to cell radius). Thus, in the MCBS more channels become available due to multiple-bandwidth signals, and frequency can be reused more closely in a given service region due to different C/I requirements.

- 35 -

重庆邮电大学本科毕业设计(论文)

Integrated Wireless Systems

Integrated wireless systems are exemplified by integrated cordless and cellular systems, integrated cellular systems, and integrated terrestrial and satellite systems. Such integrated systems combine the features of individual wireless systems to achieve the goals of improved mobility and low cost.

Integrated Terrestrial Systems — Terrestrial intersystem handoff may be between two cellular systems or between a cellular system and a cordless telephone system. Examples of systems that need intersystem handoffs include GSM–Digital European Cordless Telephone (DECT), CDMA in macrocells, and TDMA in microcells. When a call initiated in a cellular system controlled by an MSC enters a system controlled by another MSC, intersystem handoff is required to continue the call [29]. In this case one MSC makes a handoff request to another MSC to save the call. The MSCs need to have software for intersystem handoff if intersystem handoff is to be implemented. Compatibility between the concerned MSCs needs to be considered, too.There are several possible outcomes of an intersystem handoff [29]:

• A long-distance call becomes a local call when an MS becomes a roamer.

• A long-distance call becomes a local call when a roamer becomes a home mobile unit. • A local call becomes a long distance call when a home mobile unit becomes a roamer. • A local call becomes a long-distance call when a roamer becomes a home mobile unit. There is a growing trend toward service portability across dissimilar systems such as GSM and DECT [30]. For example,it is nice to have intersystem handoff between cordless and cellular coverage. Cost-effective handoff algorithms for such scenarios represent a significant research area. This article outlines different approaches to achieving intersystem handoff. Simulation results are presented for handoff between GSM and DECT/Wide Access Communications System (WACS). The paper shows that a minor adjustment to the DECT specification can greatly simplify the implementation of an MS capable of intersystem handoff between GSM and DECT.

Integrated Terrestrial and Satellite Systems — In an integrated cellular/satellite system, the advantages of satellites and cellular systems can be combined. Satellites can provide widearea coverage, completion of coverage, immediate service, and additional capacity (by handling overflow traffic). A cellular system can provide a high-capacity economical system. Some of the issues involved in an integrated system are discussed in [31]. In particular, the procedures of GSM are examined for their application to the integrated systems.The future public land mobile

- 36 -

重庆邮电大学本科毕业设计(论文)

telecommunication system (FPLMTS) will provide a personal telephone system that enables a person with a handheld terminal to reach anywhere in the world [32]. The FPLMTS will include low Earth orbit (LEO) or geostationary Earth orbit (GEO) satellites as well as terrestrial cellular systems. When an MS is inside the coverage area of a terrestrial cellular system, the BS will act as a relay station and provide a link between the MS and the satellite.When an MS is outside the terrestrial system coverage area, it will have a direct communication link with the satellite.Different issues such as system architecture, call handling, performance analysis of the access, and transmission protocols are discussed in [32]. The two handoff scenarios in an integrated system are described below.

Handoff from the Land Mobile Satellite System to the Terrestrial

System — While operating, the MS monitors the satellite link and evaluates the link performance. The received signal strengths (RSSs) are averaged (e.g., over a 30 s time period) to minimize signal strength variations. If the RSS falls below a certain threshold N consecutive times (e.g., N = 3), the MS begins measuring RSS from the terrestrial cellular system.If the terrestrial signals are strong enough, handoff is made to the terrestrial system, provided that the terrestrial system can serve the MS.

Handoff from the Terrestrial System to the Land Mobile Satellite System — When an MS is getting service from the terrestrial system, the BS sends an acknowledge request (called page) at predefined intervals to ensure that the MS is still inside the coverage area. If an acknowledge request signal from the MS (called page response) is not received at the BS for N consecutive times, it is handed off to the land mobile satellite system (LMSS).Reference [33] focuses on personal communication systems with hierarchical overlays that incorporate terrestrial and satellite systems. The lowest level in the hierarchy is formed by microcells. Macrocells overlay microcells and form the middle level in the hierarchy. Satellite beams overlay macrocells and constitute the topmost hierarchy level. Two types of subscribers are considered, satellite-only and dual cellular/satellite. Call attempts from satellite-only subscribers are served by satellite systems, while call attempts from dual subscribers are first directed to the serving terrestrial systems with the satellites taking care of the overflow traffic. An analytical model for teletraffic performance is developed, and performance measures such as traffic distribution, blocking probability, and forced termination probability are evaluated for low-speed and high-speed users.

- 37 -

重庆邮电大学本科毕业设计(论文)

Handoff Evaluation Mechanisms

Three basic mechanisms used to evaluate the performance of handoff algorithms include the analytical, simulation, and emulation approaches. These mechanisms are described here. The Analytical Approach This approach can quickly give a preliminary idea about the performance of some handoff algorithms for simplified handoff scenarios. This approach is valid only under specified constraints (e.g., assumptions about the RSS profiles). Actual handoff procedures are quite complicated and are not memoryless.This makes the analytical approach less realistic. For real-world situations, this approach is complex and mathematically intractable. Some of the analytical approaches appearing in the literature are briefly touched on below.

- 38 -

重庆邮电大学本科毕业设计(论文)

二、英文翻译:

蜂窝系统切换技术

蜂窝系统部署方案

其无线电传播环境和相关切换的难度是在于针对不同的单元结构。在不同的系统环境中,固定参数切换算法不能发挥优势,。而通信系统的具体特点,应考虑而设计的切换算法是:几个基本的单元结构(如宏蜂窝,微单元,并覆盖系统)及(如:特殊结构,多通道带宽系统和演化架构)是描述将来。集成的无线和蜂窝系统,蜂窝系统集成,综合地面卫星系统也作了相关说明。 宏单元

宏的定义是达数公里半径。由于低单元传输率,集中式切换是可能的,尽管大量的各成员国已进行了海安管理。但是在上行和下行信号质量大约是相同的。考虑基地台之间的过渡区,大切换计划应允许一些延迟,以避免信号不稳定。然而,延误应足够短,以保持信号的质量,应对新的穿透移动台单元的干扰增加。这被称为的“单元拖动”。宏单元有相对平缓的路径损耗特性。在平均间隔(即使用一段时间的平均信号强度变化)应得到足够长的波动减少衰退。第一代和第二代蜂窝系统,即在城市大面积的报道。通常,在收发器宏单元传输与高输出功率的天线安装在塔高数米,覆盖大片区域。 微单元

某些技术的提高(例如,更大的带宽,编码,改进方法,语音信道编码和调制)将不足以满足需要的服务需求。无线资源管理目前变得更加困难,因此微单元增加容量的能力被认为是增加单元系统的一个最有效的手段。微单元可分为一,二,或了三维,取决于他们是否沿着道路或公路这些区域进行覆盖,如相邻道路,或在多层建筑物内分别编号。微单元可分为焦点(与通信密度较高或覆盖不足地区服务的地区),市中心聚集微单元(行人和手机间的相邻地区服务),并在建设3 – D单元(在职办公大楼和行人)。

- 39 -

重庆邮电大学本科毕业设计(论文)

通常,在一个微蜂窝系统收发天线传输与低输出功率在路灯水平(大约离地面5米)。安装的移动台转送保持低功耗,从而延长电池寿命。使天线具有比周围的建筑物更低的高度,射频信号的天线大多集中在街区.信号发射有可能包括在每个街道方向100-200米,服务几个街区。此传播环境具有较低的时间分散,这使得可以提高数据速率。

微单元比宏单元通信更敏感。由于短期变化(如干扰,交通和干扰变化),中/长期变化(如新的建筑物),以及无线网络(例如,新的增量增长基地台)。每单元交接数目增加了一个数量级,以及可利用的时间作出交替下降。利用中转单元是其中一个不错方法,以减少切换率。由于微蜂窝接口要处理预期的高增长的通信负荷,让切换过程中的权限下放程度较高成为一个必要。

微单元遇到阻塞现象称为拐角效应。拐角效应的特点是围绕一个角落移动时信号处理突然大幅下降(例如,在20-30分贝信号强度(例如)在10-20米的距离)时。由于从服务基站组件到移动台的视线丢失(LOS)。拐角效应需要一个更快的切换和可以快速提高的信号质量。角落里的效果是很难预测。测量平均间隔的不可取是由于拐角效应。运动障碍可以暂时阻碍之间的信号传递,这类似于一个角落效应.参考了在曼哈顿式的环境对称单元计划的研究。单元计划影响的信号来干扰比(SIR)的上行和下行的性能显着。对称单元计划同时距离基地台有四个最近的交流路径。这种单元计划可以分为半平方米(房协),全方(财经事务),和矩形(R)的单元计划。这些单元是描述未来的计划。

半广场单元计划

此单元格计划在每个路口基站全向天线的,并且每个微蜂窝占地50份在所有范围的四个方向。此单元格计划避免了街角的效果,并提供最高的容量。此计划是穿透单元交接。图2显示了一半的系统计划,其中在一平方单元微孔为例1。

全区域单元计划

有其他的十字路口位于每个天线与全方位微蜂窝,微蜂窝的每块覆盖在所有四个方向。这是可能的移动台体验这个单元街道拐角效应的计划。计划的全方位单元可以有一个例子,一个全方位的单元计划计划在微孔视角。从楼院或矩形单元的非视距切换。图3显示了每一个微蜂窝学位包括一小部分的水平或垂直的街道正中,及位于微蜂窝该单元格。此单元格图可以很容易地适应市场的需要。较少的基地台发射功率高,可用于初步。随着用户密度的增加,可以添加新的基地台与基地台发射功率降低适当。街道拐角效应是可能的这个单元的计划。计划的R单元可以有非视距或视线交接。图4显示矩形系统单元中的微孔计划的一个例子。

- 40 -

重庆邮电大学本科毕业设计(论文)

宏/微小区覆盖

微单元会拥塞缺乏某种服务的某些地区,而有些用户的切换率过高等一些原因会令微单元负载[13]。为了减轻这些问题,一些单元的混合单元结构(称为覆盖/衬底系统重叠)伞组成的大面积单元或宏单元(称为)和小尺寸微单元(称为衬底单元)都可以使用。图5显示了一覆盖系统。

在宏蜂窝/微蜂窝覆盖架构中提供了一个切换最大化之间的平衡,每个单位面积的用户数量和减少社区间的网络控制与负荷相关的切换。超出微蜂窝覆盖面积宏单元提供广泛的服务领域,并确保做得更好[14]。微小区的提供能力利用和覆盖的地区,高密度的通信区(调用)有较大的频率点。例如机场,火车站或停车场。在不太拥挤的通信需求地区(如城市以外地区的主要街道中心或市外)不是很高,宏单元可以提供足够的覆盖面等方面的研究。宏单元也为各成员国和高速微单元所覆盖地区的不足(例如,由于缺乏渠道或范围的移动台正在走出微单元)。此外,在微孔系统用于溢出的通信其最充分的程度是可以路由到宏小区。覆盖/衬垫系统是宏单元和微单元测定的最佳分配的渠道 [15]。

参考文献[16] 两层之间的计算方法有四种共享的可用频谱。 方法1用于宏区域的TDMA和CDMA微蜂窝。 方法2用于宏区域的CDMA和TDMA微蜂窝。

爱他们使用在这两个层次的TDMA中,且在这两个办法的第4层采用正交频渠道。 覆盖/衬底系统微蜂窝系统的一些优势 [17]:

•基地台只在需要高流量负荷的地区使用。因为它不是必需的,使该地区与微单元全程服务,同时基础设施的成本节省。

•在系统的覆盖的数目远远低于宏微蜂窝系统,因为在快速移动的车辆可连接到覆盖。 •调用移动台和通信位置可以很容易地做到通过微蜂窝系统。伞单元有几类[17]。 第一类在正交渠道分布微单元和巨单元之间。另一个类在微通道使用,微循环利用的巨单元的渠道已经可以处理发射功率稍高的水平分配,抵消了宏单元的干扰。在环境中覆盖/衬底系统中,有4种切换需要管理[19]:微单元,以微蜂窝,微蜂窝向宏,宏向宏,微蜂窝和宏蜂窝。参考文献[20]描述了单元分裂和结合覆盖。单元再利用两个渠道,是通过建立一个覆盖小单元到单元送达相同的大单元基地。小单元可用分裂的单元通道,但因为长的距离限制,大单元不能再利用这些渠道。(覆盖单元约百分之五十多光谱)

效率比细分为(干涉的过程,以避免分配渠道,加强小和大面积的单元。宏蜂窝覆盖系统的实际做法从现行制度的实施中提出了微蜂窝[17]。该参考介绍了通道隔离(自组织动态信道分配)和自动传输功率控制,以避免需要设计信道分配和发送微蜂窝系统功率控制。重

- 41 -

重庆邮电大学本科毕业设计(论文)

用现有的渠道之间自动微单元和巨单元,轻微增加传输系统功率的微蜂窝弥补了宏到微单元的干扰。仿真结果表明,本地通信如果是努力安置渠道管理微单元所设下宏单元将没有任何意义。参考方法论的基础),全球移动通信系统(GSM系统推广到宏蜂窝/微蜂窝覆盖系统[21] 。一个覆盖系统和相关的切换对使用随机的频率和自适应跳频频率来规划不同的频率问题的进行了探讨。四个战略的目的都是确定一个合适的覆盖系统为用户的单元[22]。有两个战略是基于驻留时间设定(切换时间而没有一个电话可以维持在一个单元格),和另外两个战略是基于用户的速度估计。

一个CDMA移动通信系统可以为衰耗的微单元及没有完全覆盖的宏单元之间连接提供支持。参考文献[5]分析单元大小几个因素决定的,软切换区,各组单元的能力。也概述单元集群的若干技术覆盖衬底。 CDMA的应用到微蜂窝/宏蜂窝覆盖有以下主要优点[5]:

•异构环境中可延迟统一的散热器不同的传播与利用分布式天线系列(带),同时仍维持高品质的信号。

•提供自置居所需避免了复杂的频率规划的需要。(参考文献[23]研究)的可行性的CDMA覆盖,可以分享1850年至1990年兆赫个人通讯服务(PCS州)带同现有的公用事业公司和微波信号。参考文献[24]认为,传输和陷波滤波器接收应使用在微单元基地台。它表明,一个覆盖等关键参数的权限是微软发射机的CDMA BS和相对于宏BSS和MSS的系统服务的宏单元。(参考文献[25])为一个覆盖研究频谱管理。

特殊结构

有几个特殊的基础设施成本可以增加蜂窝架构,试图以提高频谱效率。在这里讨论其中一些结构,包括衬底/覆盖系统(即覆盖不同于/衬底系统前面描述)和一个多通道带宽制度。许多蜂窝系统预计从微单元系统发展到一个覆盖/衬底制度。这种演变的研究集中在这样的描述[26]。

集成无线系统

集成的无线系统是系统集成的无线和例证单元,蜂窝系统集成,综合地面和卫星系统。这种集成系统结合无线系统的功能,以达到个人目标的系统改进流动性和低成本。综合地面-地面系统间切换之间可能两个系统之间或移动蜂窝系统,无绳电话系统。系统间的例子,需要切换系统,包括数字欧洲无绳电话(DECT无绳),CDMA宏单元,微单元的GSM和TDMA 。当发起呼叫时候切换,系统间的另一个蜂窝系统的控制由MSC控制一进入系统需要继续通话[29]。在这种情况下,一个用户请求作出切换到另一个节省通话。

- 42 -

重庆邮电大学本科毕业设计(论文)

有需要的MSCs软件系统间切换

如果系统间切换要落实。单元相容性之间的有关需要就得考虑了。有几种可能的系统间切换的结果[29]:

•一个长途电话通话时成为当地的一个移动台成为漫游。 •一个长途电话变成了本地电话时,手机漫游成为一个本地单位。 •成为一个本地电话长途电话,当一个本地变成了漫游的移动单位。 •成为一个本地电话长途电话时,手机漫游成为一个本地单位。

在不同的系统对服务的可移植性有一个日益增长的趋势,如GSM和DECT [30]。它是不错的系统切换间的无线覆盖和移动方式。切换算法的成本效益是一个重大的研究领域。本文概述了不同的方式来实现系统间切换。仿真结果的能力提出了切换使用GSM和DECT /宽接入通信系统(水冷式空调系统)。该文件表明,轻微地调整实施数字无绳规格,可大大简化了系统间切换的DECT 和GSM质谱。

综合地面和卫星系统

集成蜂窝/卫星系统,卫星和蜂窝系统的优势可以结合。卫星可提供区域覆盖,完成覆盖,即时服务,通信和额外的能力(通过处理溢出)。一个蜂窝系统可以提供一种高容量的经济体系。系统集成在一些涉及的问题讨论[31]。特别是,对GSM的程序审查了他们的综合应用系统。未来的公共地面移动通信系统(FPLMTS)将提供一个个人手持电话系统,它使一个人有一个户口,以达到世界任何地方[32] 。该FPLMTS将包括低地球轨道(LEO)或地球静止轨道(GEO)卫星以及地面蜂窝系统。MS系统是单元内的地面覆盖的面积,基地台将作为一个中继站在移动台和卫星之间的提供了一个联系。当一个移动台面积是陆地系统的覆盖范围之外的话,它会直接沟通与卫星的联系。

体系结构不同的问题,有例如呼叫处理,性能分析的访问和传输协议讨论[32]。这两个综合系统的切换方案中统一介绍如下。

系统切换从陆地移动卫星与地面系统

在操作时,移动台监测和评估卫星链路链路性能。接收信号强度(小型遥感卫星)的平均值(例如,在一个30秒的时间内),尽量减少信号强度的变化。如果足够的RSS低于某一阈值,时间上强烈而连续(例如,每组3人),在移动台测量的RSS开始从陆地移动通信系统的信号。如果陆地,或者是向地面系统,只需要地面系统可以达到微蜂窝。

- 43 -

重庆邮电大学本科毕业设计(论文)

系统切换从陆地到陆地移动卫星系统

当一个移动台是获得系统服务从陆地,基地台在预定的时间间隔发送一个应答请求,以确保微软仍然是覆盖范围内。如果一个应答请求的响应信号从移动台不连续的时间收到的N个微蜂窝信号,它是传递给了陆地移动卫星系统(LMSS)。参考文献[33]个人通信系统的重点与层次重叠这包括地面和卫星系统。在层次结构中的最低水平是由微单元。宏蜂窝覆盖微单元,形成层次结构中层研究。卫星波束覆盖宏单元,构成最顶层层次结构水平。两种类型的用户都认为,卫星只和双蜂窝/卫星。只有用户呼叫尝试从卫星由卫星系统提供服务,而双用户呼叫企图从首次针对工作中的地面通信系统的卫星溢出服务。一个长途业务业绩的分析模型参考开发和性能的措施,例如通信分配,阻塞率,并被迫中断机率是被用户评价为低速和高速。

切换三种基本机制

评价机制来评价算法性能的切换,包括分析,模拟和仿真的方法。这种方法的分析方法可以快速切换情景作出初步构想简化有关一些切换算法的性能。这种方法是只在指定有效的限制(例如,型材的假设的RSS)。实际切换程序非常复杂,不便于记忆。这使得该分析方法不太现实。真实世界的情况下,这种方法为十分复杂,棘手的数学。出现在文献中的一些做法为其进行了简要的分析

- 44 -

重庆邮电大学本科毕业设计(论文)

三、工程设计图纸:

图6.1 MCS-51单片机计算器设计的PCB板

- 45 -

重庆邮电大学本科毕业设计(论文)

图6.2 MCS-51单片机计算器设计结构图

- 46 -

重庆邮电大学本科毕业设计(论文)

四、源程序:

/************************************************* 程序名称: 基于MSC-51单片机的计算器设计与实现 **************************************************/ #include

unsigned char code XIANSHI[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79,0x71,0x00,0x40}; unsigned char code XIANSHIXIAOSHUDIAN[]={0xbf,0x86,0xdb,0xcf,0xe6, 0xed,0xfd,0x87,0xff,0xef,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00,0x40};

//带小数点//

unsigned char code XIANSHIWRONG[]={0x00,0x00,0x00,0x00,0x79};

//错误时的显示//

unsigned char code SAOMIAO[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //共阴极扫描码表格// unsigned char DANYUAN[8]={0,0,0,0,0,0,0,0}; unsigned long CUNZHI;

unsigned long SHU[2]={0,0}; unsigned char k,key,m,n;

/************************************************* SIGN 存运算符(+、-、*、/)

FLAG 用第几个数组,(出现非运算符前为0,出现运算符后为1) WRONG 输入多于4个时错误标志位 (0对、1错) COUNT 输入0~9数字的个数 SIZE 减数大于被凑数时为1 SIGNCOUNT 输入运算符的个数 XIAOSHU 存一位小数的值 DIVKEY 运算除法时置为1

**************************************************/

unsigned char SIGN,FLAG,WRONG,COUNT,SIZE,SIGNCOUNT,XIAOSHU[2],DIVKEY; /************************************************* 程序名称:显示程序 入口参数:无

功能:实现将CUNZHI中的值进行动态数码显示 局部变量:i,j,q

全局变量:CUNZHI,DANYUAN[0],DANYUAN[1],DANYUAN[2],DANYUAN[3] 所用端口功能:P1口送显示码 P2口公共端扫描 返回值:无

**************************************************/ void disp(void)

{ unsigned char i,j,p,q;

/**************错误时的显示*************/ if(WRONG==1)

- 47 -

重庆邮电大学本科毕业设计(论文)

{ for(i=0;i<5;i++) { P1=XIANSHIWRONG[i]; P2=SAOMIAO[i]; for(j=6;j>0;j--) //动态显示延时程序// for(q=248;q>0;q--); } } else

{ if(DIVKEY==1) { DANYUAN[0]=XIAOSHU[1]; DANYUAN[1]=XIAOSHU[0]; DANYUAN[2]=CUNZHI%10; DANYUAN[3]=CUNZHI/10%10; DANYUAN[4]=CUNZHI/100%10; DANYUAN[5]=CUNZHI/1000%10; for(p=5;p>2;p--) { if(DANYUAN[p]==0) DANYUAN[p]=16; else break; } for(i=0;i<5;i++) { if(i==2) //倒数第三位为小数位// { P1=XIANSHIXIAOSHUDIAN[DANYUAN[i]]; } else { P1=XIANSHI[DANYUAN[i]]; } P2=SAOMIAO[i]; for(j=6;j>0;j--) //动态显示延时程序// for(q=248;q>0;q--); } } else { DANYUAN[0]=CUNZHI%10; DANYUAN[1]=CUNZHI/10%10; DANYUAN[2]=CUNZHI/100%10; DANYUAN[3]=CUNZHI/1000%10; /*******************首位为零不显示*************/ for(p=3;p>0;p--) //首位为零不显示// { if(DANYUAN[p]==0) DANYUAN[p]=16; else break; }

- 48 -

重庆邮电大学本科毕业设计(论文)

/**************为负数时的显示*****************/

if(SIZE==1) //为负数第五位数码管显示\"-\"// { DANYUAN[4]=17; } else //第五位数码管不显示// { DANYUAN[4]=16; }

for(i=0;i<5;i++) { P1=XIANSHI[DANYUAN[i]]; P2=SAOMIAO[i]; for(j=6;j>0;j--) //动态显示延时程序// for(q=248;q>0;q--); } } } }

/************************************************** 程序名称:处理程序 入口参数:key

功能:实现加减乘除运算

全局变量:key、CUNZHI、SHU[0]、SHU[1]、FLAG、SIGN 返回值:无

**************************************************/ void CHULI(key) {

unsigned char i,j;

/*****************声音“嘀”*****************/ TR0=1;

for(i=200;i>0;i--) //延时100ms// for(j=248;j>0;j--); TR0=0;

/*****************************************/ if(key==15) //按键为清除键// { CUNZHI=0; SHU[0]=0; SHU[1]=0; COUNT=0; WRONG=0; SIZE=0; SIGNCOUNT=0; XIAOSHU[0]=0; XIAOSHU[1]=0; DIVKEY=0; }

- 49 -

重庆邮电大学本科毕业设计(论文)

else if((key>=0)&&(key<=9)) //按键为数字键// { COUNT++; //按下的数字键的次数// /*****************加权运算*****************/ SHU[FLAG]=SHU[FLAG]*10+key; //加权运算// CUNZHI=SHU[FLAG]; } else if((key>=10)&&(key<=13)) //按键为运算键// { SIGNCOUNT++; SIGN=key; FLAG++; COUNT=0; } else if(key==14) //按键为等于键// { switch(SIGN) { case 10: CUNZHI=SHU[0]+SHU[1]; break; case 11: { if(SHU[0]>SHU[1]) { CUNZHI=SHU[0]-SHU[1]; } else { SIZE=1; CUNZHI=SHU[1]-SHU[0]; } } break; case 12: CUNZHI=SHU[0]*SHU[1]; break; case 13: DIVKEY=1; CUNZHI=SHU[0]*100/SHU[1]; XIAOSHU[1]=CUNZHI%10; XIAOSHU[0]=CUNZHI/10%10; CUNZHI/=100; if(CUNZHI>999) { WRONG=1; } break; } }

if((COUNT==5)||(SIGNCOUNT>1)||(CUNZHI>9999)) //输入数字键大于5时将WRONG置1// { WRONG=1; }

- 50 -

重庆邮电大学本科毕业设计(论文)

}

/************************************************** 程序名称:键盘扫描 入口参数:无

功能:进行键盘扫描 全局变量:k 局部变量:i,j

调用函数:CHULI(key) 返回值:无

**************************************************/ void JIANPAN(void) { unsigned char i,j; P3=0xff;

P3_4=0; //扫描P3.4这条线上的四个按键//

k=P3; k=k&0x0f;

if(k!=0x0f) //看P3.4这条线上是否真的有按键按下//

{ for(i=20;i>0;i--) //延时一段时间//

for(j=248;j>0;j--);

k=P3; //再判断一次//

k=k&0x0f; if(k!=0x0f)

{ switch(k) //通过可能发生的四种可能比较看是哪个按键按下//

{ case 0x0e: key=0; break; case 0x0d: key=4; break; case 0x0b: key=8; break; case 0x07: key=12; break; } k=P3; k=k&0x0f; while(k!=0x0f) { k=P3; k=k&0x0f; } CHULI(key); } }

- 51 -

重庆邮电大学本科毕业设计(论文)

P3=0xff; P3_5=0; //扫描P3.5这条线上的四个按键// k=P3;

k=k&0x0f; if(k!=0x0f) //看P3.5这条线上是否有按键按下// { for(i=20;i>0;i--) //延时等待// for(j=248;j>0;j--); k=P3; //再看一次// k=k&0x0f; if(k!=0x0f) { switch(k)//通过比较看是P3.5这条线上的哪一个按键按下// { case 0x0e: key=1; break; case 0x0d: key=5; break; case 0x0b: key=9; break; case 0x07: key=13; break; } k=P3; k=k&0x0f; while(k!=0x0f) { k=P3; k=k&0x0f; } CHULI(key); } } P3=0xff; //扫描P3.6这条线上的四个按键是否按下// P3_6=0; k=P3; k=k&0x0f; if(k!=0x0f) { for(i=20;i>0;i--) for(j=248;j>0;j--); k=P3; k=k&0x0f; if(k!=0x0f) { switch(k) { case 0x0e: key=2;

- 52 -

重庆邮电大学本科毕业设计(论文)

break; case 0x0d: key=6; break; case 0x0b: key=10; break; case 0x07: key=14; break; } k=P3; k=k&0x0f; while(k!=0x0f) { k=P3; k=k&0x0f; } CHULI(key); } }

P3=0xff; //扫描P3.7这条线上的四个按键是否按下// P3_7=0; k=P3;

k=k&0x0f; if(k!=0x0f)

{ for(i=20;i>0;i--) for(j=248;j>0;j--); k=P3; k=k&0x0f; if(k!=0x0f) { switch(k) { case 0x0e: key=3; break; case 0x0d: key=7; break; case 0x0b: key=11; break; case 0x07: key=15; break; } k=P3;

- 53 -

重庆邮电大学本科毕业设计(论文)

k=k&0x0f; while(k!=0x0f) { k=P3; k=k&0x0f; } CHULI(key); } } }

/************************************************** 程序名称:主程序

功能:实现计算器加减乘除运算并显示 全局变量:CUNZHI、FLAG、SIGN 调用函数:disp()、JIANPAN() 返回值:无

***************************************************/ void main(void) { TMOD=0X02; ET0=1; EA=1; TR0=0; TH0=(256-200)%256; TL0=(256-200)/256; CUNZHI=0; FLAG=0; SIGN=0; WRONG=0; SIZE=0; XIAOSHU[0]=0; while(1) { disp(); JIANPAN(); } }

/**************************************************

定时中断

***************************************************/ void t0(void) interrupt 1 using 1 { P0_0=~P0_0; }

- 54 -

因篇幅问题不能全部显示,请点此查看更多更全内容