数字频率计设计(PCB图+电路图+源程序) 第6页
AT89C51介绍
AT98C51是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含4k bytes 的可反复擦写的Flash只读程序存储器和128 bytes 的随机存取数据存储器(RAM),器件采用ATMEL公司高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。
图3-7 AT89C51外部引脚图
如图3-7所示,是AT89C51的外部引脚图,下面对其每一个引脚及功能做一下简单介绍。
1. VCC(40):电源+5V。
2. VSS(20):接地,也就是GND。
3. XTL1(19)和XTL2(18):振荡电路。单片机是一种时序电路,必须有脉冲信号才能工作,在它的内部有一个时钟产生电路,有两种振荡方式,一种是内部振荡方式,只要接上两个电容和一个晶振即可;另一种是外部振荡方式,采用外部振荡方式时,需在XTL2 上加外部时钟信号。
4. PSEN(29):片外ROM 选通信号,低电平有效。
5. ALE/PROG(30):地址锁存信号输出端/EPROM 编程脉冲输入端。
6. RST/VPD(9):复位信号输入端/备用电源输入端。
7. EA/VPP(31):内/外部ROM 选择端。
8. P0 口(39-32):双向I/O 口。
9. P1 口(1-8):准双向通用I/0 口。
10. P2 口(21-28):准双向I/0 口。
11. P3 口(10-17):多用途口。
在本课题设计的频率计电路当中,单片机AT89C51是核心元件,它控制着整个电路的运行,包括计数器的开启与关闭、定时器的开启与关闭、外部计数器的开启与关闭、高频信号分频、数据读入、数值转换以及数据显示都是由单片机来控制的。在这个电路中单片机既然要完成上述工作,就要先对单片机做一些相应的操作,只有这样,电路运行时单片机才能知道如何控制整个电路。对单片机的操作主要分为四个步骤:第一步是源代码编辑,在源代码编辑完毕后一定要保存;第二步是编译源代码,编译要靠专业的编译软件。在编写完源代码后,在某个编译软件环境下,一般只要点击工具栏的编译按钮稍等片刻就会出现一个编译信息窗口,如果编译通过就会有编译完成,结果如下:0个警告,0个错误的编译信息,或编译成功的字样;如果编译错误则会出现编译错误的信息并提示错误的行号。第三步是程序仿真,这一步相对来说较为简单。第四步是芯片烧写,把编译通过的程序写入单片机中,这要借助一种硬件工具——编程器(也叫烧录器)。程序烧写到单片机里后,就可以把单片机的芯片插入到提前焊好的电路板上的单片机的底座上了。当整个频率计的电路板制作完成后,运行电路,单片机就可以控制整个电路了。
3.6 数字频率计显示电路
本课题设计的数字频率计的显示电路如图3-8所示,在CON16后面接1602LCD液晶显示器来显示频率值。74HC393的计数结果被单片机的P0、P2口读入,与单片机内部计数值合到一起。再通过乘以16(2.0G档用到)、二进制到十进制转换处等处理后,送入图形液晶显示模块1602LCD中显示出来。在这里之所以要用1602LCD,是因为其占用单片机资源较少,并且还可以显示一些辅助信息。在这里没有用常用的数码管来显示,是由于其工作时需单片机扫描,这样就不能用软件延时了。当然一定要用数码管显示的话,可以采用数码管专用驱动芯片来做一个显示模块。但是这样要比只是用一块液晶显示麻烦一些。
图3-8 频率计显示电路图
图3-9 1602液晶显示器实物
平常我们做电子仪器设计时,在显示部分大多数都是用数码管来显示数值,可能会对液晶显示器不太熟悉,因此在这里单独介绍一下液晶显示器LCD1602。如图3-9所示,是液晶显示器的实物图形,它采用标准的16脚接口,其引脚功能如下:
第1脚:VSS为电源地,接GND.
第2脚:VCC接5V正电源。
第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:RS为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。
第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时间可以写入指令或者显示地址,RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
第6脚:E端为使能端,当E端高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:D0~D7为8位双向数据线。
第15脚:BLA背光电源正极(+5V)输入引脚。
第16脚:BLK背光电源负极,接GND。
1602液晶显示模块内部的控制器共有11条指令,如表3-1所示。它的读写操作、屏幕和光标的操作都是通过指令编程来实现的(说明:1为高电平,0为低电平)。
表3-1 1602液晶模块内部的控制器的控制指令
指 令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0
1.清显示 0 0 0 0 0 0 0 0 0 1
2.光标返回 0 0 0 0 0 0 0 0 1 *
3.置输入模式 0 0 0 0 0 0 0 1 I/D S
4.显示开/关控制 0 0 0 0 0 0 1 D C B
5.光标或字符移动 0 0 0 0 0 1 S/C R/L * *
6.置功能 0 0 0 0 1 DL N F * *
7.置字符发生存储器地址 0 0 0 1 字符发生存储器地址(ACG)
8.置数据存储器地址 0 0 1 显示数据存储器地址(ADD)
9.读忙标志或地址 0 1 BF 计数器地址(AC)
10.写到CGRAM/DDRAM 1 0 要写的数
11.读CGRAM/DDRAM 1 1 读出的数据
指令1:清显示,指令码01H,光标复位到地址00H位置。
指令2:光标复位,光标返回到地址00H。
指令3:光标和和显示模式设置。I/D:光标移动方向,高电平右移,低电平左移。S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平表示无效。
指令4:显示开关控制。D:控制整体的现实的开与关,高电平表示开显示,低电平表示关显示。C:控制光标的开与关,高电平表示有光标,低电平表示无光标。B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:光标或显示移位。S/C:高电平时移动显示的文字,低电平时移动光标。
指令6:功能设置命令。DL:高电平时为4位总线,低电平时为8位总线。N:低电平时为单行显示,高电平时为双行显示。F:低电平时显示5*7的点阵字符,高电平时显示5*10的点阵字符。
指令7:字符发生器RAM地址设置。
指令8:DDRAM地址设置。
指令9:读忙信号和光标地址。BF:为忙标志位,高电平表示忙,此时模块不能接受命令或者数据,如果为低电平表示不忙。
指令10:写数据。
指令11:读数据。
下面是LCD1602液晶显示模块的一些主要技术参数:
1、 逻辑工作电压(VDD):+4.5V~+5.5V
2、 LCD驱动电压(VDD-VL):+4.5~+13.0V
3、 工作温度(Ta):0~60 (常温)/-20~75 (宽温)
4、 工作电流:<2.0Ma
5、 屏幕视域尺寸:62.5*16.1mm
由于1602液晶显示模块可以直接和51系列单片机进行接口,所以在设计该数字频率计时就直接将1602LCD接到了单片机的后面。在图3-8中,我们可以看到在CON16的3脚上接了一个10k电位器PR1,这里的电位器是用来调节液晶显示器的对比度的。当该电位器的旋钮直接和电源端相连时,显示器屏幕的对比度最弱,当其旋钮直接和地端相连时,显示器屏幕的对比度最高。液晶显示器的数据来源是单片机的P1口,当单片机的T1端口由高电平跳变成低电平时,液晶显示器开始执行命令,并最终显示出频率的数值。
3.7 时钟控制电路
时钟控制电路如图3-10所示。制作频率计的关键点在于时基信号的准确性和稳定性,它决定频率计的计数精度。在这里选用11.0592的晶振组成的电路来作为单片机AT89C51的时钟电路,由单片机用软件方法得到所需的门控信号。许多用单片机做的频率计用的时基都是单片机通过中断方式获得,由于AT89C51中断方式工作时存在有延时问题,这在低分辨率下可以忽略,但对大于100MHz时的1Hz的分辨率是不能忽略的。所以在这个设计当中,时基的获得没有使用中断而是直接使用软件延时得到的。
图3-10 时钟控制电路图
3.8 电源电路
图3-11 频率计电源电路图
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
数字频率计设计(PCB图+电路图+源程序) 第6页下载如图片无法显示或论文不完整,请联系qq752018766