[工学]实验室单片机实验箱的应用软件包设计.doc

上传人:音乐台 文档编号:1977260 上传时间:2019-01-27 格式:DOC 页数:52 大小:2.75MB
返回 下载 相关 举报
[工学]实验室单片机实验箱的应用软件包设计.doc_第1页
第1页 / 共52页
[工学]实验室单片机实验箱的应用软件包设计.doc_第2页
第2页 / 共52页
[工学]实验室单片机实验箱的应用软件包设计.doc_第3页
第3页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《[工学]实验室单片机实验箱的应用软件包设计.doc》由会员分享,可在线阅读,更多相关《[工学]实验室单片机实验箱的应用软件包设计.doc(52页珍藏版)》请在三一文库上搜索。

1、东北电力大学本科毕业设计论文本科毕业设计论文单片机实验室实验箱的软件包设计 学 生 姓 名:赵政 班 级:电自088 学 号:0801010838 指 导 教 师:盛文利 所 在 单 位: 电气工程学院 答 辩 日 期: 2012年6 月 25 日2东北电力大学本科毕业设计论文摘 要单片机即单片微型计算机(Single-Chip Microcomputer ),是集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。近年来随着科技的飞速发展,单片机的应用正在不断深入。在实时检测和自动控制的单片机应用系统中,其往往作为一个核心部件来使用。但是,仅单片机方面的知识是不够的,还应根据

2、硬件结构软硬结合,加以完善。目前大多数高校都建立了单片机实验室,基本上配备了实验箱等硬件仿真设备。但实验箱硬件电路固定、实验内容较难改动,很难适应单片机技术的快速发展以及培养学生的单片机开发能力、创新能力。利用OTH的软件仿真技术,可以在一定程度上弥补上述不足,搭建一个虚拟实验平台,可以实现更多的实践环节,提供学生自行学习的条件,对学科建设有着积极的意义。该试验箱系统是由单片机最小系统及扩展电路组成。本设计的各模块系统结构简单,造价成本低,功能齐全,具有很强的实用性。 关键词 CPU;定时器;计数器;微控制器;数字温度传感器AbstractSingle-Chip Microcomputer,

3、Single-Chip Microcomputer is a Microcontroler which collects CPU,RAM,ROM,timing,counting and many meeting orifices.In recent years, with the rapid development of science and technology, the application of single chip is accepted broadly in real-time detection and automatic control of microcomputer.

4、Although its often act as the core component of single chip system, it is not enough only with the knowledge of single chip. Engineers also need to think about the structure of the hardware to perfect the system.Currently most higher education institutions have built single chip laboratory, equipped

5、 with experiment box and other hardware simulation equipment. But the circuitry of the experiment box is fixed and the experiment steps are hard to be changed. It is not fit the trend of rapid development speed of single chip technology. It is also unsuited to develop students abilities and creativi

6、ties. With the introduction of the QTH emluator simulation technology, it can be solved at a certain extent. We could design more experiment steps and help students completing their self-study with the simulation experimental platform. It is a positive technology for system construction. The experim

7、ent chest is composed of the smallest system of Singal-Chip and extending electrocircuiThe modules of the design are simple in the system structure,low in cost,ready in fuction and high practicability.Key words: CPU;timer;counter;micro-controler; figure temperature transducer目 录摘 要IAbstractII第1章 绪 论

8、11.1 课题背景及研究的意义11.1.1 课题背景11.1.2 课题研究的意义11.2 单片机的发展概况21.2.1单片机的发展历史21.2.2单片机技术现状及将来发展趋势31.3 本文的研究内容3第2章 MCS-51单片机组成及结构分析42.1 MCS-51单片机基本功能特性42.2 MCS-51单片机的引脚定义与特性52.3 MCS-51 单片机存储器和寄存器72.3.1 程序存储器82.3.2 内部数据存储器82.3.3 外部数据存储器122.4 MCS-51单片机工作时序12第3章MCS-51单片机内部接口电路133.1 MCS-51单片机的定时/计数器133.1.1定时/计数器的结

