版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、存档日期:存档日期: 存档编号:存档编号: 本科生毕业设计(论文)本科生毕业设计(论文) 论论 文文 题题 目:目:基于 fpga 和 mcu 的相位测量仪的设计 学学 院:院: 电气工程及自动化学院 专专 业:业: 电气工程及其自动化 xxxx 大学教务处印制大学教务处印制 摘摘 要要 随着社会和历史的不断进步,相位测量技术广泛应用于国防、科研、生产 等各个领域,对相位测量的要求也逐步向高精度、高智能化方向发展,在低频 范围内,数字式相位测量仪因其高精度的测量分辨率以及高度的智能化、直观 化的特点得到越来越广泛的应用。 本文首先论述了相位测量技术的国内外发展概况,并根据现状设计了此相 位测量
2、系统。该设计包括系统设计的理论分析,系统结构设计及硬件实现,最 终验证了该测量系统的可行性和有效性。 该设计采用单片机与 fpga 相结合的电路实现方案,很好地发挥了 fpga 的运 算速度快、资源丰富、编程方便的特点,并利用了单片机的较强运算、控制功能,使 得整个系统模块化、硬件电路简单、使用操作方便。文章主要介绍设计方案的 论证、系统硬件和软件的设计,给出了详细的系统硬件电路图和系统软件主程序 流程图。 关键词关键词: : 数字式相位测量仪 单片机 fpga 设计方案 abstract along with the social and historical progress, phase
3、 measurement technology is widely used in national defense, scientific research, production and other fields, on the phase measurement requirements are also gradually to high precision, high intelligent direction, in the range of low frequency digital phase measurement instrument, because of its hig
4、h precision measurement resolution and highly intelligent, intuitive characteristics have been more and more widely applied. this text first discusses the phase measuring technology development in domestic and international, and according to the present situation designs the phase measuring system.
5、the design includes system design theory analysis, system structure design and hardware realization, finally verified the feasibility and validity of the system. the combination of mcu and fpga is adopted in the design .it has the features of fpga high operating speed, abundant resources and conveni
6、ent programming. and the use of mcus strong operation and control function, which makes the whole system modularized, the hardware circuit is simple and the operation is convenient. the paper mainly introduces the designs of the demonstration, hardware and software, the hardware circuits and main so
7、ftware program are given in detail. keywords: digital phase measuring instrument mcu fpga design strategy 目目 录录 摘摘 要要 .i i abstractabstract .iiii 1 1 绪绪 论论 .1 1.1 课题背景及研究意义 .1 1.2 国内外发展动态 .1 1.3 课题设计任务 .3 2 2 设计方案论证设计方案论证 .4 2.1 以 mcu 为核心的实现方案 .4 2.2 以 mcu 和 fpga 相结合的实现方案 .8 2.3 两个设计方案的比较 .11 3 3 系统
8、硬件设计系统硬件设计 .13 3.1 输入模块设计 .13 3.2 基于 fpga 的数据采集模块设计 .14 3.3 基于 mcu 的数据处理模块设计 .16 3.4 显示模块设计 .20 4 4 系统软件设计系统软件设计 .20 4.1 fpga 的 verilog hdl 程序设计 .20 4.2 mcu 的汇编语言程序设计.24 5 5 系统设计总结系统设计总结 .29 致致 谢谢 .30 参考文献参考文献 .31 附录附录 1 1.32 附录附录 2 2.33 1 绪 论 1.1 课题背景及研究意义 随着社会和历史的不断进步,科学技术突飞猛进的发展,电子技术广泛应 用于工业、交通、国
9、防、科研、生产等各个领域,而相位测量技术又是电子技 术中进行信息检测的重要手段,在现代科学技术中占有举足轻重的作用和地位。 对相位测量的要求也逐步向高精度、高智能化方向发展。在低频范围内,相位 测量在电力、机械等部门有着尤其重要的意义,对于低频相位的测量,用传统 的模拟指针式仪表显然不能够满足所需的精度要求,随着电子技术以及微机技 术的发展,数字式仪表因其高精度的测量分辨率以及高度的智能化、直观化的 特点得到越来越广泛的应用。 相位差是工业测控领域经常需要测量的参数,如电力系统中功率因数的测 量、铁路系统中相敏轨道电路相位差的测量以及科氏质量流量计中的相位差测 量等等。而相位差的测量又不同于传
10、统的电压、电流信号或物位、温度量的测 量。首先,相位差信号依附于电压、电流信号中,如何剔除电压、电流、频率 变化对相位差测量的影响是相位差测量中很重要的一个方面;其次相位差是一 个比较量,测量两路信号之间的相位差不仅需要保证两路信号的频率相同,而 且要排除由于两路信号的幅值等其它因素不一致而对测量造成的影响。因此, 如何准确可靠地测量相位差是值得研究的课题1。 相位测量仪的用途极为广泛,可以测量两电压、两电流及电压电流之间的 相位,是电力部门、工厂和矿山、石油化工、冶金系统正确把握电力使用情况 的理想仪表。相位测量仪可应用于变压器件生产厂,收录机,电视机,整机生 产厂或有关科研单位,作为产品验
11、收,检验,样品分析的测试仪器,是提高产 品质量和工作效率的最佳辅助工具。 1.2 国内外发展动态 经过几十年,特别是近十几年的建设与发展,我国仪器仪表行业已经初步 形成产品门类品种比较齐全,具有一定生产规模和开发能力的产业体系,成为 亚洲除日本以外第二大仪器仪表生产国。而数字化测量技术则已经成为数字化 制造技术的一个不可或缺的关键组成部分,采用适度先进的信息化数字测量技 术和产品来迅速提升我国装备制造业水平,是当前一个重要的发展方向。 传统的测量方法很多,有示波器测量法,可变延迟法,基于数据采集板的 相位测量新方法,将相位差转化为时间间隔法,电压测量法,示零法等。 通常的测量方法是对两路输入信
12、号进行处理,应用过零检测的方法使其变 换成两个方波,然后对这两个方波进行比较得到鉴相脉冲,即相位差脉宽。再 由鉴相脉冲来控制计数器的关停,即用高频时钟脉冲去填充两个信号的相位差, 从而实现相位差的测量。 相位的数字测量方法基本分为硬件电路测量和 a/d 采样后利用软件计算两 种。硬件法测量由于电路结构比较复杂、易受外界干扰影响以及准确度较差的 缺点,限制了它的进一步发展。近年来,随着计算机软硬件及其外围设备的日 益发展,以数字信号处理为核心的软件法测量技术在相位差的测量中得到了越 来越多的关注,并取得了较快的发展。 fpga 是 20 世纪 90 年代发展起来的大规模可编程逻辑器件,随着 ed
13、a(电 子设计自动化)技术和微电子技术的进步,fpga 在超高速、实时测控方面有非 常广阔的应用前景;并且 fpga 具有高集成度、高可靠性,几乎可将整个设计系 统下载于同一芯片中,从而大大缩小了电路的体积2。 目前,单片机的主流仍然是 8 位高性能单片机。其发展具体体现在 cpu 功 能的增强,内部资源的增多,引脚的多功能化、低电压、低功耗等方面。单片 机的发展是为了满足不断增长的自动检测、控制的要求,具体体现在传感器的 接口、各种工业对象的电气接口、功率驱动接口、人机接口、通信网络接口等。 这些接口性能的发展体现在高速的 i/o 能力、程序运行监控能力、信号实时处 理能力等。总之,单片机将
14、向高性能、高可靠性、低电压、低功耗、低噪音、 低成本的方向发展1。 现在采用单片机与 fpga 相结合的电路实现方案,很好地发挥了 fpga 运算速 度快、资源丰富、编程方便的特点,并利用了单片机较强的运算、控制功能,使 得整个系统模块化、硬件电路简单、使用操作方便。而且可以很好地完成该设 计所要求的各项指标。 1.3 课题设计任务 设计一个低频数字式相位测量仪,要具有频率测量和数字显示功能,并且 要求能提高测量、显示精度和系统稳定性,使显示结果更加精确。其设计示意 图如图 1-1 所示。 数字显示相位测量 a 输入 b 输 入 图 1-1 相位测量仪示意图 该设计要满足的要求有:频率范围:2
15、0hz20khz、相位测量仪的输入阻抗 100、允许两路输入正弦信号峰-峰值可分别在 1v5v 范围内变化、相位 测量绝对误差2、具有频率测量及数字显示功能、相位差数字显示:相位读 数为 0359.9,分辨率为 0.1。 2 设计方案论证 从功能角度来看,相位测量仪要完成信号频率的测量和相位差的测量。相 位测量仪有两路输入信号,也就是被测信号,它们是两个同频率的正弦信号, 频率范围为 20hz20khz(正好是音频范围) ,而这两个被测信号的幅度分别为 up-p=1v5v(可以扩展到 0.3v5v) ,但两者幅度不一定相等。 不妨令两个同频率的正弦信号为,则相位差 )sin()( )sin()
16、( 0222 0111 tata tata m m ,由此可以看出,相位差在数值上等于初相 02010201 )()(tt 位之差, 是一个角度。 令,式中是相位差 对应的时间差,且令为信号周期,则有 t tt 360,由此可以看出,相位差 与有一一对应的关系,我们可以 t t t 通过测量时间差及信号周期而计算出相位差 ,这就是相位差测量的基本 tt 原理。因此,相位差的测量本质上就是时间的测量,而时间的测量就要用到电 子计数器5。 时间的测量方法有很多种,而本设计关于相位测量仪的技术指标要求会影 响到我们对方案的选择。我们知道,mcu 应用系统一般能较好地实现各种不同 的测量和控制功能,但
17、有的时候却达不到设计要求的技术指标。而 fpga 具有集 成度高,i/o 资源丰富,稳定可靠,工作速度快,可现场在线编程等优点,往 往能满足一些设计要求比较高的技术指标。因此,人们在进行电子系统设计的 时候,用 mcu 实现系统功能,fpga 完成系统指标。 2.1 以 mcu 为核心的实现方案 以单片机为核心的相位测量仪的原理框图如图 2-1 所示。 鉴 相 器 整形电路 整形电路 mcu inti 键盘 显示 待测信号1 待测信号2 图 2-1 以 mcu 为核心的相位测量仪的原理框图 两路待测信号经电路整形后变成了矩形波信号、,而且和是同频 率但不同相位的矩形波。 mcu 对信号频率的测
18、量可以采用直接测量频率法和测量周期法。当信号频 率较高时,我们一般采用直接测量频率的方法,而信号频率较低时,则采用测 量周期的方法。 (1) 直接测频率的方法测信号频率 用定时器/计数器对外部事件计数,并让定时器/计数器定时 1s,只 1 t 0 t 有在这 1s 内启动对外部事件(即信号)计数,的计数值就是待测信号 1 t 1 t 的频率。 (2) 测周期的方法测量信号频率 对信号进行二分频,分频后高电平的宽度正好对应信号的周期,我 们将此高电平信号作为 mcu 内部定时器的硬件启动/停止信号,便可测得周期 ,再由公式,计算得到频率。t t f 1 f 在对相位差进行测量时,我们采用的是测量
19、信号、相位差所对应的 时间差,再根据公式 t (2- t 1) 通过计算求出相位差 。 mcs-51 系列单片机芯片内部集成了两个 16 位的硬件定时器/计数器,他们 是、,均是二进制加法计数器,当计数器计满回零时能自动产生溢出中断 0 t 1 t 请求,表示定时时间已到或计数已终止。mcu 芯片内部的硬件定时器/计数器有 3 个特点:定时器/计数器可以与 cpu 并行工作;定时器/计数器可以采用中断 方式与系统协调工作;定时器/计数器可以由软件或硬件控制启动或停止。 单片机的定时器/计数器受 tmod 及 tcon 的控制,如图 2-2 所示。 tmod tcon t1 t0 1 tf 1
20、tr 0 tf 0 tr 1 ie 1 it 0 ie 0 it 图 2-2 tmod 及 tcon 的控制 (1) 若 gate=0,则由控制定时器/计数器的启动和停止。 i tr (2) 若 gate=1,=1,则由引脚的外部信号控制定时器/计数器的启动 i tr i tni 和停止。 (3) 若 gate=1,则由和引脚的外部信号混合控制定时器/计数器的启 i tr i tni 动和停止。 我们让定时器/计数器工作在定时工作方式,其计数器对内部机器周期进行 加 1 计数,而定时器/计数器的工作启动、停止则采用外部硬件控制。 该方案实现的电路图如图 2-3 所示,该电路由整形电路、门电路、
21、单片机 等部分组成,由定时器/计数器、分别测量周期和时间差。 0 t 1 t gate tc / 1 m 0 m gate tc / 1 m 0 m 待测信号1 整形电路 整形电路 二分频 =1 mcu-51 _ int0 (p3.2) p3.6 _ int1 (p3.3) 1 待测信号2 图 2-3 mcu 测量时间差和周期的电路图 需要说明的是,本系统要由软件创建一个标志位 2fh.1,当输入引脚 p3.6=0 时,cpu 置位标志位 2fh.1,而当 p3.6=1 时,cpu 在读取时间差数据后 清零标志位 2fh.1。在引脚 p3.6 的信号高电平期间 cpu 读数据一次,标志位 2f
22、h.1 用于保证在 p3.6=1 期间只读一次数据。 再设计 mcu 的软件时,系统要连续 3 次测量时间差和周期,每一次测量时 间差和周期占用两个待测信号周期 t 的时间。mcu 在处理数据(数字滤波、计 算、数据显示、键盘处理)期间,使用软件停止定时器工作。显示部分采用 uart 方式 0 串行送数据给 74ls164,由 74ls164 驱动 led 数码管显示,这样可 以减轻 cpu 的负担(相对动态扫描而言)。键盘处理实际上就是一个按键切 1 s 换显示不同的内容,即显示频率或相位差5。 系统主程序是一个顺序执行的循环程序,其流程图如图 2-4 所示。子程序 sub1 完成的功能是:
23、执行 3 次测量时间差和周期,并保存到内存中,子程序 sub1 的流程图如图 2-5 所示。因为第 1 次测量时间差和周期的起始时刻有一定 的随机性,这是由于软件启动定时器/计数器、的时刻是随机的,因此定时 0 t 1 t 器/计数器、第 1 次测得的时间差和周期是不准确的,所以舍弃不要。 0 t 1 t 开始 系统初始化 ) 1 , 0( 1itri 调用子程序 sub1:执 行 3 次并保存到内存 0 i tr 中值数字滤波 计算频率、相位差 送数据显示 键盘处理 入口 (r4 是计数器)4 4 r p3.6=1? 2fh.1=1? ?4 4 r 保存周期 th0、tl0 保存时间差 th
24、1、tl1 清零定时器 t0、t1 清零标志位 2fh.1 1 4 r ?0 4 r 出口 setb 2fh.1 n n n n y y 图 2-4 主程序流程图 图 2-5 sub1 流程图 2.2 以 mcu 和 fpga 相结合的实现方案 系统主要由现场可编程门阵列 fpga 和 mcu 组成,其原理框图如图 2-6 所示。 整形电路 整形电路 fpga mcu 显 示 待测信号 1 待测信号 2 a b 图 2-6 以 fpga 和 mcu 相结合的相位测量仪电路 本设计采用单片机和现场可编程门阵列(fpga)作为数字相位测量仪的核 心部分。考虑到 fpga 具有集成度高,i/o 资源
25、丰富,稳定可靠,可现场在线编 程等优点,而单片机具有很好的人机接口和运算控制功能,本设计拟用 fpga 和 单片机相结合,来完成整个测控的主体部分。其中,让 fpga 实现两个待测信号 相位差所对应的时间差的采集,而 mcu 则负责读取 fpga 采集到的数据,并根据 这些数据计算待测信号的相位差,同时把得到的信号频率和相位差送到 led 数 码管显示3。 (1)fpga 的工作情况 待测信号 1 和待测信号 2 经整形电路整形后,变为两个矩形波,令它们为 a、b。并且,a、b 是两个频率相同但是有相位差的矩形波。信号 a、b 进入 fpga 后,经过其处理获得以二进制形式表示的信号频率以及相
26、位差所对应的时 间差。 对频率的测量采用测周期的方法,即在信号周期 t 时间内,对时标信号进 行计数。设时标信号频率为,时标信号周期为,对信号 a 二分频后的信号 0 f 0 t 的高电平宽度就是信号周期 t,以此高电平宽度作为控制信号来控制计数器在 时间 t 内对进行计数,则有 0 f (2-tfn 01/ 4) 则被测信号的频率为: (2- 10/ /1nftf 5) 上式中,是计数器的计数值,当一定时,它的大小表示信号频率的大小。 1 n 0 f 相位差对应的时间差的测量跟频率测量的方法类似,不过闸门控制信号 t 为的高电平宽度,则有ba (2- tfn 02/ 6) 因为相位差的绝对误
27、差,而 fpga 在测量时有一个字的误差,对待测2 t 信号频率而言,有khzf20 (2- st 50 3602 7) 可以得到 ,这就是说,fpga 在采集相位差对应的时间差时,st 278 . 0 t 至少要能分辨出的时间间隔。为了兼顾 mcu 计算的方便和时标信号获得s278 . 0 的方便,我们采用的是,即的时钟脉冲作为时标信号。st1 . 0 0 mhzf10 0 当选定后,就可以确定 fpga 采用的二进制数据的位数。对于mhzf10 0 待测信号频率而言,对应取最大值,因为时,周期hzf20 1 nhzf20 ,在 50ms 内对计数,计数值为,然而,mst50 0 t5000
28、001 . 0/50 1 smsn ,所以有262144218524288219 (2- 1918 25000002 8) 故 fpga 的二进制数据位的位数应为 19 位。 (2)mcu 的工作情况 mcu 要从 fpga 中获得两种数据,这两种数据都是 19 位无符号二进制数。 一种是被测信号周期 t 所对应的二进制数据(单位是 0.1) ;另一种是两个待s 测信号的相位差所对应的时间差(单位是 0.1) 。这样一来,fpga 和 mcu ts 之间要有握手信号,因此设置两个握手信号 dsel、fen。实际上,dsel 和 fen 是 mcu 发给 fpga 的控制信号,设置情况如下: a
29、. dsel=0 且 fen=1 时,mcu 从 fpga 中读取 19 位的周期数据。 b.dsel=1 且 fen=1 时,mcu 从 fpga 中读取 19 位的时间差数据。 c.fen=0 时,fpga 内部电路不予理睬。 mcu 要完成的任务有 3 个:一是从 fpga 中获得 19 位的二进制数据,并控 制 fpga 的工作;二是对时所获得的数据进行处理(完全由软件实现) ;三是将 处理后的数据送给 led 数码管显示。由于送到 led 数码管显示的数据有频率和 相位差两种,所以应设置一个按键开关,以便实现显示内容的切换。 2.3 两个设计方案的比较 上述所提出的以 mcu 为核心
30、的系统可以实现对频率的测量和对相位差的测 量。但是,该系统不一定该设计所要求的技术指标。而且在同一个单片机应用 程序中实现频率和相位差的测量,程序设计也相当复杂。 根据设计要求,输入信号频率范围是 20hz20khz,相位测量绝对误差 2在采用以 mcu 为核心的设计相位测量仪时,令单片机的外接晶振为 12mhz, 则定时器/计数器的计数误差为正负一个机器周期,即1s 。 当输入信号频率时,输入周期则为,可以认为定时器/khzf20st50 计数器的计数误差为1 个字。此时的相位绝对误差为 7.2,其计算过程如下: (2-:1360:50ss 2) 由公式(2-2)可以推导出 (2-2 . 7
31、50)1360(ss 3) 同理,若外接晶振为 24mhz 时,相位差绝对误差为。这不满足相位测6 . 3 量绝对误差2的要求。所以以单片机为核心的设计方案当待测信号频率较高 时很难满足设计要求。 以 fpga 和 mcu 相结合的设计方案中,让 fpga 实现两路待测信号的相位差 所对应的时间差的采集,而 mcu 则负责读取 fpga 采集到的数据,并根据这些数 据计算待测信号的相位差,同时把得到的信号频率和相位差送到 led 数码管显 示。 fpga 在采集相位差对应的时间差时,至少要能分辨出的时间间 ts278 . 0 隔。为了兼顾 mcu 计算的方便和时标信号获得的方便,我们采用的是,
32、st1 . 0 0 即的时钟脉冲作为时标信号。mhzf10 0 mcu 要完成的任务有 3 个:一是从 fpga 中获得 19 位的二进制数据,并控 制 fpga 的工作;二是对时所获得的数据进行处理(完全由软件实现) ;三是将 处理后的数据送给 led 数码管显示。 这种设计方案发挥了单片机控制运算能力强的特点,同时也充分的利用了 fpga 数据采样速度快、资源丰富的特点。将数据采集交 fpga 完成,可以准确 的采集到两个同频正弦信号的相位差所对应的时间差以及信号的周期,从而提 高了系统的可靠性。由于单片机具有较强的运算、控制能力,因此,我们使用 单片机最小系统完成读取 fpga 的数据,
33、并根据所读取的数据计算待测信号的频 率及两路同频信号之间的相位差,同时通过功能键切换,由显示模块可以显示 待测信号的频率和相位差。所以,我们最终采用以 fpga 和 mcu 相结合的设计方 案。 3 系统硬件设计 本设计采用 fpga 和 mcu 相结合的方案来完成低频数字式相位测量仪的设 计。单片机与 fpga 相结合的方案,将系统的硬件部分分为数据采样处理和单片 机最小系统两部分。 3.1 输入模块设计 而被测信号是周期相同,幅度和相位不同的两路正弦信号,所以为了准输 入电路起到波形变换及整形的作用。由于 fpga 对脉冲信号比较敏感,为了准确 的测量出两路正弦信号的相位差及其频率,需要对
34、输入波形进行整形,使输入 信号变成矩形波信号,并送给 fpga 进行处理。 我们知道,通常情况下,输入信号往往会含有干扰,这样单门限电压比较 器的整形电路整形就不太准确。由于有干扰信号,导致单门限电压比较器在输 入信号过零点时会产生多次触发翻转的现象,这样就会导致 fpga 采集数据(计 数)不准确,从而使单片机无法计算出正确的被测信号的频率和相位差的数值。 在相位差测量过程中,不允许两路被测信号在整形后发生相对相移,或者 应该使得两路被测信号在整形输入电路中引起的附加相移是相同的。因此,我 们在对 a、b 两路信号整形时要采用相同的整形电路。为了避免被测输入信号在 过零点时多次触发翻转的现象
35、,我们决定采用由施密特触发器组成的整形电路。 施密特触发器在单门限电压比较器的基础上引入了正反馈网络。因为正反 馈的作用,它的门限电压随着输出电压的变化而改变。因为施密特触发器有 0 u 两个门限电压,所以可以提高输入电路的抗干扰能力,其电路原理图如图 3-1 所示。电路中使用两个施密特触发器对两路被测输入信号进行整行,在图中, 比较器 lm339 连接成施密特触发器的形式,为了保证输入电路在相位差测量的 时候不会有误差,必须保证两个施密特触发器的两个门限电平对应相等,这可 以通过调节电位器来使得两个施密特触发器的门限电平对应相等3。 8 r 123456 a b c d 654321 d c
36、 b a t itle num berrevisionsize b date:1-j un-2011 sheet of file:d:prot el_99_se_cnex am plesm ydesign.ddbdrawn by: uia lm 339 lm 339 r1 10k r9 10k r3 10k r4 100 r5 10k 1 2 3 j4 con3 ains gnd bin s r6 510 r7 100 r2 510 r8 10k uib gnd gnd gnd gnd +5v +5v +5v +5v bin ain 图 3-1 由施密特触发器构成的整形电路 由上图分析计算有:
37、 (3-vu rrr r uu kpn 0471 . 0 654 4 1) 则其阀值电压。当输入的正弦信号电压大于vuvu tt 0471 . 0 ,0471 . 0 时,输出电压等于;当输入的正弦信号电压小于时,输出电压等于 n u t u n u 。 t u 3.2 基于 fpga 的数据采集模块设计 设计中,我们选择的是 altera 公司的 fpga,芯片型号为 epf10k10lc84- 4。本设计充分利用了 fpga 可编程资源多、速度快、口线多、实时采样性好等 特点。该芯片特点如下5: 1. 高密度 典型门为 30000 个,可用门为 119000 个,逻辑单元为 1728 个,
38、嵌入式阵 列块(eab)为 6 个,24576 个内部 ram,可用 i/o 为 102 个。 2. 低功耗和多电压 i/o 接口 该器件的核心电压为 2.5v 供电,功耗小,支持高电压 i/o 接口,引脚可以 与 2.5v、3.3v、5v 电压器件兼容,并且可以进行摆率控制和漏极开路输出。 3. 增强型嵌入式结构 每个 eab 有以 25616、5128、10244、20482 位任意组合的 ram, 可做单口 ram,也可以设计成双口 ram。 4. 时钟锁定和时钟自举 该器件为设计人员提供了可供选择的时钟锁定(clock lock)和时钟自举 (clock boost)电路。这两种电路都
39、含有锁相环(pll) ,时钟锁定电路为一个同 步的 pll,可以减小器件内的时钟延迟和偏移。时钟自举电路提供了一个时钟 乘法器,可以很容易的实现时域逻辑乘法,并减少资源的使用。 epf10k10lc84-4 能够满足多功能、低功耗、低成本、高性能的系统设计。 fpga 电路的设计我们采用实验室已有的 fpga 适配板来实现,该适配板包含芯 片 epf10k10lc84-4、下载电路、fpga 配置存储器、fpga 内部所需电源模块等。 当 fpga 配置存储器中下载配置文件后,该适配板只需要接入+5v 电源就可以正 常工作与用户应用系统中。 为了进一步提高测量精度,同时便于计算,我们采用 10
40、mhz 的矩形波信号 作为 fpga 数据采样的信号。fpga 在 10mhz 时钟信号作用下对待测信号周期进 行计数,并对两个同频率的正弦波信号的相位差所对应的时间差进行计数,分 别得到 19 位数字量,其物理单位是 0.1s。fpga 的时钟信号 clk 采用 40mhz 四引脚石英晶体多谢振荡器信号源,由 fpga 内部的分频模块对 40mhz 信号进行 四分频,得到 10mhz 的数据采样时标信号,采样周期为 0.1s。fpga 与单片机 的连接框图如图 3-2 所示。 clka clkb fpga 适配板 fen dsel clk a t 8 9 c 5 1 ain bin 40mh
41、z 石英晶 体多谐振荡器 图 3-2 fpga 与单片机的连接图 从 fpga 中获得的数据要通过 19 位数据接口送到单片机中,其引脚端口对 应的关系如表 3-1 所示。 表 3-1 引脚端口对应关系 at89c51p0.0p0.1p0.2p0.3p0.4p0.5p0.6p0.7 fpga 引脚名称 p28p53p55p57p59p61p62p82 fpga 引脚号 pin28pin53pin55pin57pin59pin61pin62pin82 p0 口 引脚定义 data0data1data2data3data4data5data6data7 at89c51p2.0p2.1p2.2p2.
42、3p2.4p2.5p2.6p2.7 fpga 引脚名称 p130p128p126p124p100io38io36io34 fpga 引脚号 pin130pin128pin126pin124pin100pin83pin77pin75 p2 口 引脚定义 data8data9data10data11data12data13data14data15 at89c51p1.0p1.1p1.2p1.3p1.4p1.5 fpga 引脚名称 p31p54p56p58ncp60 fpga 引脚号 pin31pin54pin56pin58 空端口 pin60 p1 口 引脚定义 data16data17data1
43、8rsel 无 en 3.3 基于 mcu 的数据处理模块设计 这部分电路由单片机、晶振电路、按键电路等组成。该电路充分地利用了 单片机的较强的运算能力和控制能力:使用单片机的 p0 口、p2 口以及 p1.0、p1.1、p1.2 接受 fpga 发送过来的对应的被测输入信号的周期和相位差 的 19 位二进制数据,并且在单片机内部完成对这 19 位二进制数据的处理和相 关运算。p1 口的 p1.6、p1.7 接入两个轻触按键,结合软件编程来实现频率与 相位差显示切换功能。单片机完成对 fpga 的控制,使 fpga 按照单片机的要求 通过 19 根 i/o 连接线分别发送被测输入信号的周期和相
44、位差所对应的时间差的 数据。fpga 和 mcu 的握手信号 fen 和 dsel 分别接在 p1.3 和 p1.5 引脚,即 pin4 和 pin6。除此之外,在设计中还要用到单片机的串口 uart,将待显示的 信息送给显示模块显示。 该模块使用的单片机型号为 at89c51,它是美国 atmel 公司生产的 8 位单 片机。该器件采用 atmel 高密度非易失存储器制造技术,与工业标准的 mcs-51 指令集和输出管脚相兼容。由于将多功能 8 位 cpu 和闪烁存储器组合在一个芯 片中,atmel 的 at89c51 是一种高效率的微处理器,为很多嵌入式控制系统提 供了一种灵活方便且物美价
45、廉的方案。 at89c51 的主要特性有:片内数据存储器内含有 128 字节的 ram;与 mcs- 51 相兼容;内部集成有 4kb 的 flash 的存储器;允许在线编程擦写 1000 次; 具有 32 根可编程 i/o 线;数据可保留 10 年;具有两个 16 位可编程定时器;5 个中断源;024mhz 全静态工作方式;低功耗的闲置和掉电模式;片内含振荡 器和时钟电路;可编程串行通道;具有掉电状态下的中断回复模式 基于以上特性,at89c51 完全可以满足本设计的需要。它要构成最小系统 时只要将单片机接上外部的晶体、时钟电路和复位电路即可。为了提高 mcu 的 i/o 口带负载的能力,本
46、设计中加入了 3 个上拉排电阻。该设计采用的是上电 自动复位和按键手动复位电路,如图 3-3 所示。按下按键 s,电源对 c 充电, 使 reset 端快速达到高电平,松开按键,c 向芯片的内阻放电,恢复为低电平, 从而使单片机可靠复位。即可上电复位,又可按键复位,一般 r1 选 470,r2 选 8.2k,c 选 22f1。 123456 a b c d 654321 d c b a t itle num berr e visions iz e b da te :11-m a y-2012s hee t of f ile:d:pr ot el_99_s e_c nex am ples m y
47、de sign.ddbdrawn b y: r 1 r 2 c 22f s r es et at 89c 51 v c c gnd 图 3-3 上电/ 按键手动复位电路 片内振荡电路输出端要接晶体振荡器与电路构成的稳定的自激振荡器,最 常见的接法如图 3-4 所示。其中晶振可选用振荡频率为 12mhz 的石英晶体,电 容器一般选用 30pf 左右。 123456 a b c d 654321 d c b a t itle num berrevisionsize b date:11-may-2012sheet of file:d:protel_99_se_cnexam plesmydesign1
48、.ddbdrawn by: c1 30pf c2 30pf cr 12mhz at 89c51 x 1 x 2 gnd 图 3-4 片内震荡电路输出端 综上所述,mcu 的电路图如图 3-5 所示。该电路的工作原理是:单片机通 过向 fpga 发送数据传送指令,使 fpga 按照单片机的要求发送数据,同时通过 单片机的串口,将待显示的数据信息发送给显示电路显示。系统硬件电路中 fpga 和 mcu 进行数据交换时占用了 p0 口、p2 口、和 p1.0、p1.1、p1.2,其引 脚功能如下所示。 p0 口:32 39 脚为 p0.0 p0.7 输入/输出引脚。p0 口为双向 8 位三态 i/o
49、 口,它既可作为通用 i/o 口,又可作为外部扩展时的数据总线及低 8 位地 址总线的分时复用口。作为通用 i/o 口时,需要外接上拉电阻,输出数据可以 得到锁存,最为输出口,每个引脚可以驱动 8 个 ttl 负载。 p1 口:18 脚为 p1.0 p1.7 输入/输出引脚。p1 口为 8 位准双向 i/o 口, 内部具有上拉电阻,一般作通用 i/o 口使用,它的每一位都可以分别定义为输 入线或输出线,作为输入时,锁存器必须置 1,每个引脚可以驱动 4 个 ttl 负 载。 p2 口:21 28 脚为 p2.0 p2.7 输入/输出引脚。p2 口为 8 位准双向 i/o 口,内部具有上拉电阻,
50、可直接连接外部 i/o 设备,每个引脚可以驱动 4 个 ttl 负载。用作输入时,先将引脚置 1,由内部上拉电阻将其提高到高电平。若 负载为低电平,则通过内部上拉电阻向外输出电流。它与地址总线高 8 位复用, 一般作为外部扩展时的高 8 位地址总线使用。 p3 口:1017 脚为 p3.0 p3.7 输入/输出引脚。p3 口为 8 位准双向 i/o 口,内部具有上拉电阻,它是双功能复用口,每个引脚可驱动 4 个 ttl 负载。 作为通用 i/o 口时,功能与 p1 口相同,常用第二功能,作为第二功能使用时, 各位的作用如表 3-2 所示。 表 3-2p3 口的复用功能 端口引脚 复用功能 p3
51、.0 rxd:串行输入口 p3.1 txd:串行输出口 p3.2 (外部中断 0 中断请求输入端)0int p3.3 (外部中断 1 中断请求输入端)1int p3.4 t0(定时器 0 的外部输入) p3.5 t1(定时器 1 的外部输入) p3.6 (外部数据存储器写选通)wr p3.7 (外部数据存储器读选通)rd 123456 a b c d 654321 d c b a title num berrevisionsize b date:11-may-2012sheet of file:d:protel_99_se_cnexam plesmydesign1.ddbdrawn by: c
52、1 30pf c2 30pf cr 12mhz gnd r1 r2 c 22f s vcc gnd s1 s2 gnd 39 d0 38 d1 37 d2 36 d3 35 d4 34 d5 33 d6 32 d7 21 a8 22 a9 23 a10 24 a11 25 a12 26 a13 27 a14 28 a15 10 rxd 11 txd 30 ale 1 2 3 4 5 6 7 8 9 rp210k 8 1 2 3 4 5 6 7 8 9 j3 1 2 3 4 5 6 7 8 9 j1 vcc vcc vcc 10k 8 10k 8 dsel text p00 p01 p02 p0
53、3 p04 p05 p06 p07 p20 p21 p22 p23 p24 p25 p26 p27 rxd txd ale/p psen p10 p11 p12 p13 p14 p15 p16 p17 int1 int2 t1 t0 -ea/vp x1 x2 reset -rd -wd at89c51 p1.7 p1.6 x1 x2 u1 图 3-5 mcu 电路图 3.4 显示模块设计 在单片机系统中,通常使用八段单字节数码显示器来显示各种数据或符号。 应为它具有显示清晰、亮度高、使用电压低、寿命长等特点,所以被广泛应用 与各种显示电路中。本设计采用的是 led 数码管静态显示方式。静态显示
54、系统 中,每位显示器都有自己的锁存器、译码器和驱动器,它的每一次显示输出后 可以保持不变,仅在待显示数据需要改变时,才更新其显示内容。这种显示方 式的优点是占用机时少,显示稳定可靠4。 该显示电路由 8 个共阴极 7 段 led 数码管和 8 片串入/并出的 74ls164 芯片 组成。这种显示方式不仅可以得到较为简单的硬件电路,而且可以得到稳定的 数据输出显示。这种连接方式不仅占用单片机端口少,而且可以充分利用单片 机芯片内部的串行口资源,可以很容易的掌握其编程规律,简化软件编程。实 践证明,该显示模块具有较高的可靠性,其电路图如图 3-6 所示。 123456 a b c d 654321
55、 d c b a title num berrevisionsize b date:23-may-2012sheet of file:d:protel_99_se_cnexam plesmydesign1.ddbdrawn by: q0 q3 q2 q1 q4 q5 q6 q7 a bclk -m r 74ls164 q0 q3 q2 q1 q4 q5 q6 q7 a bclk -m r 74ls164 q0 q3 q2 q1 q4 q5 q6 q7 a bclk -m r 74ls164 +5v+5v+5v +5v rx d tx d . . rr rr 82k 82k 82k a bf c
56、 g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp led a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp led a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp led 图 3-6 显示模块电路图 单片机从 fpga 中读取信息并进行处理后,再将信号送到输出端显示出来。 在系统的显示模块中,74ls164 的连接方式为:输出引脚 q0-q7 分别接在 led 数码管的 a、b、c、d、e、f、g 和 dp 引脚,并且 q7 接下一个 7
57、4ls164 芯片的 a、b 两端,时钟信号 clk 连接单片机的 txd 端,第一个芯片的 a、b 端接单片 机的 rxd 端。共阴极 7 段 led 数码管的段码编码如表 3-3 所示。 表 3-3 共阴极 led 数码管的段码表 显示 数码 0123456789 段码 3fh06h5bh4fh66h6dh7dh07h7fh6fh 显示 数码 abcdef-. 熄灭 段码 77h7ch39h5eh79h7eh40h80h00h 4 系统软件设计 系统的软件设计包括 fpga 的 verilog hdl 程序设计以及 mcu 的汇编语言程 序设计。 4.1 fpga 的 verilog hd
58、l 程序设计 fpga 主要完成对数据的采集,它可以准确的采集到两个同频正弦信号的相 位差所对应的时间差以及信号的周期。 4.1.14.1.1 fpgafpga 的工作时序的工作时序 fpga 的工作时序如图 4-1 所示。由时序图可以看出,fpga 在待测信号的两 个响铃的周期内获取一次数据,在待测输入信号的第一个周期内完成数据采集, 并在后接的下一个待测输入信号的在周期内完成数据传输送以及清零,在设计 时,我采用了同步信号来实现同步清零和同步数据传送,这样可以增强系统的 抗干扰能力,提高系统的稳定性和可靠性。 clka cla(ena) clkb(滞后) clr (clka)xor(clk
59、b) clkb(超前) (clka)xor(clkb) da计数 清零 da(同 步于 clkf) 该时刻传送周期数据,从da 到dataa且以clr取反后的信 号为使能信号 该时刻传送时间差数据,从da到datab 该时刻传送时间差数据,从da到datab 图 4-1 fpga 的工作时序图 4.1.24.1.2 fpgafpga 芯片内部电路框图芯片内部电路框图 根据以上设计思路,我们可以得出,fpga 的数据采集电路可以分为以下几 个模块:时钟信号分频模块、测量控制信号发生模块、被测信号有关时间检测 模块、数据寄存器模块、19 位加 1 计数器模块、二选一数据选择器模块。 其中时钟信号分
60、频模块的作用是将输入的信号分频成我们所需的信号频率; 测量控制信号发生模块的作用是根据两路被测信号整形后的矩形波信号产生有 关测控信号,包括时间检测使能信号 ena,时间检测清零信号等;被测信号有 关时间检测模块的作用是在控制信号 ena 和 clr 的控制下,对测控基准时钟信 号 clkf 进行计数和清零,以便于获取有关的频率和相位差数据;数据寄存器模 块的作用是暂存 19 位数据 dataa、datab 和 data;19 位的加 1 计数器模块的作 用是完成对 clkf 的计数,以便分别得到待测信号的周期数据 dataa 和相位差对 应的时间差数据 datab;二选一数据选择器模块的做作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度演艺经纪合同:艺人经纪公司与合作演员之间的演艺活动安排与分成(2024版)3篇
- 房产财产抵押担保合同2024年度修订2篇
- 2024年度电商平台运营推广合作合同的标的和具体描述3篇
- 柴油运输服务合同
- 吊篮安装拆卸施工合同
- 养殖场地租赁合同怎样写
- 2024年度建筑工程消防系统安装合同2篇
- 2024年度智能交通系统建设与运营合作协议2篇
- 2024年度商标转让合同标的及商标权属变更3篇
- 2024年度货运代理服务合同具体描述与服务内容
- 《电子商务概论》课件-第二章 物联网与人工智能
- 2024年世界职业院校技能大赛中职组“婴幼儿保育组”赛项考试题库-上(单选题)
- 栏杆喷漆合同范例
- 踝关节不稳的康复治疗
- 6人小品《没有学习的人不伤心》台词完整版
- 《注册建造师执业工程规模标准》
- 《王戎不取道旁李》课件完美版
- 口腔科诊断证明书模板
- 公共政策执行的几种理论模型(最新整理)
- MODIS数据说明(经典)
- 小学美术课堂教学评价表
评论
0/150
提交评论