简易数字频率计题解惠州学院电子科学系2004年12月12日赛题任务书(一)任务设计并制作一台数字显示的简易频率计。(二)要求1.基本要求(1)频率测量a.测量范围信号:方波、正弦波幅度:0.5V~5V[注]频率:1Hz~1MHzb.测试误差≤0.1%(2)周期测量a.测量范围信号:方波、正弦波幅度:0.5V~5V[注]频率:1Hz~1MHzb.测试误差≤0.1%(3)脉冲宽度测量a.测量范围信号:脉冲波幅度:0.5V~5V[注]脉冲宽度≥100μsb.测试误差≤0.1%(4)显示器十进制数字显示,显示刷新时间1~10秒连续可调,对上述三种测量功能分别采用不同颜色的发光二极管指示。(5)具有自校功能,时标信号频率为1MHz。(6)自行设计并制作满足本设计任务要求的稳压电源。2.发挥部分(1)扩展频率测量范围为0.1Hz~10MHz(信号幅度:0.5V~5V[注]),测试误差降低为0.01%(最大闸门时间≤10s)。(2)测量并显示周期脉冲信号(幅度0.5V~5V[注]、频率1Hz~1KHz)的占空比,占空比变化范围为10%~90%,测试误差≤1%。(3)在1Hz~1MHz范围内及测试误差≤0.1%的条件下,进行小信号的频率测量,提出并实现抗干扰的措施。题解部分1.1题目分析1.1.1设计者特定背景知识的自查与准备1.1.2顶层要求的确认——要实现的测量功能以及测量精度。即明确“做什么”以及“做到何种程度”——即质量的要求:①测量功能:测频、测周期、测脉冲宽度以及测脉冲的占空比(发挥部分)。②测频、测周期、测脉冲宽度的误差:≤0.1%;测占空比的误差:≤1%。(发挥部分)(10-3)其次,在顶层设计中应当明确的主要技术指标:①被测信号的频率范:1Hz~1MHz;误差≤0.1%(基本要求);0.1Hz~10MHz,误差≤0.01%(发挥要求)②被测脉冲信号的宽度:≥100μs③最大闸门时间:10s;显示刷新时间在1s~10s之间连续可调还有一些设计要求与技术指标将在设计由顶层向底层过渡之中逐步予以关注和考虑。至此,对该题“做什么”以及“做到何种程度”——即质量的要求也就明确了。下一步工作就转向分析实现该频率计的各项要求所应当采用的测量方法。对各种数字化测频、测周法的±1误差进行比较:1.直接测量法被测的fx越低,测频±1误差越大;被测的fx越高,测周±1误差越大;2.直接与间接测量相结合的方法中界频率:fm==(1.7)p.68当fx≥fm时,直接测频,间接测周;当fx≤fm时,直接测周,间接测频.3.多周期同步测量法(倒数计数器法)从根本上消除了±1误差,实现了等精度测量1.1.3测量方法的分析与比较0TTkS101kSTT1.1.4尚未涉及的其它问题1)脉宽测试误差的分析被测脉宽≥100μs,测试误差≤0.1%,可以达到。2)脉冲占空比测试误差的分析被测脉冲频率1Hz~1KHz,占空比10%~90%,幅度0.5V~5V;要求误差≤1%,可以达到。3)被测信号幅度、频率范围及输入通道放大器自认0.02V,频率0.1Hz~10MHz,输入电阻1MΩ4)稳压电源的设计估计数字电源±5V,1A;模拟电源±5V;±6~15V,均为200mA1.2设计方案讨论1.2.1方案的选择1.测量方法的选择选用多周期同步测量法2.实现技术的选择①纯硬件实现法(可选的器件有通用的SSI/MSI/LSI集成电路、专用集成电路、可编程逻辑器件——如isPLD器件等);②纯软件实现法(可选的平台有PC机、单片机、DSP器件等);③软硬件相结合的实现法(由①、②中选择与组合)。——选此实现技术1.3系统级和子系统级设计1.3.1系统级框图频率计的面板布置图1.3.2子系统级总体框图1)频率计子系统的划分测量控制及功能切换逻辑2)各个子系统的主要技术指标及其组成(1)输入通道(考虑发挥部分要求时)带宽:0~10MHz;输入电阻:1M;增益:2/0.02=100(用TTL整形级时)(2)多周期同步等精度测量控制及功能切换逻辑计数器容量:107~108;工作频率:≥10MHz(3)单片机子系统(根据下列要求选用AT89C51)①由+5V电源供电,I/O口与TTL电平兼容,并有足够数目的I/O口;②要有丰富的四则算术运算和逻辑运算指令,指令执行速度要快;③片内除RAM外还要有EPROM;④至少有两个16位的定时器/计数器;⑤有外部中断输入引脚;⑥具有串行通信口;⑦价格要低廉。图1.3.4输入通道组成框图多周期同步等精度测量控制及切换逻辑图1.3.5图1.3.6单片机与外围部件的互连方案1.4设计的进一步细化1.4.1输入通道的详细设计1)输入通道中的模拟部分的详细设计2)输入通道中的数字部分的详细设计1.4.2综合数字模块子系统测量控制及功能切换逻辑+其它辅助数字部件的详细设计1)核心电路---图1.3.5;2)辅助数字部件共10个1.4.3单片机子系统软件的设计1)主程序;2)子程序主要有4个(键盘中断服务子程序;软件计数器子程序;数据处理子程序;测量结果刷新显示子程序)图1.4.1输入通道中模拟电路部分的详细设计图图1.4.2被测信号边沿选择电路图1.4.3被测信号边沿选择电路的工作波形图图1.4.4由ispPLD实现的(虚线框内)综合数字模块子系统的总图用ispLSI1032来实现辅助数字部件共10个①脉冲边沿选择电路;②预置闸门时间选择计数器和指示驱动电路;③通道条件码输入接口;④闸门灯驱动器;⑤按键接口电路;⑥单/双通道选择信号产生逻辑;⑦低12bit时间计数器、28bit事件计数器;⑧前述两个计数器与单片机的接口逻辑(可寻址的8bit的6选1多路选择器);⑨驱动LED数码显示器的98位移位寄存器及缓冲器(包含单位符号指示灯驱动电路在内);⑩1MHz时标信号及1Hz脉冲发生器电路。用ispLSI1032来实现图1.4.5频率计的测量流程主程序流程图1234√P1.6=0P1.7=1(续前)主程序流程图56√√√781.5测试方案1.5.1测试步骤与方法概述先对三个子系统分别进行测试,最后将三个子系统互连起来,进行整个系统的总体测试。1.5.2频率计子系统的测试步骤与方法1.输入通道模拟电路部分测试步骤与方法2.综合数字功能模块的测试步骤与方法应充分运用EDA工具的功能模拟和定时模拟能力,去替代使用测试仪器去完成大量而复杂的测试工作。3.单片机子系统的测试步骤与方法先测试硬件,再测试软件,最后软硬件联合测试。测试主要用仿真器,也要用到示波器、电压表等仪器。(续前)对单片机子系统的硬件的测试,就是测试与它相连的做在isPLD器件内的外围部件的工作是否正常。方法是针对要测的硬件编写一个、一个的读写小程序,输入到仿真器中去,分别对每个外围部件的读/写功能进行测试。软件测试的主要工具仍然是仿真器。应当先测试子程序,后测试主程序。测试中要灵活运用插入暂停、局部循环指令以及仿真器的单步调试功能。并用直流电压表或示波器去测量硬件上的有关电平或波形。4.总体测试所有子系统均测试通过后,才能将它们全部互连起来进行总体测试。这时所用的仪器主要是:函数发生器;通用计数器(可测量频率、周期、时间等);交流电压表;示波器。它们的工作频率应覆盖0~20MHz。电源接通后,检查频率计默认测频工作状态以及自检功能是否正常,然后用函数发生器作为测试信号源,同时接到所制作的频率计和通用计数器的输入端,按设计任务书要求的测量项目逐个进行测试,将频率计和通用计数器的读数分别记录下来。计算各个测量项目的测量误差,并与任务书要求进行比较。同步化闸门启动定时器T0键盘中断与显示时间调节AT89C51C51单片机定时器的结构与方式字T0=1μsf0=12MHz图1.6.1计数式测频的原理方框图fX=N/TS闸门时间图1.6.3计数式测周期的原理框图TX=NT0/k时标图1.6.5测量时间间隔的原理方框图△TX=NT0图1.6.7脉冲宽度和上升时间的测量(a)测量脉冲宽度;(b)测脉冲上升时间1s闸门1μs时标图1.21直接测频和直接测周期的量化误差图1.6.9倒数计数器(多周期同步测量)原理方框图CBAfNNfx=fx=NA/TNB=fCTT图1.6.9倒数计数器(多周期同步测量)时间波形图P1.610s、1s、0.1s、10ms、1ms图1.6.10等精度测时间间隔的原理框图图1.6.11等精度测量时间间隔的工作波形图NB=NAfCTXCABXfNNT电压比较器MAX902要求输入信号的最小过零压摆率:(P.52P.53)SR=0.5V/sSR=2πfXUmUm=0.5/2π0.10.8V最小输入信号的峰值:Uimin=0.02V要求放大级的增益:GAUm/Uimin302