9、构133.1.2定时/计数器的方式寄存器和控制寄存器143.2 MCS-51单片机中断系统163.2.1 与中断有关的特殊功能寄存器163.2.2 中断系统的应用183.3 单片机内部接口设备的使用实验193.3.1实验一:MCS-51定时器实验193.3.2实验二:MSC-51中断系统的应用实验213.3.3实验三:MSC-51串行口的应用实验23第4章 MCS-51单片机实验箱系统扩展244.1 MCS-51单片机系统扩展244.2 单片机实验箱的接口扩展254.2.1实验四:8255A接口扩展实验254.2.2实验五:模数转换实验344.2.3实验六:步进电机控制实验37附录:QTH仿真

10、器的使用说明40结 论45致 谢46参 考 文 献4748第1章 绪 论1.1 课题背景及研究的意义1.1.1 课题背景 单片机,全称单片微型计算机(英语:Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很

11、多应用场合被称为范围更广的微控制器。因此,国内很多工科院校也把单片机原理及应用作为必修的课程,我们学校也把这门课程视为重点课程之一,为此学院专门设立了多个实验室,并且新引进单片机试验箱,以供同学们更好的掌握所学的理论知识。1.1.2 课题研究的意义这次毕业设计我所研究的实验箱是我院实验室为了加强同学们实践能力的实验课所使用的单片机实验箱 内容主要有:1、将实验箱的实验重新巩固一遍,了解实验箱的基本实验内容。2、将实验箱的功能程序整理出来,做一个总结,也帮助同学们以后更加清晰的学习单片机实验箱的功能。同时在这个课题过程中,我对单片机这门非本专业学习的课程有了更加深刻的理解。51单片机的编程语言常

12、用的有二种,一种是汇编语言,一种是C语言。汇编语言的机器代码生成效率很高,简单易学但可读性却并不强,复杂一点的程序就更是难读懂。而C语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用C语言的开发周期通常要小于汇编语言很多。综合以上C语言的优点,结合大学期间学过c语言这门课程,我在学习时选择了C语言。 1.2 单片机的发展概况1.2.1 单片机的发展历史单片机控制系统取代了以前利用复杂电子线路或数字电路构成的控制系统,可以以软件控制来实现,并能够实现智能化,现在单片机

13、控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。单片机作为微型计算机的一个分支,它的产生与发展和微处理器的产生与发展大体同步,主要分为4 个阶段: 第一阶段(1974 年-1978 年):初级单片机阶段。以Intel 公司的MCS-48 为代表。这个系列的单片机在片内集成了8 位CPU、并行I/O、8 位定时器/计数器、RAM 等。无串口I/O, 寻址范围不大于4K。 第二阶段(1978 年-1983 年):高性能单片机阶段。此时的单

14、片机品种多,功能强,以MCS-51 系列为代表。这个阶段的单片机均带有串行I/O 口,具有多级中断处理系统,定时器/计数器为16 位,片内RAM 和ROM 容量相对增大,且寻址范围可达64KB 。这类单片机应用领域广泛,性价比优良。 第三阶段(1983 年-1990 年):16 位单片机和8 位高性能单片机并行发展阶段。此阶段的单片机的最大的特点是实时处理能力强,生产工艺先进,集成度高,内部功能强,而且允许用户采用工业控制的专用语言编程,如PL/M、C 语言、BASIC 语言等。如Intel 生产的MCS-96 系统和ATMAL 公司生产的8XC552 系列,特别适用于实时控制。 第四阶段(1

15、990 年至今):1990 年2 月美国推出的i80860 超级单片机轰动了整个计算机界,它的运算速度为1.2 亿次/秒,可进行32 位整数运算和64 位浮点运算,同时片内具有一个三维图形处理器,可构成超级图形工作站。随着半导体技术的发展,巨型计算机单片化将成为现实。单片机园地里,单片机品种异彩纷呈,争奇斗艳。有8位、16位甚至32位机,但8位单片机仍以它的价格低廉、品种齐全、应用软件丰富、支持环境充分、开发方便等特点而占着主导地位。而INTEL公司凭着他们雄厚的技术,性能优秀的机型和良好的基础,目前仍是单片机的主流产品。只不过是九十年代中期,INTEL公司忙着开发他们个人电脑微处理器,已没有

16、足够的精力继续发展自己创导的单片机技术,而由PHILIPS等公司继续发展C51系列单片机。1.2.2 单片机技术现状及将来发展趋势目前,单片机正朝着高性能和多品种方面发展,尤其是8 位单片机,以其价格低廉、应用软件齐全、开发应用方便等特点成为当前单片机中的主流,16 位单片机和专用单片机也已进入普及应用阶段。单片机的发展具体体现在如下几个方面: (1) CPU 的发展:速度、精度功能增强,性能不断提高 (2) 存储器的发展 (3) 内部资源增多:A/D、D/A、EEPROM (4) 加强片内输入、输出接口功能 (5) 外围电路内装化 (6) 多功能引脚 (7) 制造工艺上的提高 (8) 片内R

17、OM 中固化应用软件和系统软件 (9) 寻址范围大 单片机的技术还在不断发展,新型单片机还将不断涌现。当前单片机的产量占整个微机(包括一般的微处理器)产量的80% 以上,在我国,低档8 位单片机于20 世纪80 年代就开始应用,目前已转向高档的8 位和16 位单片机的开发和应用。当前嵌入式系统的出现给高端单片机的应用又增添了新的活力。1.3 本文的研究内容通过此次毕业设计,旨在进一步提高实验室实验箱的应用效率,将软件包整理成册,方便同学们日后实践后的理解和复习。我把这次毕业设计所做的工作整理出论文形式以供参阅。论文包括:实验程序软件包以及附加的芯片介绍、结构与线路图、实验方法等。第2章 MCS

18、-51单片机组成及结构分析所有51系列单片机都是以Intel公司早期的典型产品8051为内核的。世界上许多著名的半导体厂商相继推出的各个系列单片机都与MCS-51这个系列相兼容。产品型号不断增加、品种不断丰富、功能不断加强、性能不断提高。MSC-51单片机的内部结构如下图:2.1 MCS-51单片机基本功能特性MCS-51系列单片机分为51子系列和52子系列,在51子系列中,典型代表为8751、8051、8031等,在52子系列中,典型代表为8752、8052、8032等,这两个子系列单片机的指令系统与引脚功能完全兼容,仅在内部功能部件稍有差异,主要功能特点如下: 8位CPU,含片内振荡器;

19、4KB的程序存储器ROM; 128B的数据存储器RAM; 64KB的外部程序存储器寻址能力; 64KB的外部数据存储器寻址能力; 32根输入输出(I/O)线; 2个16位定时/计数器; 1个全双工异步串行口; 21个特殊功能寄存器; 5个中断源,2个优先级; 具有位寻址功能。 图 MCS-51单片机基本组成框图2.2 MCS-51单片机的引脚定义与特性在51系列单片机中最常见的封装是标准型DIP(双列直插)40脚。凡封装相同的51系列单片机,其引脚定义和功能与8051基本兼容,使用时绝大部分器件可以互换。图2-4是40脚封装的逻辑功能与实际引脚排列图,其中图(a)是逻辑功能图,图(b)是实际引

20、脚图。其功能见表2-3所示。对于PLCC 44脚和PQFP 44脚封装如图2-5所示。在44脚的封装中,新型器件多集成了一个准双向的P4口(P4.0、P4.1、P4.2和P4.3可以驱动4个LSTTL负载),而早期的8051产品无P4口(对应脚为空脚)其它引脚的定义完全与基本型8051相同。MCS51单片机的引脚功能和含义 图2-3引脚名称脚号功 能 描 述Vcc40+5V电源端(+4.5V+5.5V)Vss 20接地端P0.0P0.73932P0口是一个8位开漏极双向I/O口。它能够吸收8个LSTTL低电平负载的灌电流;被写入“1”的那些P0口引脚将处于悬浮态,即这些引脚为高阻抗输入状态;在

21、使用外部存储器时,低8位的地址和数据总线复用这个口。在这中应用中,当其输出为“1”时,它使用了负载能力很强的提升电路,用于提高上升速度(当配合信号时,访问外部程序存储器。而当、信号时,访问外部数据存储器)。P0口在作为普通的输入/输出(I/O)口时,必须在P0口上外接上拉电阻。P1.0P1.718P1口是一个8位准双向I/O口,内部已有上拉电阻;P1口能够驱动4个LSTTL负载;作为输入端的那些引脚,必须先对该位输出“1”(即对其编程为输入状态);在8052中,P1.0和P1.1引脚还有T2和T2EX功能,T2是定时/计数器2的外部输入端,T2EX是定时/计数器2的“记录方式”的输出端。P2.

22、0P2.72128P2口是一个8位准双向I/O口,内部已有上拉电阻;P2口能够驱动4个LSTTL负载;作为输入端的那些引脚,必须先对该位输出“1”(即对其编程为输入状态);在总线操作时,P2口为高8位地址线。P3.0P3.71017P3口是一个8位准双向I/O口,内部已有上拉电阻;P3口能够驱动4个LSTTL负载;作为输入端的那些引脚,必须先对该位输出“1”(即对其编程为输入状态);在作特定的复用功能时,P3复用脚功能:P3.0脚对应RXD(串口输入端);P3.1脚对应TXD(串口输出端);P3.2脚对应 (外部中断0的输入端); P3.3脚对应 (外部中断1的输入端);P3.4脚对应T0(定

23、时/计数器0的输入端);P3.5脚对应T1(定时/计数器1的输入端);P3.6脚对应(是对外部数据存储器“写”的选通信号的输出端);P3.7脚对应(是对外部数据存储器“读”的选通信号的输出端)。RST/Vpd9复位信号的输入端,高电平有效(非TTL电平);当单片机的主电源Vcc断开时,RST引脚还是芯片内部RAM的辅助电源端(只对HMOS芯片有效)。ALE30地址锁存允许信号,高电平有效;当对外部存储器操作时,ALE的高电平时,发出地址信号,ALE的下降沿锁定由P0口输出的低8位地址信号。当不用外部存储器时,ALE可作为标准的脉冲信号(其频率是晶振频率的1/6)。 29是外部程序存储器的选通信

24、号,低有效,能驱动8个LSTTL负载。 30当为高电平时,单片机先执行片内程序存储器的程序,当地址超出内部程序存储器范围是,再执行外部程序存储器的程序;当为低电平时,单片机只执行外部程序存储器的程序。XTAL119内部振荡器的输入端;当使用外部时钟时,对CMOS芯片,XTAL1为输入端;对HMOS芯片,XTAL1应接地。XTAL2 18内部振荡器的输出端;当使用外部时钟时,对CMOS芯片,XTAL2应悬浮不用;对HMOS芯片,XTAL2为输入端。图 8051引脚配置图(a) 逻辑功能图 (b) 实际引脚图 图 44脚排列图(a) PLCC 44脚 (b) PQFP 44脚2.3 MCS-51

25、单片机存储器和寄存器单片机的存储器有程序存储器ROM和数据存储器RAM之分。8051标准型单片机的存储器结构如图所示。图 8052单片机的存储器结构(a) 程序存储器 (b) 内部数据存储器 (c) 外部数据存储器2.3.1 程序存储器标准的51单片机程序存储器地址范围是:0000HFFFFH,共64KB空间。图2-8(a)是程序存储器的配置图。在64KB的程序存储器中0000H0002AH(地址向量区)区域具有特殊用途,是保留给系统使用的。0000H是单片机的入口地址(启动地址),一般在该单元(0000、0001、0002)中存放一条绝对跳转指令。事实上,51单片机复位后程序计数器PC的内容

26、为0000H,故系统必须从0000H单元开始取指令,执行程序。除0000H单元外,其它的0003H、000BH、0013H、001BH和0023H特殊单元分别对应于5种中断源的中断子程序的入口地址。其含义是:0003H000AH,为外部中断0()的中断地址区;000BH0012H,为定时/计数器0(T0)的中断地址区;0013H001AH,为外部中断1()的中断地址区;001BH0022H,为定时/计数器1(T1)的中断地址区;0023H002AH,为串口(TI,RI)中断地址区。2.3.2 内部数据存储器在51单片机中,内部数据存储器在物理上又分为2个独立的区域,即内部SRAM区和特殊功能寄

27、存器区。其结构如图2-8(c)所示。虽然地址重叠,但物理空间完全不一样。那么在操作时怎样区分呢?只能通过不同的指令来区分。具体的说,操作内部低128字节的SRAM,要用直接或间接寻址指令;操作高128字节的SRAM,只能用间接寻址指令;操作特殊功能寄存器SFR区,只能用直接寻址指令。MCS-51单片机对内部SRAM的操作区域有特殊的规定,其内部数据划分见图2-9所示。图8052内部数据存储器结构(1)寄存器工作组区的划分在低128字节的SRAM中,00H1FH共32单元是4个通用工作寄存器组的专用区。每一个区有8个名字相同的通用寄存器R0R7。寄存器与SRAM的地址对应关系如表2-3所示。表

28、R0R7寄存器与SRAM的地址对照寄存器名称 地 址 0区 1区 2区 3区 R0 00H 08H 10H 18H R1 01H 09H 11H 19H R2 02H 0AH 12H 1AH R3 03H 0BH 13H 1BH R4 04H 0CH 14H 1CH R5 05H 0DH 15H 1DH R6 06H 0EH 16H 1EH R7 07H 0FH 17H 1FH需要指出的是:单片机在上电或复位后,寄存器组被默认为组0,如果要使用别的工作组,需要设置PSW中的RS1、RS0这两位。另外,系统在复位后,堆栈指针SP自动赋为07H,堆栈操作的数据将从08H开始存放。这样一来,寄存器组

29、1组3就无法用了。为了解决这一问题,在程序初始化时,应该先设置SP的值。例如,将SP置成70H,以后堆栈的数据就从71H存了。(2)位操作区的划分片内SRAM的20H2FH为位寻址区域(这是51单片机所特有的功能),这16个字节的每一位都有一个特定的位地址,位地址范围为00H7FH。位地址分配见表2-4所示。表 SRAM中的位寻址区地址分配SRAM字节地址 D7 D6D5 D4 D3 D2D1D0 20H07060504 03020100 21H0F0E0D0C0B0A0908 22H171615141312111023H1F1E1D1C1B1A191824H27262524232221202

30、5H2F2E2D2C2B2A292826H373635343332313027H3F3E3D3C3B3A393828H474645444342414029H4F4E4D4C4B4A49482AH57565554535251502BH5F5E5D5C5B5A59582CH67666564636261602DH6F6E6D6C6B6A69682EH77767574737271702FH7F7E7D7C7B7A7978需要指出的是:位寻址区的每一个字节地址(单元)既可作为普通的SRAM单元使用,也可对单元中的每一位进行位操作。但到底如何使用,要通过具体的指令区分。(3)其它SRAM区的划分片内SRA

31、M区的30H7FH可用作高速的数据存储区或堆栈区。片内SRAM区的80HFFH可用作一般的数据存储区(要间接寻址,8051无这个区域)或堆栈区。(4)特殊功能寄存器SFR在特殊功能寄存器区(80HFFH)的128字节存放的是MCS-51单片机中专用寄存器(SFR)的数据。其名称、符号及字节地址如表2-5所示。表2-5 SFR特殊功能寄存器地址表符号名(SFR) 位地址与位名称字节地址D7D6D5D4D3D2D1D0并口P0P0.7 P0.6P0.5P0.4P0.3P0.2P0.1P0.080H87H86H85H84H83H82H81H80H堆栈指针SP81H数据指针低字节DPL82H数据指针低

32、字节DPH83H电源控制PCONSMODGF1GF0PDIDL87H定时/计数器控制TCONTF1TR1TF0TR0IE1IT1IE0IT088H8FH8EH8DH8CH8BH8AH89H88H定时/计数器方式控制TMODGATEC/M1M0GATEC/M1M089H定时/计数器0低字节TL08AH定时/计数器1低字节TL18BH定时/计数器0高字节TH08CH定时/计数器1高字节TH18DH并口P1P1.7 P1.6P1.5P1.4P1.3P1.2P1.1P1.090H97H96H95H94H93H92H91H90H串口控制SCONSM0SM1SM2RENTB8RB8TIRI98H9FH9E

33、H9DH9CH9BH9AH99H98H串口数据缓冲器SBUF99H并口P2P2.7 P2.6P2.5P2.4P2.3P2.2P2.1P2.0A0HA7HA6HA5HA4HA3HA2HA1HA0H中断允许控制器IEEAET2ESET1EX1ET0EX0A8HAFHAEHADHACHABHAAHA9HA8H并口P3P3.7 P3.6P3.5P3.4P3.3P3.2P3.1P3.0B0HB7HB6HB5HB4HB3HB2HB1HB0H中断优先级控制IPPT2PSPT1PX1PT0PX0B8HBDHBCHBBHBAHB9H B8H程序状态字PSWCyACF0RS1RS0OV F1P D0HD7HD6H

34、D5HD4HD3HD2HD1HD0H累加器ACCACC.7ACC.6ACC.5ACC.4ACC.3ACC.2ACC.1ACC.0E0HE7HE6HE5HE4HE3HE2HE1HE0H寄存器BB.7B.6B.5B.4B.3B.2B.1B.0F0HF7HF6HF5HF4HF3HF2HF1HF0H需要说明的是:表2-5所列出的专用寄存器SFR在所有51系列单片机中,名称、地址和符号都是一样的。所不同的部分是80HFFH地址中,其它型号在表2-5中未用到的地址上,会增加一些新的寄存器内容。如在8052单片机中,增加了定时器/计数器2的设置(见表2-6)。表 8052 定时器/计数器2的地址表符号名 位

35、地址与位名称字节地址D7D6D5D4D3D2D1D0T2CONTE2 EXF2RCLKTCLKEXEN2TR2C/CP/C8HCFHCEHCDHCCHCBHCAHC9HC8HRLDLCAHRLDHCBHTL2CCHTH2CDH2.3.3 外部数据存储器外部数据存储器,即单片机外接的RAM。一般由静态存储器构成,其容量大小由用户根据需要而定,但最大可扩展到64KB。外扩数据存储器的结构如图2-8(c)所示。对照图2-8(b)可以看出,内部数据存储器的地址00HFFH完全被外部数据存储器的地址0000HFFFFH覆盖。对照图2-8(a)的程序存储器的地址范围,它们也是重叠的。那么,怎样区分呢?要通

36、过指令加以区分。通常:操作程序存储器,要用MOVC指令;操作外部数据存储器,要用MOVX指令;操作内部存储器,要用MOV指令。需要进一步说明的是,通过总线外扩RAM和I/O口是统一编址的。也就是说,所有外扩的I/O口都占用了基本64KB的地址单元。2.4 MCS-51单片机工作时序CPU取出一条指令至该指令执行完所需的时间称为指令周期,指令周期是以机器周期为单位的。8051的一个机器周期由六个状态(S1,S2,S6)组成,每一个状态为2个时钟周期(时相P1,P2)。一个机器周期有12个时钟周期(S1P1,S1P2,S2P1,S2P2,S6P1,S6P2),若晶振为12MHz ,则一个机器周期为

37、1ms。第3章 MCS-51单片机内部接口电路MCS-51内部集成了两个16位定时/计数器、中断系统、以及一个异步通讯方式全双工的串行通讯接口。3.1 MCS-51单片机的定时/计数器3.1.1定时/计数器的结构MCS-51单片机内部由两个16位可编程的定时/计数器,即定时器T0和定时器T1。它们既可以用作定时器,又可用作计数器。基本部件是两个8位的计数器。由TH0和TL0组成T0,由TH1和TL1组成T1,它们都是以加1的方式完成计数。 特殊功能寄存器TMOD控制定时/计数器的工作方式,TCON控制定时/计数器的启动运行并记录T0、T1的溢出标志。 通过初始化编程,可以预置计数初值、指定其工

38、作方式及控制其运行 1.定时器的工作原理 在作定时器使用时,输入的计数脉冲是由晶体振荡器的输出经12分频后得到的,所以定时器也可以看作对机器周期计数的计数器。 故其计数速率为晶体振荡频率的1/12。 如果晶振频率为12 MHz,则定时器每接收一个输入脉冲的时间为1us。2.计数器的工作原理当它用作计数器时,它对接到相应的外部引脚T0(P3.4) 或T1(P3.5)上的外部事件计数。 在这种情况下,当检测到输入引脚上的电平由高跳变到低时,计数器就加1。 计数器在每个机器周期采样外部输入,当采样值在这个机器周期为高,在下一个机器周期为低时,则计数器加1。因此计数器需要两个机器周期来识别一个从高到低

39、的跳变,故最高计数速率为晶振的1/24。不管是定时还是计数工作方式,定时器在运行时不占用CPU的时间,除非产生溢出才可能中止CPU的当前操作。 可见,定时/计数器是单片机内部效率高且工作灵活的部件。这里要强调一点,MCS-51系列单片机的定时/计数器采用的是加1计数方式。即单片机内部的计数器从初值开始一直加1,直到产生溢出为止。3.1.2 定时/计数器的方式寄存器和控制寄存器定时/计数器在开始使用前,必须设置相应的寄存器,以设定其工作方式等。1. 定时/计数器的方式寄存器(TMOD) 特殊功能寄存器TMOD中每位的定义如下图所示。 高4位用于定时/计数器1,低4位用于定时/计数器0。 特殊功能

40、寄存器TMOD只能按字节寻址,不能按位寻址。TMOD(89H)D7D6D5D4D3D2D1D0GATEM1M0GATEM1M0GATE:门控位。用来确定对应的外部中断请求引脚是否参与T0或T1的操作控制。当GATE=0时,只要定时/计数器控制寄存器(TCON)中的TR0或TR1被置位时,T0或T1被允许开始计数;当GATE=1时,不仅要TCON中的TR0或TR1置位,还需要P3口的/INT0或/INT1脚为高电平,才允许开始计数。后一种情况下一般用于测量外部脉冲的宽度。定时器1定时器0: 定时器方式或计数器方式选择位。 时,为定时方式,其计数器输入为晶振的12分频,即对机器周期计数。 时,为计

41、数方式,计数器的输入来自T0(P3.4)和T1(P3.5)端的外部脉冲。2. 定时/计数器控制寄存器TCON特殊功能寄存器TCON用于控制定时器的操作及对定时器中断的控制。特殊功能寄存器TCON既能按字节寻址(88H),又能按位寻址。其各位定义如下图所示。其中低4位与外部中断有关。D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0TF1:T1的溢出标志。当T1计数溢出时由硬件则自动置1;在CPU响应中断处理时由硬件清0。也可由程序查询后清零(非中断方式)。TR1:T1的运行控制位。该位置1或清0用来实现启动或停止定时/计数器。TF0:T0的溢出标志 ;TR0:T0的运行控制位 。TMOD和TCON寄存器在复位时其每一位均清0。TCON(88H)其各位定义如下图所示。其中低4位与外部中断有关。 M1M0工作方式功 能00013位计数器01116位计数器1

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1