基于51单片机数显转速表的设计与制做

基于51单片机数显转速表的设计与制作

摘 要:转速表在自动化生产设备和旋转运动装置中的应用十分广泛。传统的转速表大部

分都是由机械式或模拟数字电路来实现的,典型的机械式转速表具有结构简单实用的特点,被广泛应用于汽车上;而电子数字式的转速表由光电或霍尔传感器获取信号,通过对脉冲进行计数而推算出转速。但这两类传统的转速表都存在着体积大、精度底、不直观、功耗大、功能少,而且采样时间长,难以测得瞬时转速的缺点,而基于单片机的数显转速表由于单片机体积小、控制功能强等特点在控制方面得到了广泛的应用。我们所要设计的单片机数显转速表就是以单片机(AT89S51芯片)为核心来实现智能化的,它具有工作稳定、非接触、功耗小、高精度、LED数码显示等优点。文中详细阐述了该类转速表的反射式光电传感器的工作原理、结构及转换电路的设计,还有方案的选用、软硬件的选择设计和系统的组建调试以及最后的参数指标测试、数据分析等。

关键词:转速表 反射式光电传感器 单片机 AT89S52 记录定时器 设计 制作

1.概述

1.1单片机

单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。

1.2单片机的发展过程

(1)、单片机形成阶段

1976年,Intel公司推出了MCS-48系列单片机。在单芯片内完成了CPU、存储器、I/O接口等部件的集成;但存储器容量较小,寻址范围小(不大于4K),无串行接口,指令系统功能不强。 (2)、结构成熟阶段

1980年,Intel公司推出MCS-51系列单片机。其存储容量增加,寻址范围扩大(6K),结构成熟。现在,MCS-51已经成为公认的单片机经典机种。 (3)、性能提高阶段

近年来,各半导体厂商不断推出新型单片机芯片,控制性能优越、种类繁多。典型的产品如Atmel公司的AT89C51RD2单片机。

1.3单片机的特点

(1)、结构上突出控制功能 (2)、使用上易于产品设计

1.4单片机的应用领域

(1)、在智能仪器仪表上的应用

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采

用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 (2)、机电一体化产品

机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。典型产品如机器人、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、复印机等。 (3)、实时工业控制

单片机还可以用于各种物理量的采集与控制。电流、电压、温度、液位、流量等物理参数的采集和控制均可以利用单片机方便的实现。典型应用如电机转速控制、温度控制、自动生产线等。 (4)、分布系统的前端模块

在复杂的工业系统中,经常要采用分布式测控系统完成大量的分布参数的采集。在这类系统中,采用单片机作为分布式系统的前端采集模块,系统具有运行可靠,数据采集方便灵活,成本低廉等一系列优点。 (5)、家用电器

家用电器是单片机的又一重要领域,前景十分广阔。如空调器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具等。另外,在交通领域中,汽车、火车、航天器等均有单片机的广泛应用。

2.芯片介绍

2.1 AT89S52芯片简介 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存

储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。

2.2主要性能

1. 与MCS-51单片机产品兼容;

2. 8K字节在系统可编程Flash存储器; 3. 1000次擦写周期;

4. 全静态操作:0Hz-33Hz; 5. 三级加密程序存储器; 6. 32个可编程I/O口线; 7. 三个16位定时器/计数器; 8. 6个中断源;

9. 全双工UART串行通道; 10. 低功耗空闲和掉电模式; 11. 掉电后中断可唤醒; 12. 看门狗定时器; 13. 双数据指针; 14. 掉电标识符。

2.2 AT89S52的基本结构

AT89S52结构框图

2.3AT89S52单片机的封装

具有总线扩展引脚DIP40封装: (1)、电源及始终引脚(4个) Vcc:电源接入引脚。 Vss:接地引脚。

XTAL1:晶振振荡器接入的一个引脚。 XTAL2:晶振振荡器接入的另一个引脚。

(2)、控制线引脚(4个)

RST:复位信号输入引脚。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

ALE/PROG:地址锁存允许信号输出引脚/编程脉冲输入引脚。当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执

__________

行外部程序时,应设置ALE禁止位无效。

____EA/VPP:内外存储器选择引脚/片内EPROM9(或FlashROM)编程电压输入脚。外部访问

允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。

_________PSEN:外部程序存储器选通信号输出引脚。当AT89S52由外部程序存储器取指令(或

数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

(3)、并行I/O口引脚(32个,分成4个8位口)

P0.0~P0.7:一般I/O口引脚或数据/低位地址总线服用引脚。 P1.0~P1.7:一般IO口引脚。

P2.0~P2.7: 一般I/O口引脚或高位地址总线引脚。 P3.0~P3.7: 一般I/O口引脚或第二功能引脚。

2.4引脚说明

AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟。另外,AT89S52可降至0Hz静态逻辑操作,支持 2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器被冻结,单片机一切工作停止,直到下一个中断或硬件复位停止。

P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0不具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。

P1口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX)。 在flash编程和校验时,P1口接收低8位地址字节。

引脚号第二功能:

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出

P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用)

P1.7 SCK(在系统编程用)

P2口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱

动4 个 TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输

联系客服:779662525#qq.com(#替换为@)