目录第一章摘要 (2)第二章系统总体方案设计 (2)2.1 总体思路设计 (2)2.2 测频原理 (3)第三章系统硬件设计 (4)3.1 AT89S51单片机引脚的介绍 (4)3.2 锁存器74HC573引脚的介绍 (6)3.3 译码器74HC138引脚介绍 (7)3.4 放大整形模块 (7)3.5 显示模块设计 (8)3.6 键盘电路设计 (9)3.7 复位电路和时钟产生电路设计 (10)3.8 +5V电源设计 (11)3.9 系统整体原理图 (13)第四章系统软件设计 (13)4.1 主程序流程图 (13)4.2子程序流程图 (14)4.2.1中断服务子程序 (14)4.2.2 显示子程序设计 (15)4.2.3量程转换程序 (16)第五章设计总结与心得体会 (17)参考文献 (19)附录 (20)1、源程序 (20)2、硬件电器总原理图 (25)第一章摘要在单片机技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率计的测量就显得更为重要,测量频率的方法有多种,其中基于单片机的数字频率计时器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。
本次课程设计以AT89S51单片机为控制核心,应用AT89S51单片机、单片机的I/O端口外扩驱动器74HC573和74HC138、LED动态显示等实现对外部信号频率进行准确计数的设计。
电路图设计使用protel绘图软件完成,软件设计方面使用单片机汇编或C语言对各个模块进行编程,最后通过综合测试,实现满足要求的设计方案。
频率测量有两种方法:一是直接测频法,即在一定时间内测量被测信号的个数;而是测周法。
直接测频法适用于高频信号的频率测量,测周法适用于低频信号的频率测量。
关键词:单片机;频率计;测量第二章系统总体方案设计设计要求:使用单片机的定时器/计数器功能,设计频率测量装置。
(1)直接采用AT89S51单片机的I/O端口外扩驱动器,实现LED动态扫描驱动。
(2)采用6位数码管显示输入单片机的外部脉冲频率。
(3)当被测频率fx<100Hz时,采用测周法,显示频率XXX.XXX;当被测频率fx>100Hz 时,采用测频法,显示频率XXXXXX。
(4)利用键盘分段测量和自动分段测量。
(5)完成单脉冲测量,输入脉冲宽度范围是100µs-0.1s,低四位显示脉冲宽度,单位为µs。
2.1 总体思路设计以单片机AT89S51为核心,利用单片机AT89S51的计数/定时器(T1和T0)的功能来实现频率的计数,并且利用单片机的动态扫描把测出的数据送到数字显示电路显示。
利用74HC573驱动数码管,显示电路共由六位LED数码管组成,总体原理框图如图2.1所示。
图2.1 总体设计框图2.2 测频原理测量频率有测周法和测频法两种。
如图2.2和图2.3所示图2.2测周法 图2.3测频法(1)测频法(T 法):通过测量脉冲宽度来确定速度,而脉冲宽度可用内部时钟脉冲数m 表示。
计算公式为:n=60f/2mp (n 为电机转速、f 为单片机内部时钟频率、m 为脉冲数、p 为码盘齿数),适用于低速场合。
(2)测周法(M 法):是计数器在一定时间内对速度的脉冲数,其计算公式为:n=60N/PT (n 为电机转速、N 为脉冲个数、T 为采样周期、P 为码盘齿数),适用于高速场合。
(3)M/T 法是测周法和测频法的结合,在测速过程中,不仅测取速度脉冲的个数m1,同时测取高频时钟脉冲的个数m2,计算公式为:n=(60fm1/Pm2)(n 为电机转速、f 为时钟脉冲频率、P 为码盘齿数),此法在整个测速范围内都有较好的精度。
在以上三种方法中,从测量精度上看,T 法低速时精度最高,但随着转速的增加精度逐渐变差,而M 法在高速时精度较高,低速时精度较低,而M/T 法由于同时对外部脉冲和时钟脉冲计数,因而在整个转速范围内都有较高的精度,精度位于M 法和T 法之间,一般都能满足测量转速要求。
第三章系统硬件设计3.1 AT89S51单片机引脚的介绍应用AT89S51单片机应首先了解其引脚,并熟悉牢记各引脚功能。
目前AT89S51单片机多采用40个引脚的双列直插封装(DIP)式,如图3.1所示。
40个引脚按功能可分为如下3类1、电源及时钟引脚(1)VCC(40)脚:接+5V电源。
(2)GND(20)脚:接数字地。
(3)XTAL1(19脚):片内振荡器反相放大器和时钟发生器电路的输入端。
(4)XTAL2(18脚):片内振荡器反相放大器的输入端。
2、控制引脚(1)RST:复位输入,晶振工作时,RST脚持续2个机器周期高电平将使单片机复位,正常工作时,此引脚为低电平。
(2)EA/Vpp:外部程序存储器访问允许控制端(3)ALE/PR O G: ALE为地址锁存信号输出端;PR O G为该引脚的第二功能,为编程脉冲输入端(4)PSEN:片外程序存储器的读选通信号,低电平有效3、I/O口引脚(1)P0口:8位,漏极开路的双向I/O口。
(2)P1口:8位,准双向I/O口,具有内部上拉电阻。
(3)P2口:8位,准双向I/O口,具有内部上拉电阻。
(4)P3口:8位,准双向I/O口,具有内部上拉电阻,具有第二功能。
12345678910111213141516171819202122232425262728293031323334353637383940图3.1 AT89C51引脚图3.2 锁存器74HC573引脚的介绍112345678910112131415161718192074H C 573图3.2 74HC573引脚图74HC573是一款高速CMOS 器件,是一种带有三态门的8D 锁存器,74HC573的输入是和标准 CMOS 输出兼容的,加上拉电阻,他们能和 LS/ALSTTL 输出兼容。
当锁存使能端LE 为高时,器件的锁存对于数据是透明的(也就是说输出同步),当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。
引脚功能如下:OE 为三态允许控制端,低电平有效D1-D8为数据输入端 Q1-Q8为数据输出端 LE 为锁存控制端 GND 接地(0V) VCC 接电源电压3.3 译码器74HC138引脚介绍3211664587910111213141574H C 138图3.3 74HC138引脚图74HC138是一种3线-8线译码器,有三个数据输入端,经译码产生8种状态,其引脚图如图3.3所示。
当译码器的输入为某一固定编码时,其输出仅有一个固定的引脚输出为低电平,其余的引脚输出为高电平,而输出为低电平的引脚就作为某一锁存器芯片的片选端的控制信号。
引脚功能如下: A 、B 、C 为数据输入端E 1、E2、E3为片选输入端Y0-Y 7为数据输出端Vcc 接电源 GND 接地3.4 放大整形模块由于输入的信号可以是正弦波,三角波等。
而后面的计数电路要求被测信号为矩形波,所以需要设计一个整形电路,在测量的时候,首先通过整形电路将正弦波或者三角波转化成矩形波。
根据上述分析,整形电路由双运算放大器LM358、三极管9013、稳压管IN5233及一些电阻组成。
LM358与周围电阻构成迟滞比较器,外部信号经整形后从三极管的集电极输出给单片机的T1/P305口,具体整形电路如图3.4所示。
外 部P3.5图3.4 整形电路3.5 显示模块设计(1) 数码管介绍常见的数码管由七个条状和一个点状发光二极管管芯制成,叫七段数码管,根据其结构的不同,可分为共阳极数码管和共阴极数码管两种。
根据管脚资料,可以判断使用的是何种接口类型,两种数码管内部原理如图3.5所示。
驱动输入端阳极(公共端 COM )驱动输入端阴极(公共端 COM )图3.5数码管内部原理图LED 数码管中各段发光二极管的伏安特性和普通二极管类似,只是正向压降较大,正向电阻也较大。
在一定范围内,其正向电流与发光亮度成正比。
由于常规的数码管起辉电流只有1~2 mA ,最大极限电流也只有10~30 mA ,所以它的输入端在5 V 电源或高于TTL 高电平(3.5 V)的电路信号相接时,一定要串加限流电阻,以免损坏器件。
(2)频率显示电路及电路原理如下图所示,74HC573的8个输出口接电阻分别接到相应的数码管的8个段码线上,74HC138的6个输出口接电阻接三极管分别接到数码管的位选线上,数码管电路设计不加三极管驱动时,数码管驱动能力小,显示数值看不清,不便于频率值的测量,因此加入三极管9012进行数码管驱动。
本设计使用动态扫描数字显示电路来显示频率的大小,动态扫描就是指我们采用分时的办法,轮流控制各个显示器的COM 端,使各个显示器轮流点亮。
在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。
本次设计使用6位数码管进行频率值显示,具体数码管显示电路如图3.6所示+5图3.6 数码管显示电路3.6 键盘电路设计由于键盘按键数目较少,因此选用独立式键盘。
独立式键盘采用一键一线,各键相互独立,每个按键各接一条I/O口线,通过检测I/O输入线的电平状态,可以很容易地判断哪个按键被按下。
上拉电阻保证按键释放时,输入检测线上有稳定的高电平。
键盘电路如图3.7所示+5V2P1.0P1.1图3.7 键盘电路3.7 复位电路和时钟产生电路设计复位电路和时钟电路是维持单片机最小系统运行的基本模块。
复位是单片机的初始化操作,只要给RESET 引脚加上2个机器周期以上的高电平信号,就可使单片机复位。
复位的主要功能是把PC 初始化为0000H ,使单片机从0000H 单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态,为摆脱死锁状态,也需按复位键重新启动。
在本次设计中选用手动复位,复位电路如图3.8所示。
+5V10u FST图3.8 手动复位电路除PC 之外,复位操作还对其它寄存器有影响,其复位状态如表3.2所示:由表可知,复位时,SP = 07H ;4个I/O 端口P0-P3的引脚均为高电平,这在某些控制应用中,要考虑到引脚的高电平对外部控制电路的影响。
时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地工作。
因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。
单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。