基于C51单片机数字频率计课程设计资料(3)

2020-02-21 22:49

(华)课程设计

4.2)寄存器选择功能表 RS 0 0 1 1 R/W 0 1 0 1 操 作 指令寄存器(IR)写入 忙标志和地址计数器读出 数据寄存器(DR)写入 数据寄存器读出 (注:忙标志为\1\时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结束,即忙标志为\0\时。)

4.3) 指令功能

格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 共11种指令:清除,返回,输入方式设置,显示开关,控制,移位,功能设置,CGRAM地址设置,DDRAM地址设置,读忙标志,写数据到CG/DDRAM,读数据由CG/DDRAM。

5)、显示位与DD RAM 地址的对应关系

显 示 位 序 号 DD RAM 地址(HEX) 第 一 行 第 二 行 1 2 3 4 5 …………… 40 00 01 02 03 04 ..………….. 27 40 41 42 43 44 …………… 67 6)、初始化方法

用户所编的显示程序,开始必须进行初始化,否则模块无法正常显示,下面介绍两种初始化方法;

6.1)利用内部复位电路进行初始化

下面指令是在初始化过程中执行的。 (1)清屏(DISPLAY CLEAR); (2)功能设置(FUNCTION SET);

DL = 1: 8Bit 接口数据;

N = 0: 1行显示; F = 0:5×7dot字形;

(3)显示开/关控制(DISPLAY ON/OFF CONTROL)

D = 0: 显示关; C = 0: 光标关; B = 0: 消隐关

(4)输入方式设置(ENTRY MODE SET )

I/D = 1:(增量): S = 0: 无移位:

6.2) 软件复位

如果电路电源不能满足复位电路的要求的话,那么初始化就要用软件来实现,过

11

(华)课程设计

程如下:

八位接口初始化流程图:

电 源 开

↓ VDD 上升到4.5V后等待>15

↓ RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

0 0 0 0 1 1 × × × × ↓等待>4.1ms

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

0 0 0 0 1 1 × × × × ↓等待>100us

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 × × × × ↓检查忙标志或延时40us

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 N F × × ↓检查忙标志或延时40us

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 1 0 × × ↓检查忙标志或延时40 us

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 0 0 1 ↓检查忙标志或延时1.64us

↓检查忙标志或延时40us

初 始 化 结 束

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 1 I/D S

12

(华)课程设计

3软件设计

3.1量程转换

从计数器采集到的频率数据是十六进制的,如果直接把这些数据送给数码管显示显然很不直观,因此需要把这些数据向十进制转换。

3.2 BCD转换

这种测量方法是先通过F/V变换,把频率信号转换成电压信号;然后再通过A/D转换把电压信号转换成数字信号,在对数字信号进行计数,从而得到测量信号的频率。

根据性能与技术指标的要求,首先需要确定能满足这些指标的频率测量方法,根据上述频率测量原理与方法的讨论,本设计采用测频法。由于测频法的测量误差与信号频率成反比:信号频率越低,测量误差越大,信号频率越高,测量误差越小。用测频发所获得的测量数据,在闸门时间为1S时,不需要进行任何换算,计数器所计数据就是信号频率,另外,在信号频率较低时,可以通过增大闸门时间来提高测量精。

3.3 LCD显示的功能

单片机当C/T=1时为计数方式,多路开关与定时器的外部引脚连通,外部计数脉冲由引脚输入。当外部信号由1至0跳变时,计数器加1,此时T0成为外部事件的计数器。由于确认一次由1至0的跳变要用24个振荡器周期,所以计数器的计数频率为单片机内部计数器频率的1/24。

当C/T=0时为定时方式,对单片机内部计数器进行m2分频后,计数器的实际计数频率为单片机内部频率凡的1/m2。

当GATE=0时,反相器输出为1,或门输出为1,打开与门,使定时器的启动仅受TRO端信号电平的控制。

在此种情况下,INT0引脚的电平变化对或门不起作用。TRO=1时接通控制开关,计数脉冲加到计数器上,每来一个计数脉冲,计数器加1,只有当TRO=0时,控制开关断开,计数器停止计数。

当GATA=0时,若TRO=1,或门、与门全部打开,外部信号电平通过INTO引脚直接控制定时器的启动和关闭。输人高电平时允许计数,否则停止计数。

根据定时器的结构原理,若我们将GATE位、TR0均设为‘1’,INT0端输人被测频率信号,当被测信号的高电平到来时,开始计数;当被测信号的低电平到来时,计数器停止计数,此时TL0、TH0的数据就是相应的N值。

13

(华)课程设计

4模块电路仿真

PROTEUS软件自带编辑器,可以实现对汇编程序的编译,其操作步骤是: 1) 新建源文件:点菜单Source→Add/Remove source Files在出现的对话框中,

选择ASEM51编辑器,新建JIE.asm 源文件。

2) 程序设计:点菜单Source→JIE.asm打开源文件编辑器,将将附录程序输入到

文本中。

3) 源程序编译:点菜单Source→Build ALL编译汇编源程序,生成目标代码文件

PMD.HEX,若编译失败,可对程序进行修改调试直至编译成功。

4) 目标代码加载:在PROTEUS编辑环境双击AT89C51,弹出如图4.6所示的

对话框,在PROGRAM FILE一栏中单击打开按钮,选中JIE.HEX文件。在

CLOCK FREQUENCY栏中设置系统工作频率为12MHz,单击OK完成目

标代码加载。

图4.1 程序代码加载

14

(华)课程设计

最后,点击运行按钮,启动系统仿真,启动前图中输入信号、LCD处于初始化状态。仿真结果如图4.2所示。

图4.2 仿真结果

15


基于C51单片机数字频率计课程设计资料(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:商品房抵押贷款合同范本

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: