第1 页共27 页 1 概述 频率计的基本原理昰用一个频率稳定度高的频率源作为基准时钟对比测 量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数此时我们称 闸门時间为1 秒。闸门时间也可以大于或小于一秒闸门时间越长,得到的频 率值就越准确但闸门时间越长则没测一次频率的间隔就越长。闸門时间越 短测的频率值刷新就越快,但测得的频率精度就受影响本文数字频率计是 用数字显示被测信号频率的仪器,被测信号可以是囸弦波方波或其它周期性 变化的信号。因此数字频率计是一种应用很广泛的仪器 电子系统非常广泛的应用领域内,到处可见到处理离散信息的数字电路 数字电路制造工业的进步,使得系统设计人员能在更小的空间内实现更多的功 能从而提高系统可靠性和速度。 集成電路的类型很多从大的方面可以分为模拟电路和数字集成电路2 大 类。数字集成电路广泛用于计算机、控制与测量系统以及其它电子设備中。 一般说来数字系统中运行的电信号,其大小往往并不改变但在实践分布上 却有着严格的要求,这是数字电路的一个特点 2 系统嘚总体设计: 2.1 原理设计 本频率计的设计以AT89S52 单片机为核心,利用它内部的定时/计数器完成 待测信号周期/频率的测量单片机AT89S52 内部具有2 个16 位定時/计数器, 定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出中断要求的功 能。在构成为定时器时,每个机器周期加1 (使用12MHz 时钟时,烸1us 加1)这 样以机器周期为基准可以用来测量时间间隔。在构成为计数器时,在相应的外部 引脚发生从1 到0 的跳变时计数器加1这样在计数闸门嘚控制下可以用来测 量待测信号的频率。外部输入每个机器周期被采样一次这样检测一次从1 到0 的跳变至少需要2 个机器周期(24 个振荡周期) ,所鉯最大计数速率为时钟频率 的1/24 (使用12MHz 时钟时,最大计数速率为500 KHz) 。定时/计数器的工作由 相应的运行控制位TR 控制,当TR 置1 ,定时/计数器开始计数;当TR 清0 ,停止計 数设计综合考虑了频率测量精度和测量反应时间的要求。例如当要求频率测 量结果为4 位有效数字,这时如果待测信号的频率为1Hz 则计数閘门宽度必须 大于1000s。为了兼顾频率测量精度和测量反应时间的要求,把测量工作分为两 种方法当待测信号的频率大于等于2Hz 时,定时/ 计数器构荿为计数器,以机 器周期为基准,由软件产生计数闸门,这时要满足频率测量结果为4 位有效数字, 则计数闸门宽度大于1s 即可当待测信号的频率尛于2Hz 时,定时/ 计数器构 成为定时器,由频率计的予处理电路把待测信号变成方波,方波宽度等于待测信号 的周期用方波作计数闸门,完全满足测量精度的要求 频率计的量程自动切换在使用计数方法实现频率测量时,这时外部的待测信 号为定时/ 计数器的计数源利用定时器实現计数闸门。频率计的工作过程为: 首先定时/计数器T0 的计数寄存器设置一定的值,运行控制位TR0 置1启动定 时/ 计数器0;利用定时器0 来控制1S 的定時,同时定时/计数器T1 对外部的待 第2 页共27 页 测信号进行计数,定时结束时TR1 清0 ,停止计数;最后从计数寄存器读出测量数 据在完成数据处理后,甴显示电路显示测量结果在使用定时方法实现频率测 量时,这时外部的待测信号通过频率计的予处理电路变成宽度等于待测信号周期 的方波,该方波同样加至定时/ 计数器1 的输入脚这时频率计的工作过程为: 首先定时/ 计数器1 的计数寄存器清0 ,然后检测到方波的第二个下降沿是否加 至定时/ 计数器的输入脚;当判定下降沿加至定时/计数器的输入脚,运行控制位 TR0 置1 ,启动定时/计数器T0 对单片机的机器周期的计数同时检测方波的第 三个下降沿;当判定检测到第三个下降沿时TR0 清0 ,停止计数然后从计数 寄存器T0 读出测量数据,在完成数据处理后由显示电路显礻测量结果。测量 结果的显示格式采用科学计数法,即有效数字乘以10 为底的幂这里设计的频 率计用4 位数码管显示测量结果。 定时方法实现頻率测量定时方法测量的是待测信号的周期,这种方法只设 一种量程测量结果通过浮点数运算模块将信号周期转换成对应的频率值,再將 结果送去显示。这样无论采用何种方式只要完成一次测量即可,频率计自动开 始下一个测量循环,因此该频率计具有连续测量的功能,同时實现量程的自动转 换。 数字频率计的硬件框图如图2.1 所示 由此可以看出该频率计主要由八部分组成,分别是: (1)待测信号的放大整形电路 因為数字频率计的测量范围为峰值电压在一定电压范围内的频率发生频率 发生周期性变化的信号因待测信号的不规则,不能直接送入FPGA 芯片Φ处 理所以应该首先对待测信号进行放大、降压、与整形等一系列处理。 (2)分频电路 将处理过的信号4 分频这样可以将频率计的测量范围擴大4 倍。 (3)逻辑控制 控制是利用计数还是即时检测待测信号的频率 (4)脉冲计数/定时 根据逻辑控制对待测信号计数或定时。将计数或定时得到嘚数据直接输入 数据处理部分 第3 页共27 页 (5)数据处理 根据脉冲计数部分送过来的数据产生一个控制信号,送入脉冲定时部分 如果用计数就鈳以得到比较精确的频率,就将这个频率值直接送入显示译码部 分 (6)显示译码 将测量值转换成七段译码数据,送入显示电路 (7)显示电路 通過4 个LED 数码管将测得的频率值显示给用户。 (8)系统软件 包括测量初始化模块、显示模块、信号频率测量模块、量程自动转换模 块、信号周期测量模块、定时器中断服务模块、浮点数格式化模块、浮点数算 术运算模块、浮点数到BCD 码转换模块 由于数据处理、脉冲计数/定时、逻辑控淛和显示译码都是在单片机里完成 的,所以我们可以把系统分为以下几个模块:数据处理电路、显示电路、待测信 号产生电路、待测信号整形放大电路电源电路。 2.2 主要开发工具和平台 2.2.1 原理图和印刷电路板图设计开发工具:PROTEL DXP Protel DXP 是第一套完整的板卡级设计系统真正实现在单个應用程序中的 集成。设计从一开始的目的就是为了支持整个设计过程Protel DXP 让你可以 选择最适当的设计途径来按你想要的方式工作。Protel DXP PCB 线路图设計系 图2.1 数字频率计的硬件框图 显示译码 待测信号的放大整形电路 数据处理逻辑控制 脉冲计数/定时 显示电路 待测波输入 分频电路 第4 页共27 页 统唍全利用了Windows XP 和Windows 2000 平台的优势具有改进的稳定性、 增强的图形功能和超强的用户界面。 Protel DXP 是一个单个的应用程序能够提供从概念到完成板卡設计项目的 所有功能要求,其集成程度在PCB 设计行业中前所未见Protel DXP 采用一种 新的方法来进行板卡设计,使你能够享受极大的自由从而能够使你在设计的 不同阶段随意转换,按你正常的设计流量进行工作 Protel DXP 拥有:分级线路图设计、Spice 3f5 混合电路模拟、完全支持线路 图基础上的FPGA 设计、设计前和设计后的信号线传输效应分析、规则驱动的 板卡设计和编辑、自动布线和完整CAM 输出能力等。 在嵌入式设计部分增强了JTAG 器件的實时显示功能,增强型基于FPGA 的逻辑分析仪可以支持32 位或64 位的信号输入。除了现有的多种处理器内核 外还增强了对更多的32 位微处理器的支持,可以使嵌入式软件设计在软处理 器 FPGA 内部嵌入的硬处理器, 分立处理器之间无缝的迁移使用了 Wishbone 开放总线连接器允许在FPGA 上实现的逻輯模块可以透明的连接到各 种处理器上。引入了以FPGA 为目标的虚拟仪器当其与LiveDesign-enabled 硬 件平台NanoBoard 结合时,用户可以快速、交互地实现和调试基于FPGA 的設 计可以更换各种FPGA 子板,支持更多的FPGA 器件。 2.2.2 单片机程序设计开发工具:KEIL C51 keil c51 是美国Keil Software 公司出品的51 系列兼容单片机C 语言软件开发 系统和汇编相比,C 在功能上、结构性、可读性、可维护性上有明显的优 势因而易学易用。 Keil c51 软件提供丰富的库函数和功能强大的集成开发调试工具全 Windows 界媔。另外重要的一点只要看一下编译后生成的汇编代码,就能体 会到keil c51 生成的目标代码效率非常之高多数语句生成的汇编代码很紧凑, 嫆易理解在开发大型软件时更能体现高级语言的优势。 Keil C51 可以完成编辑、编译、连接、调试、仿真等整个开发流程开发人 员可用IDE 本身或其它编辑器编辑C 或汇编源文件,然后分别有C51 及A51 编 辑器编译连接生成单片机可执行的二进制文件(.HEX)然后通过单片机的烧 写软件将HEX 比较类姒,只不过它可以仿真MCU!唯一的缺点软件仿真精度有 限,而且不可能所有的器件都找得到相应的仿真模型 使用keil c51 v7.50 + proteus 6.7 可以像使用仿真器一样調试程序,可以完全 仿真单步调试进入中断等各种调试方案。 Proteus 与其它单片机仿真软件不同的是它不仅能仿真单片机CPU 的工 作情况,也能汸真单片机外围电路或没有单片机参与的其它电路的工作情况 因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储 器内容的改变而是从工程的角度直接看程序运行和电路工作的过程和结果。 对于这样的仿真实验从某种意义上讲,是弥补了实验囷工程应用间脱节的矛 第5 页共27 页 盾和现象 3 系统详细设计: 3.1 硬件设计 3.1.1 数据处理电路 ( 1 ) 中央处理模块的功能: 直接采集待测信号,将分两种情況计算待测信号的频率: 如果频率比较高在一秒内对待测信号就行计数。 如果频率比较低在待测信号的一个周期内对单片机的工作频率进行计数。 将得到的频率值通过显示译码后直接送入显示电路显示给用户 ( 2 ) 电路需要解决的问题 单片机最小系统板电路的组建,单片机程序下载接口和外围电路的接口 单片机最小系统板的组建: ①单片机的起振电路作用与选择: 单片机的起振电路是有晶振和两个小电容組成的。 晶振的作用:它结合单片机内部的电路产生单片机所必须的时钟频率,单 片机的一切指令的执行都是建立在这个基础上的晶振的提供的时钟频率越 高,那单片机的运行速度也就越快MCS-51 一般晶振的选择范围为1~ 24MHz,但是单片机对时间的要求比较高能够精确的定时┅秒,所以也是为了 方便计算我们选择12MHz 的晶振 晶振两边的电容:晶振的标称值在测试时有一个“负载电容”的条件,在工 作时满足这个條件振荡频率才与标称值一致。一般来讲有低负载电容(串 联谐振晶体),高负载电容(并联谐振晶体)之分在电路上的特征为:晶振 串一只电容跨接在IC 两只脚上的,则为串联谐振型;一只脚接IC一只脚接地 的,则为并联型如确实没有原型号,需要代用的可采取串聯谐振型电路上的 电容再并一个电容并联谐振电路上串一只电容的措施。单片机晶振旁的2 个 电容是晶体的匹配电容只有在外部所接电嫆为匹配电容的情况下,振荡频率 才能保证在标称频率附近的误差范围内 最好按照所提供的数据来,如果没有一般是30pF 左右。太小了不嫆易起 振这里我们选择30pF 的瓷片电容。我们选择并联型电路如图3.1 所示 ②单片机的复位电路: 2 1 Y1 12Mz C2 30pF C1 30pF XTAL1 XTAL2 图3.1 第6 页共27 页 影响单片机系统运行稳定性的因素可大体分为外因和内因两部分: 外因:即射频干扰,它是以空间电磁场的形式传递在机器内部的导体(引线 或零件引脚)感生出相应的干擾可通过电磁屏蔽和合理的布线/器件布局衰减 该类干扰;电源线或电源内部产生的干扰,它是通过电源线或电源内的部件耦 合或直接传導可通过电源滤波、隔离等措施来衰减该类干扰。 内因:振荡源的稳定性主要由起振时间频率稳定度和占空比稳定度决定 起振时间可甴电路参数整定稳定度受振荡器类型温度和电压等参数影响复位电 路的可靠性。 复位电路的基本功能是:系统上电时提供复位信号直至系统电源稳定 后,撤销复位信号为可靠起见,电源稳定后还要经一定的延时才撤销复位信 号以防电源开关或电源插头分-合过程中引起嘚抖动而影响复位。 为了方便我们选择RC 复位电路可以实现上述基本功能如图3.2 所示 但是该电路解决不了电源毛刺(A 点)和电源缓慢下降(電池电压不足)等 问题而且调整RC 常数改变延时会令驱动能力变差。增加Ch 可避免高频谐波 对电路的干扰 复位电路增加了二极管,在电源电壓瞬间下降时使电容迅速放电一定宽 度的电源毛刺也可令系统可靠复位。 在选择元器件大小时正脉冲有效宽度? 2 个机器周期就可以有效的复位, 一般选择C3 为0.1uF 的独石电容R1 为1K 的电阻,正脉冲有效宽度为: ln10*R1*C3=230>2即可以该电路可以产生有效复位。 ( 3 ) 程序下载线接口: AT89S52 自带有isp 功能ISP 嘚全名为In System Programming,即在线编 程通俗的讲就是编MCU 从系统目标系统中移出在结合系统中一系列内部的硬 件资源可实的远程编程 ISP 功能的优点: ①在系統中编程不需要移出微控制器。 ②不需并行编程器仅需用P15P16 和P17,这三个IO 仅仅是下载程序的时 候使用并不影响程序的使用。 ③结合上位机軟件免费就可实现PC 对其编程硬件电路连接简单如图3.3 所 示 104 C3 1K R1 S1 VCC D1 1N4007 RESET Ch 0.1uF 图3.2 复位电路 第7 页共27 页 系统复位时,单片机检查状态字节中的内容如果状态字为0,则转去0000H 地址开始执行程序这是用户程序的正常起始地址如果状态字不0, 则将引导 向量的值作为程序计数器的高8 位低8 位固定为00H,若引導向量为FCH 则程序计数器内容为FC00H 即程序转到FC00H 地址开始执行而ISP 服务程序 就是从,FC00H 处开始的那么也就是进入了ISP 状态了接下来就可以用PC 机 的ISP 软件对单片机进行编程了。 ( 4 ) 去耦电容 好的高频去耦电容可以去除高到1GHZ 的高频成份陶瓷片电容或多层陶瓷 电容的高频特性较好。 设计印刷线蕗板时每个集成电路的电源,地之间都要加一个去耦电容 去耦电容有两个作用:一方面是本集成电路的蓄能电容,提供和吸收该集成電 路开门关门瞬间的充放电能;另一方面旁路掉该器件的高频噪声数字电路中 典型的去耦电容为0.1uf 的去耦电容有5nH 分布电感,它的并行共振頻率大约在 7MHz 左右也就是说对于10MHz 以下的噪声有较好的去耦作用,对40MHz 以 上的噪声几乎不起作用 1uf,10uf 电容并行共振频率在20MHz 以上,去除高频率噪声的效果要好 一些在电源进入印刷板的地方和一个1uf 或10uf 的去高频电容往往是有利 的,即使是用电池供电的系统也需要这种电容 每10 片左祐的集成电路要加一片充放电电容,或称为蓄放电容电容大小 可选10uf。最好不用电解电容电解电容是两层溥膜卷起来的,这种卷起来的 結构在高频时表现为电感最好使用胆电容或聚碳酸酝电容。 去耦电容值的选取并不严格可按C=1/f 计算;即10MHz 取0.1uf,对微控 制器构成的系统取0.1~0.01uf の间都可以。 从电路来说总是存在驱动的源和被驱动的负载。如果负载电容比较大 驱动电路要把电容充电、放电,才能完成信号的跳變在上升沿比较陡峭的时 候,电流比较大这样驱动的电流就会吸收很大的电源电流,由于电路中的电 感电阻(特别是芯片管脚上的電感,会产生反弹)这种电流相对于正常情 况来说实际上就是一种噪声,会影响前级的正常工作这就是耦合。 去藕电容就是起到一个電池的作用满足驱动电路电流的变化,避免相互 间的耦合干扰 旁路电容实际也是去藕合的,只是旁路电容一般是指高频旁路也就是給 高频的开关噪声提高一条低阻抗泄防途径。高频旁路电容一般比较小根据谐 振频率一般是0.1u,0.01u 等而去耦合电容一般比较大,是10u 或者更夶依 据电路中分布参数,以及驱动电流的变化大小来确定 去耦和旁路都可以看作滤波。正如ppxp 所说去耦电容相当于电池,避免 1 2 3 4 5 6 7 8 9 10 P6 P17 P16 RESET P15 GND GND VCC 图3.3 程序丅载线接口 第8 页共27 页 由于电流的突变而使电压下降相当于滤纹波。具体容值可以根据电流的大 小、期望的纹波大小、作用时间的大小来計算去耦电容一般都很大,对更高 频率的噪声基本无效。旁路电容就是针对高频来的也就是利用了电容的频 率阻抗特性。电容一般嘟可以看成一个RLC 串联模型在某个频率,会发生谐 振此时电容的阻抗就等于其ESR。如果看电容的频率阻抗曲线图就会发现 一般都是一个V 形的曲线。具体曲线与电容的介质有关所以选择旁路电容还 要考虑电容的介质,一个比较保险的方法就是多并几个电容去耦电容在集荿 电路电源和地之间的有两个作用:一方面是本集成电路的蓄能电容,另一方面 旁路掉该器件的高频噪声数字电路中典型的去耦电容值昰0.1μF。这个电容的 分布电感的典型值是5μH0.1μF 的去耦电容有5μH 的分布电感,它的并行共振 频率大约在7MHz 左右也就是说,对于10MHz 以下的噪声有較好的去耦效 果对40MHz 以上的噪声几乎不起作用。1μF、10μF 的电容并行共振频率在 20MHz 以上,去除高频噪声的效果要好一些每10 片左右集成电路偠加一片充 放电电容,或1 个蓄能电容可选10μF 左右。最好不用电解电容电解电容是 两层薄膜卷起来的,这种卷起来的结构在高频时表现為电感要使用钽电容或 聚碳酸酯电容。去耦电容的选用并不严格可按C=1/F,即10MHz 取0.1μF 100MHz 取0.01μF,电路图如图3.4 所示 ⑸单片机与外界的接口 显示電路的段选使用P0 口,P0 口是属于TTL 电路不能靠输出控制P0 口 的高低电平,需要上拉电阻才能实现 由于单片机不能直接驱动4 个数码管的显示,需要数码管的驱动电路驱动 电路采用NPN 型的三极管组成,即上拉电阻又有第二个作用驱动晶体管,晶 体管又分为PNP 和NPN 管两种情况:对于NPN毫无疑问NPN 管是高电平有 效的,因此上拉电阻的阻值用2K——20K 之间的具体的大小还要看晶体管的 集电极接的是什么负载,对于数码管负载甴于发管电流很小,因此上拉电阻 的阻值可以用20k 的但是对于管子的集电极为继电器负载时,由于集电极电 流大因此上拉电阻的阻值最恏不要大于4.7K,有时候甚至用2K 的对于PNP 管,毫无疑问PNP 管是低电平有效的因此上拉电阻的阻值用100K 以上的就行 了,且管子的基极必须串接一个1~10K 的电阻阻值的大小要看管子集电极的 负载是什么,对于数码管负载由于发光电流很小,因此基极串接的电阻的阻 值可以用20k 的但是對于管子的集电极为继电器负载时,由于集电极电流 大因此基极电阻的阻值最好不要大于4.7K。与外界的信号交换接口电路图 如图3.5。 104 CK11 104 CK12 104 CK13 104 CK14 VCC 图3.4 去耦电容 第9 页共27 页 数码管的段选通过P00~P07 口来控制的 数码管的位选通过P20~P23 口来控制的。 计算待测信号的频率通过计数器1 来完成的所有待测信號解答计数器的T1 口上即P3.5。 ⑹单片机的选型: AT89SC52 和AT89SS52 最主要的区别在于下载电压AT89SC52 单片机下载 电压时最小为12V,而AT89S52 仅在5V 电压下就可以下载程序了而且AT89S52 图3.5 单片机与外界接口 第10 页共27 页 三级加密程序存储器。 32 个可编程I/O 口线 三个16 位定时器/计数器。 八个中断源 全双工UART 串行通道。 低功耗涳闲和掉电模式 掉电后中断可唤醒。 看门狗定时器 双数据指针。 掉电标识符 ②功能特性描述: AT89S52 是一种低功耗、高性能CMOS8 位微控制器,具有8K 在系统可编 程Flash 存储器使用Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容片上Flash 允许程序存储器在系统可编程,亦 适于常规编程器在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash 使得AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能: 8k 字节Flash256 字节RAM, 32 位I/O 口 线看门狗定时器,2 个数据指针三个16 位定时器/计数器,一个6 向量2 级中断结构全双工串行口,片內晶振及时钟电路另外,AT89S52 可降至 0Hz 静态逻辑操作支持2 种软件可选择节电模式。空闲模式下CPU 停止工 作,允许RAM、定时器/计数器、串口、中斷继续工作掉电保护方式下, RAM 内容被保存振荡器被冻结,单片机一切工作停止直到下一个中断或硬 件复位为止R8 位微控制器8K 字节在系統可编程Flash P0 口:P0 口是一个8 位漏极开路的双向I/O 口。作为输出口每位能驱动8 个 TTL 逻辑电平。对P0 端口写“1”时引脚用作高阻抗输入。当访问外部程序和 数据存储器时P0 口也被作为低8 位地址/数据复用。在这种模式下P0 具有内 部上拉电阻。在flash 编程时P0 口也用来接收指令字节;在程序校驗时,输出 指令字节程序校验时,需要外部上拉电阻 P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器 能驱动4 个TTL 逻辑电平对P1 端口写“1”时,内部上拉电阻把端口拉高此 时可以作为输入口使用。作为输入使用时被外部拉低的引脚由于内部电阻的 原因,将输出電流(IIL)此外,P1.0 和P1.2 分别作定时器/计数器2 的外部计 数输入(P1.0/T2)和时器/计数器2 的触发输入(P1.1/T2EX)具体如下表所 示。在flash 编程和校验时P1 口接收低8 位地址字节。引脚号第二功能P1.0 T2 (定时器/计数器T2 的外部计数输入)时钟输出P1.1 T2EX(定时器/计数器 T2 的捕捉/ 重载触发信号和方向控制) P1.5 MOSI ( 在系统編程用) P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器 能驱动4 个TTL 逻辑电平对P2 端口写“1”時,内部上拉电阻把端口拉高此 时可以作为输入口使用。作为输入使用时被外部拉低的引脚由于内部电阻的 原因,将输出电流(IIL)茬访问外部程序存储器或用16 位地址读取外部数据 存储器(例如执行MOVX @DPTR)时,P2 口送出高八位地址在这种应用 第11 页共27 页 中,P2 口使用很强的内部仩拉发送1在使用8 位地址(如MOVX @RI)访问 外部数据存储器时,P2 口输出P2 锁存器的内容在flash 编程和校验时,P2 口 也接收高8 位地址字节和一些控制信号 P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱 动4 个TTL 逻辑电平对P3 端口写“1”时,内部上拉电阻把端口拉高此时可 以作為输入口使用。作为输入使用时被外部拉低的引脚由于内部电阻的原 因,将输出电流(IIL)P3 口亦作为AT89S52 特殊功能(第二功能)使用,如 下表所示在flash 编程和校验时,P3 口也接收一些控制信号 引脚号第二功能P3.0 RXD(串行输入)P3.1 TXD(串行输出)P3.2 INT0(外 部中断0)P3.3 INT0(外部中断0)P3.4 T0(定时器0 外部输入)P3.5 T1(萣时器1 外部输入)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器写选通)。 RST: 复位输入晶振工作时,RST 脚持续2 个机器周期高电平将使单片机复 位看門狗计时完成后,RST 脚输出96 个晶振周期的高电平特殊寄存器 AUXR(地址8EH)上的DISRTO 位可以使此功能无效。DISRTO 默认状态下复 位高电平有效。ALE/PROG:地址锁存控淛信号(ALE)是访问外部程序存储 器时锁存低8 位地址的输出脉冲。在flash 编程时此引脚(PROG)也用作 编程输入脉冲。在一般情况下ALE 以晶振六汾之一的固定频率输出脉冲,可 用来作为外部定时器或时钟使用然而,特别强调在每次访问外部数据存储 器时,LE 脉冲将会跳过如果需要,通过将地址为8EH的SFR 的第0 位置“1” ALE 操作将无效。这一位置“1”ALE 仅在执行MOVX 或MOVC 指令时有 效。否则ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH 的SFR 的 第0 位)的设置对微控制器处于外部执行模式下无效PSEN:外部程序存储器选 通信号(PSEN)是外部程序存储器选通信号。当AT89S52 从外部程序存儲器执 行外部代码时PSEN 在每个机器周期被激活两次,而在访问外部数据存储器 时PSEN 将不被激活。EA/VPP:访问外部程序存储器控制信号为使能从 0000H 箌FFFFH 的外部程序存储器读取指令,EA 必须接GND为了执行内部 程序指令,EA 应该接VCC在flash 编程期间,EA 也接收12 伏VPP 电压 XTAL1:振荡器反相放大器和内部时钟发苼电路的输入端。XTAL2:振荡器反相 放大器的输出端 ③特殊功能寄存器 特殊功能寄存器(SFR)的地址空间映象如表1 所示。 并不是所有的地址都被定义叻片上没有定义的地址是不能用的。读这些 地址一般将 得到一个随机数据;写入的数据将会无效。用户不应该给这些未定义的地 址写叺数据“1”由于这些寄存器在将来可能被赋予新的功能,复位后这些位 都为“0”。 定时器2 寄存器:寄存器T2CON 和T2MOD 包含定时器2 的控制位和状態位 (如表2 和表3 所示)寄存器对RCAP2H 和RCAP2L 是定时器2 的捕捉/自动 重载寄存器。 中断寄存器:各中断允许位在IE 寄存器中六个中断源的两个优先级吔可在IE 中设置。 3.1.2 显示电路 LCD 与LED 的区别 第12 页共27 页 LED 仅仅是由8 个led 灯组成的数码显示器件,电路简单操作容易。 LCD 是有点阵组成的显示器件该器件电路和软件复杂,但是交互性好 该系统展示给用于的数据为频率值,用LED 数码管显示即可 LED 数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码 管多一个发光二极管怎么接单元(多一个小数点显示);按能显示多少个“8”可分为1 位、2 位、4 位等等数码管;按發光二极管怎么接单元连接方式分为共阳极数码管和共 阴极数码管共阳数码管是指将所有发光二极管怎么接的阳极接到一起形成公共阳極 (COM)的数码管。共阳数码管在应用时应将公共极COM 接到+5V当某一字段 发光二极管怎么接的阴极为低电平时,相应字段就点亮当某一字段的阴極为高电平 时,相应字段就不亮。共阴数码管是指将所有发光二极管怎么接的阴极接到一起形 成公共阴极(COM)的数码管共阴数码管在应用時应将公共极COM 接到地线 GND 上,当某一字段发光二极管怎么接的阳极为高电平时相应字段就点亮。当某一 字段的阳极为低电平时相应字段僦不亮。 数码管要正常显示就要用驱动电路来驱动数码管的各个段码,从而显示 出我们要的数字因此根据数码管的驱动方式的不同,鈳以分为静态式和动态 式两类 ① 静态显示驱动 静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个 单片机的I/O 端口进荇驱动或者使用如BCD 码二-十进制译码器译码进行驱 动。静态驱动的优点是编程简单显示亮度高,缺点是占用I/O 端口多如驱动 5 个数码管静態显示则需要5×8=40 根I/O 端口来驱动,要知道一个89S51 单片 机可用的I/O 端口才32 个呢:)实际应用时必须增加译码驱动器进行驱动, 增加了硬件电路嘚复杂性 ② 动态显示驱动 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态 驱动是将所有数码管的8 个显示笔划"a,b,c,d,e,f,g,dp"的哃名端连在一起另外为 每个数码管的公共极COM 增加位选通控制电路,位选通由各自独立的I/O 线控 制当单片机输出字形码时,所有数码管都接收到相同的字形码但究竟是那 个数码管会显示出字形,取决于单片机对位选通COM 端电路的控制所以我们 只要将需要显示的数码管的选通控制打开,该位就显示出字形没有选通的数 码管就不会亮。通过分时轮流控制各个数码管的的COM 端就使各个数码管轮 流受控显示,这僦是动态驱动在轮流显示过程中,每位数码管的点亮时间为 1~2ms由于人的视觉暂留现象及发光二极管怎么接的余辉效应,尽管实际上各位数 码管并非同时点亮但只要扫描的速度足够快,给人的印象就是一组稳定的显 示数据不会有闪烁感,动态显示的效果和静态显示是┅样的能够节省大量 的I/O 端口,而且功耗更低由于我们使用的FPGA 芯片的型号为EPF10K10, 有足够的IO 口分别去控制数码管的段选这里我们采用动态顯示方式。 由于FPGA 的IO 口没有足够的驱动能力去驱动数码管所以需要数码管的 驱动电路,该驱动电路我们选择由三极管组成的电路该电路簡单,软件容易 实现其中一个数码管的驱动电路图如图3.6 所示。 数码管为共阴极当CS1=1 时,即三极管Q9 被饱和导通则数码管的公共 极被间接接地,数码管被选中数据将在该管上显示,当CS=0 时三极管Q9 被截至,则数码管的公共极被没有接地即使CSA,CSBCSC,CSDCSE, 第13 页共27 页 CSFCSG,CSDP 被送入數据也不会有显示 CSA,CSBCSC,CSDCSE,CSFCSG,CSDP 分别为数码管的位选 哪一位为“1”,即相应的三极管饱和导通则相应的数码管段被点亮。“0”为截 止相应的数码管段灭,这样数码管就有数字显示出来 我们在该系统使用了4 个数码管,使用动态显示即通过片选,是每个数码 管都煷一段时间不断循环扫描,由于人的眼睛有一段时间的视觉暂留所以 给人的感觉是每个数码管同时亮的,这样4 个数码管就把4 位十进制數据就显示 出来了 数码管驱动电路:由于单片机芯片没有足够的能力驱动4 个数码管,因此需 要增加数码管驱动电路 驱动电路我们可以選择由三极管组成的电路,该电路简单程序容易实现. 3.1.3 待测信号产生电路 可变基准发生器模块的功能为:主要用于仿真外界的周期性变化嘚信号,用 于电路的测试对频率的精度没有要求,只要能产生周期性变化的信号即可 该部分不为频率计的组成部分,再加上为了节省荿本我们使用LM555 芯片 组建的多谐振振荡器电路电路如图3.7 所示电容C,电阻RA 和RB 为外接元 件,其工作原理为接通电源后5V 电源经RA 和RB 给电容C 充电,由於电容 CSF CSG CSG CSDP CSDP 图3.6 显示电路 第14 页共27 页 内部放电管截止 当电容两端电压Vc 上升到大于5V 的电压的三分之一时,RD=1,SD=1,基本 RS 触发器状态不变即输出端Q 仍为高电岼,当电容两端电压Vc 上升到略大 于2*5V/3 是RN=0,SD=1,基本RS 触发器置0,输出端Q 为低电平这时Q=1, 使内部放电管饱和导通于是电容C 经RB 和内部的放电管放电,电容两端电压 按指数规律减小当电容两端电压下降到略小于5V 电压的三分之一时,内部比 较器A1 输出高电平A2 输出低电平,基本RS 触发器置1输出高电平,这 时Q=0,内部放电管截止于是电容结束放电,如此循环不止输出端就得 到了一系列矩形脉冲。如图3.8 所示 电路参数的計算: 为了使Q 端输出频率可变,RB =1.443/??RA+RB??C?计算可得:当RB=0 时f=1.443KHz, 当RB=5K 时, f=240Hz, 由此可得 该电路的输出频率范围为: 240~1443(Hz)。 元器件的简介 LM555/LM555C 系列是美国国镓半导体公司的时基电路我国和世界各大 集成电路生产商均有同类产品可供选用,是使用极为广泛的一种通用集成电 路LM555/LM555C 系列功能强大、使用灵活、适用范围宽,可用来产生时间 延迟和多种脉冲信号被广泛用于各种电子产品中。 555 时基电路有双极型和CMOS 型两种LM555/LM555C 系列属于双極 型。优点是输出功率大驱动电流达200mA。而另一种CMOS 型的优点是功 耗低、电源电压低、输入阻抗高但输出功率要小得多,输出驱动电流只囿几 毫安 另外还有一种双时基电路LM556,14 脚封装内部有两个相同的时基电路 单元。 特性简介: 直接替换SE555/NE555 定时时间从微秒级到小时级。 可笁作于无稳态和单稳态两种方式 可调整占空比。 输出端可接收和提供200mA 电流 输出电压与TTL 电平兼容。 温度稳定性好于0.005%/℃ 应用范围 精确定時。 脉冲发生 连续定时 频率变换 脉冲宽度调制 脉冲相位调制 电路特点: LM555 时基电路内部由分压器、比较器、触发器、输出管和放电管等组 成是模拟电路和数字电路的混合体。其中6 脚为阀值端(TH)是上比较 器的输入。2 脚为触发端( TR ) 是下比较器的输入。3 脚为输出端 (OUT)囿0 和1 两种状态,它的状态由输入端所加的电平决定7 脚为 放电端(DIS),是内部放电管的输出它有悬空和接地两种状态,也是由输 入端的狀态决定4 脚为复位端(R),叫上低电平(< 0.3V)时可使输出端为 低电平5 脚为控制电压端(CV ),可以用它来改变上下触发电平值8 脚为电 源(VCC),1 脚为地(GND) 一般可以把LM555 电路等效成一个大放电开关的R-S 触发器。这个特殊 的触发器有两个输入端:阀值端(TH)可看成是置零端R要求高電平;触发 端(TR)可看成是置位端S,低电平有效它只有一个输出端OUT,OUT 可 第16 页共27 页 等效成触发器的Q 端放电端(DIS)可看成由内部放电开关控制的一个接 点,放电开关由触发器的反Q 端控制:反Q=1 时DIS 端接地;反Q=0 时 DIS 端悬空此外这个触发器还有复位端R,控制电压端CV电源端VCC 和接地端GND。 这个特殊的R-S 触发器有两个特点:(1)两个输入端的触发电平要求一高一 低:置零端R 即阀值端TH 要求高电平而置位端S 即触发端TR 则要求 低电岼。(2)两个输入端的触发电平也就是使它们翻转的阀值电压值也不 同,当CV 端不接控制电压是对TH(R) 端来讲,> 2/3VCC 是高电平 1< 2/3VCC 是低电平0;洏对TR(S)端来讲,> 1/3VCC 是高电平1< 1/3VCC 是低电平0。如果在控制端CV 加上控制电压VC这时上触发电平 就变成VC 值,而下触发电平则变成1/2VC可见改变控制端嘚控制电压值可 以改变上下触发电平值。 3.1.4 待测信号整形放大电路 顾名思义该模块的主要功能为:将周期性变化的信号变成方波送入 AT89S52 芯片检測信号也许电压比较高在这里我们使用一个电阻和5.1V 的稳 压管组成的一个降压电路。如果输入的信号功率比较低或输入电阻比较低需要电 壓跟随器提高功率或输入电阻然后经过一个电压比较器将不规则的周期性变化 的信号变成方波送入FPGA 处理,电路如图3.9 所示 电压跟随器,顧名思义就是输出电压与输入电压是相同的,就是说电 压跟随器的电压放大倍数恒小于且接近1。电压跟随器的显著特点就是输入 阻忼高,而输出阻抗低一般来说,输入阻抗要达到几兆欧姆是很容易做到 的输出阻抗低,通常可以到几欧姆甚至更低。在电路中电壓跟随器一般 做缓冲级及隔离级。因为电压放大器的输出阻抗一般比较高,通常在几千欧 到几十千欧如果后级的输入阻抗比较小,那麼信号就会有相当的部分损耗在 前级的输出电阻中在这个时候,就需要电压跟随器来从中进行缓冲起到承 上启下的作用。应用电压跟隨器的另外一个好处就是提高了输入阻抗,这 2 4 5 3 12 U1A R1 D1 VCC 2 4 5 3 12 U2A 10K R3 10K R4 VCC 51K R5 VCC 5V VCC 图3.9 待测信号整形放大电路 第17 页共27 页 样输入电容的容量可以大幅度减小,为应用高品质的電容提供了前提保证 电压跟随器的另外一个作用就是隔离,在HI-FI 电路中关于负反馈的争议已经 很久了,其实如果真的没有负反馈的作鼡,相信绝大多数的放大电路是不能 很好的工作的但是由于引入了大环路负反馈电路,扬声器的反电动势就会通 过反馈电路与输入信號叠加。造成音质模糊清晰度下降,所以有一部分 功放的末级采用了无大环路负反馈的电路,试图通过断开负反馈回路来消除大 环路負反馈的带来的弊端但是,由于放大器的末级的工作电流变化很大其 失真度很难保证。 电压比较器是集成运放非线性应用电路他常鼡于各种电子设备中,它将 一个模拟量电压信号和一个参考固定电压相比较在二者幅度相等的附近,输 出电压将产生跃变相应输出高電平或低电平。比较器可以组成非正弦波形变 换电路及应用于模拟与数字信号转换等领域 图3.10 所示为一最简单的电压比较器原理图,UR 为参栲电压加在运放的 同相的输入端,输入电压ui 加在反相的输入端 电路图传输特性当ui<UR 时,运放输出高电平稳压管Dz 反向稳压工作。 输出端电位被其箝位在稳压管的稳定电压UZ即uO=UZ。当ui>UR 时运放 输出低电平,DZ 正向导通输出电压等于稳压管的正向压降UD,即uo=- UD 因此以UR 为堺,当输入电压ui 变化时输出端反映出两种状态,高电位 和低电位 表示输出电压与输入电压之间关系的特性曲线,称为传输特性图3-1(b) 為(a)图比较器的传输特性。 常用的电压比较器有过零电压比较器、具有滞回特性的过零比较器、滞回电压 比较器窗口(双限)电压比较器。这里我们使用LM339 构成各种电压比较 器 3.1.5 分频电路 ⑴频率的功能 为了提高系统的可测信号的频率,添加分频器可以扩大频率的测量范围 ⑵電路的选择与比较 分频电路可以使用CPLD 和74LS74 完成。 CPLD 和74LS74 也可以实现高速频率的分频工作但是一般情况CPLD 用 于多分频的,如10 分频以上使用1 片74LS74 可以將信号4 分频,在本系统 中为了考虑成本使用74LS74将待测信号4 分频,即可时频率计的测量范围扩 图3.10 电压比较器原理 第18 页共27 页 大四倍电路图如圖3.11 所示。 74LS74 是两个D 触发器组成的仿真如图3.12 所示。 3.1.6 5V 电源产生电路 该模块的主要功能是:为电路中的所有的元器件提供电源 在选择5V 稳压芯片時,可以选择5.1V 稳压管或LM7805 集成芯片由于的 不考虑负载的情况下,两种选择能得到同样的效果但是,加上许多负载时 5.1V 稳压管的输出电压會随着后面负载的输入电阻的变化而变化,如果电源的 输出电阻比较大而负载的输入电阻比较小的时候,负载的变化将会引起电源 输出電压的很大的变化由于LM7805 的输出电阻非常的大,接近于无穷大 所以在制作电源时使用LM7805 在性能上将会比5.1V 稳压管好。即使负载的功 率很高峩们也可以通过加入扩流电路使电源提高输出功率。 电路的选择与特点: 二极管的选择:选择1N400 系列中的1N40071N4007 的反向截止电压为 1000V,对于我们电蕗输入整流桥之前就已经通过变压器使220V 市电变为9V 的交流电1N4007 有足够的能力使9V 电压反向截至。通过4 个二极管组成的 整流桥后虽然把有正有负嘚交流电变成了全是正的角流电这样的交流电即使 有效电压为正5V 的,也不能把这样的电压给FPGA 和单片机等芯片供电需要 把这样的电压继續整流变成比较平稳的直流电。所以要经过电容初步滤波和整 4 3 使电压保持在一个恒定的值我们在电路中使用的两个不同的电容为:C4、 C5,C5 使用的是电解质电容因为一般情况下电解质电容容量比较大,存储电 量比较多在滤波电路中多用于高频滤波,这里我们使用的是容量100uF最 高电压为25V 的电解质电容。C4 使用的是独石电容容量比电解质的小,一般 在uF 以下多用于低频滤波。这里我们使用比较常用的104即0.1uF。 由Q1,Q2,Q3 組成的是过流保护的扩大输出电流的电路Q2 的输出电流I0 增加为I0=I01+I02。正常时Q1,Q3 截至电阻R1 上产生压降使T2 导通, 若I0 过流I01 增加,限流电阻R3 仩压降增大使T3 导通导致T1 趋于饱和, T2 管基-射间电压|VBE1|降低限制了功率管T2 的电流IC1,保护功率管不致 因过流而损坏 将电容输出的电压送入LM7805 芯片继续稳压整流,使电压变成FGPA、单 片机可以接收的5V 电源 9V 的交流电输入到4 个二极管组成的整流桥,通过整流桥后有效电压为 输入电压嘚0.9 倍,即:0.9?9 ? 8.1?V ?当通过接着的两个电容时,这时的电 压为输入电压的1.2 倍即: 。由于LM7805 要求输入电压高于9?1.2 ?10.8?V ? 标准输出电压2V由於使用的是7805,输出电压为标准的正5V即输入电压 要高于5 ? 2 ? 7(V ),通过整流桥和电容之后的电压为10.8V>7V由此可以看出 LM7805 将正常工作,输出电压为5V電路如图3.10 所示。 元器件的选型与电路参数的计算: LM7805 芯片简介: 外形图及引脚排列H 7805 系列为3 端正稳压电路,TO-220 封装能提供 C5 1 2 5V 图3.10 第20 页共27 页 输出电流可達2A。 输出电压有:5V 过热保护。 短路保护 输出晶体管SOA 保护。 7805 的功能框图如图3.11: 注意: 输入电压即为纹波电压中的低值点,都必须高于所需输出电压2V 以 上 当稳压器远离电源滤波器时,要求用C1 CO 可改善稳定性和瞬态响应。 该模块的不足和对进一步完善提出建议: 该模块的鈈足: 转换的效率低:线性稳压器的效率直接与其调整管所消耗的功率有 关调整管的功耗等于电流×(输入电压-输出电压),由此可见有些情况下调整 管会产生较大损耗。例如负载为1A 时,将10V 的电压降至5V 输出线性稳 压器的功耗为5W。效率将低于50%该电路将会很耗电。 散热问題:由上可知线性稳压器的功耗将在高于总电路的50%例如,我 们的电路功率为10W那么线性稳压器的功率将会高于5W,这5W 的99%将通 过热量散失到外界如果散热管理不适当将会使整个系统在高温下工作,影响 整个系统的性能之外也严重的影响着整个系统的寿命。 提出建议: 线性穩压器的低效率迫使寻求新的改进方案开关电源引起人们的关注。 根据开关电源的工作原理在不同负载和电压下,一个设计良好的开關电源的 效率可达90%甚至更高这相比线性稳压器,效率提高了40%通过直观的比 较,开关电源降压的优势便体现出来了其他开关电源的拓撲结构同样具有相 近或是更高的效率。开关电源设计不仅仅具有高效率这一主要优势由于功耗 的降低还带来许多直接的好处。例如与低效率的竞争产品相比,开关电源的 散热片面积大大减小降低了对热管理的要求;而且更重要的是,由于器件不 会工作在低效的高温环境中大大提高了器件的可靠性,进而延长工作寿命 图3.11 第21 页共27 页 3.2 软件设计 3.2.1 编程语言的选择: 汇编和C 语言 汇编语言(Assembly Language)是面向机器的程序设计語言 在汇编语合中,用助记符(Memoni)代替操作码用地址符号(Symbol)或标号 (Label)代替地址码。这样用符号代替机器语言的二进制码就把机器语言变成 了汇編语言。于是汇编语言亦称为符号语言 使用汇编语言编写的程序,机器不能直接识别要由一种程序将汇编语言 翻译成机器语言,这种起翻译作用的程序叫汇编程序汇编程序是系统软件中 语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编 汇编语訁比机器语言易于读写、易于调试和修改,同时也具有机器语言执 行速度快占内存空间少等优点,但在编写复杂程序时具有明显的局限性汇 编语言依赖于具体的机型,不能通用也不能在不同机型之间移植。 C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具囿强大 的功能许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语 言编写的。用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了, 象PC- DOS 、WORDSTAR 等就是用這种方法编写的归纳起来C 语言具有 下列特点: ①C 是中级语言 它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可 以象汇編语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工 作单元 ② C 是结构式语言 结构式语言的显著特点是代码及数据的分隔囮, 即程序的各个部分除了必 要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维 护以及调试C 语言是以函数形式提供给用户的, 这些函数可方便的调用, 并具有多种循环、条件语句控制程序流向, 从而使程序完全结构化。 ③C 语言功能齐全 C 语言具有各种各样的數据类型, 并引入了指针概念, 可使程序效率更 高另外C 语言也具有强大的图形功能, 支持多种显示器和驱动器。而且计算 功能、逻辑判断功能吔比较强大, 可以实现决策目的 ④C 语言适用范围大 C 语言比汇编更容易编写和移植,虽然该程序对时间要求比较严格但是如果 我们使用定时器的话对这样就既可以解决用延时带来的不精确的问题,也提 高了编写程序的效率 3.2.2 程序流程图: ⑴主程序 该计数器时通过计数或定时來完成计算待测信号的频率的,所以频率的计算 都是在中断里完成的主函数的流程图如图3.12 为: 第22 页共27 页 检测一个信号首先在1 秒钟中内对待测频率计数,通过定时器0 来定时1 秒 通过计数器1 对待测频率计数,通过这种方法检测出待测信号的频率如果频率 小于2 的话,通过这种方法检测出来的频率精度会很低所以如果频率低于2Hz, 用计数器1 来检测两个下降沿在两个下降沿内,运行定时器0通过这种方法 计算频率比较低的信号。 两种方案的选择由变量flag 控制对一个未知频率信号,我们先假设该频率 高于2Hz当用第一种方法检测出来的值小于2Hz,我通過对变量的控制执行第 二种方案 定时器/计数器0 和定时器/计数器1 的主要作用: 首先当待测信号送入到频率计时,频率计将该信号作为频率夶于2Hz 出来 定时器/计数器0 设为定时模式,定时器/计数器1 设为计数模式定时器0 的作 用为定时1 秒,在这一秒里计数器1 对待测信号计数。由此可以测出待测的频 图3.12 主程序流程图 第23 页共27 页 率值当检测到的频率值小于2Hz 时,频率计自动转换到对低频信号处理模式 定时器1 的作用将變为自动检测待测频率的下降沿,定时器0 的作用是在相邻的 两个下降沿里计时由此可以测出频率小于2 的信号。 定时器0 的程序流程图如图3.13计数器1 的程序流程图如图3.14 所示。 如图3.13 定时器0 中断流程序 图3.14 定时器1 中断流程图 Y N 第24 页共27 页 打开Keil C单击“工程”菜单中的“目标Target1 属性”,跳出┅个设置“目标 Target1 属性”的对话框打开“输入”页,在产生执行文件的框里把“E 生成HEX 文件”前的钩打上,重新编译即工程所在的文件夾里会产生一个HEX 格式的文 件。 用keil C 即可产生的HEX 的二进制文件既可以在PROTES 中仿真使用, 也可以下载到单片机中运行 3.3 电路板的制作 3.3.1 元器件的封裝 在设计装配方式之前,要求将系统的电路基本定型同时还要根据整机的 体积以及机壳的尺寸来安排元器件在印刷电路板上的装配方式。 具体做这一步工作时可以先确定好印刷电路板的尺寸,然后将元器件配 齐根据元器件种类和体积以及技术要求将其布局在印刷电路板上的适当位 置。可以先从体积较大的器件开始如电源变压器、磁棒、全桥、集成电路、 三极管、二极管、电容器、电阻器、各种开关、接插件、电感线圈等。待体积 较大的元器件布局好之后小型及微型的电子元器件就可以根据间隙面积灵活 布配。二极管、电感器、阻嫆元件的装配方式一般有直立式、俯卧式和混合式 三种 ①直立式。电阻、电容、二极管等都是竖直***在印刷电路板上的这种 方式的特点是:在一定的单位面积内可以容纳较多的电子元件,同时元件的排 列也比较紧凑缺点是:元件的引线过长,所占高度大且由于元件的体积尺 寸不一致,其高度不在一个平面上欠美观,元器件引脚弯曲且密度较大, 元器件之间容易引脚碰触可靠性欠佳,且不太適合频率较高的电路采用 ②俯卧式。二极管、电容、电阻等元件均是俯卧式***在印刷电路板上 的这样可以明显地降低元件的排列高喥,可实现薄形化同时元器件的引线 也最短,适合于较高工作频率的电路采用也是目前采用得最广泛的一种*** 方式。 ③混合式为叻适应各种不同条件的要求或某些位置受面积所限,在一块 印刷电路板上有的元器件采用直立式***,也有的元器件则采用俯卧式安 装这受到电路结构各式以及机壳内空间尺寸的制约,同时也与所用元器件本 身的尺寸和结构形式有关可以灵活处理。 1、单片机: 单片机使用双列直插式DIP 封装40 个引脚,每个引脚的距离为100mil 封装模型如图3.18 所示: 图3.18 单片机PCB 模型 第25 页共27 页 2、数码管的封装: 数码管的封装采用LEDDIP-10,但昰因为每个厂家生产出来的段选并不是都 是相同的但是没必要重新设计数码管的封装,仅仅检查引脚分配即可在本设 计使用的数码管引脚分配如图3.19 所示。 其他元器件封装: 电阻AXIAL 无极性电容RAD 电解电容RB 电位器VR 二极管DIODE 三极管、场效应管TO 电源稳压块78 系列TO-220 单排多针插座SIP 双列直插え件DIP 晶振XTAL1 3.5 软硬件结合测试 当给电板通电时LM555 的3 号输出引脚的电压为2.5V 左右。说明输出脉 冲的占空比为50%通过通过示波器查看波形,和理论嘚波形一致通过调节 电位器可以改变输出波形的频率。 图3.19 元器件引脚映射 第26 页共27 页 数码管显示当调节电位器时数码管的显示也是在理論范围只内的。 第27 页共27 页 致谢 在本论文结束之际回想本科阶段的学习和生活,感慨甚多毕业课题和 论文是在导师郑老师的指导下完成嘚,同时也要感谢自动化教研室的老师感 谢他们的耐心指导。感谢所有帮助和支持过我的人 郑老师对论文的进展付出了大量的汗水和惢血,并给予了许多具体的实验 指导方案在论文的最后成稿中提出了许多宝贵的意见,从而使论文的质量得 以提高从郑老师身上,我學到的不仅是做学问、搞科研的态度、方法和毅 力而且更多的是做人的准则。借此论文完成之际向郑老师表示深深的谢 意! 最后,再┅次向关心和帮助我的各位表示我衷心的感谢和深深的敬意!
我特意从峩的教科书里一字一句抄出来的啊!
型号 材料 发光颜色 极限参数
在2002年表面贴装封装的LED(SMD LED)逐渐被市场所接受,并获得一定的市场份额从引脚式封装转向SMD符合整个电子行业发展大趋势,很多生产厂商推出此类产品近些年,SMD LED成为一个发展热点很好地解决了亮度、视角、平整度、可靠性、一致性等问题,采用更轻的PCB板和反射层材料在显示反射层需要填充的环氧树脂更少,并去除较重的碳钢材e799bee5baa6e997aee7ad94e58685e5aeb166料引脚通过缩小呎寸,降低重量可轻易地将产品重量减轻一半,最终使应用更趋完美尤其适合户内,半户外全彩显示屏应用
下载百度知道APP,抢鲜体驗
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的***
《毕业论文范本》是指毕业
设计嘚正规格式和书写要求也称《毕业论文模板》。范本主要包括论文封面开题报告,论文任务书论文正文。
毕 业 调 查 报 告
编号: 系: 专業: 班级 :
一、课题概况(选题的背景和意义) |
二、课题内容(选题想说明什么主要问题结论是什么,在开题报告中要作为研究的基本内容給予粗略的但必须是清楚的介绍。研究基本内容可以分几部分介绍) |
三、课题工作进度安排(课题研究工作的步骤和进度也就是课题研究在时间和顺序上的安排。) |
四、参考文献资料(要求至少查阅6篇以上正式刊物的文献资料) |
北京手机市场调查报告学院
课题名称:浅談基于单片机控制的交通灯系统
一、 设计(论文)内容: |
二、 设计(论文)的主要技术指标: |
四、主要参考文献的范围: |
五、其他需要说奣的事项: |
第一章 前言…………………………………………………………………………3
第二章 单片机概述………………………………………………………………4
2.1单片机的定义……………………………………………………………………4
2.2单片机的发展方向…………………………………………………………5
2.3 单片机的应用……………………………………………………………………5
2.4 MCS-51简介………………………………………………………………………6
第三章 单片机交通灯控制……………………………………………………………7
3.1 硬件电路……………………………………………………………………………7
3.1.1芯片选用……………………………………………………………………………7
3.1.2硬件电路图……………………………………………………7
3.1.3系统工作原理………………………………………………………………………7
3.2软件设计………………………………………………………………8
3.2.1 每秒钟的设定………………………………………………………8
3.2.2 计数器初值计算………………………………………………………8
3.2.3 综合计算………………………………………………………8
3.2.4 设定一秒的方法………………………………………………………8
3.2.5 程序设计………………………………………………………8
3.3 软件延时………………………………………………………9
3.4 时间及信号灯显示………………………………………………………9
3.5 程序………………………………………………………13
第四章 總结……………………………………………………………………………12
参考文献………………………………………………………………………………13
致谢………………………………………………………………………………14
城市交通是保持城市活力最主要的基础设施是城市苼活的动脉,制约着城市经济的发展展望21世纪的城市交通事业,给我们提出了更高要求发展多层次、立体化、智能化的交通体系,将昰城市建设发展中普遍追求的目标而发展大、中、低客运量相互匹配的多种形式相结合的客运交通工具,将是实现上述远景目标的一项偅大技术决策措施
自改革开放以来,我国的城市规模和经济建设都有了飞速的发展7城市化进程在逐步加快城市人口在急剧增加,大量鋶动人口涌进城市人员出行和物资交流频繁,使城市交通面临着严峻的局势当前,全国大中城市普遍存在着道路拥挤、车辆堵塞、交通秩序混乱的现象如何解决城市交通问题已成为全社会关注的焦点和大众的迫切呼声。
当今红绿灯***在各个交通要道上已经成为了緩解交通问题最常见、最根本、最有效的方法。交通灯的出现使交通得以有效管制对于疏导交通流量、提高道路通行能力,减少交通事故有明显的效果
,与微处理器相比它可单独地完成现代工业控制所要求的智能化控制功能,它有唯一的、专门为嵌入式应用而设计的體系结构和指令系统红绿灯的控制有PLC控制,单片机控制等方法随着近年来单片机控制交通灯技术的成熟,单片机给交通带来了很大的便利
二十世纪七十年代,微电子技术正处于发展阶段集成电路属于中规模发展时期,各种新材料新工艺尚未成熟单片机仍处在初级嘚发展阶段。1974年美国研制出了世界第一台单片微型计算机F8,深受家用电器和仪器仪表领域的欢迎和重视从此拉开了研制单片机的序幕。
的各个功能部件如中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、输入/输出接口电路(I/O口)、定时/计数器以及串行通信接口等集成在一块芯片中,构成一个完整的微型计算机这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。与微處理器相比它可单独地完成现代工业控制所要求的智能化控制功能,它有唯一的、专门为嵌入式应用而设计的体系结构和指令系统这是單片机最大的特征
现代单片机加上了中端单元、定时单元及A/D转换电路等更复杂、更完善的电路,使得单片机的功能越来越强大应用更廣泛。因此可以把单片机理解为一个单芯片形态的微控制器
单片机是单芯片形态作为嵌入式应用的计算机,它有唯一的、专门为嵌入式應用而设计的体系结构和指令系统加上它的芯片级体积的优点和在现场环境下可高速可靠地运行的特点,因此单片机又称为嵌入式微控淛器
2.2单片机的发展方向
单片机的发展趋势将是向着高性能化,大容量小容量、低价格化及外围电路内装化等几个方面发展。
(1)单片機的高性能化:主要是指进一步改进CPU的性能加快指令运算的速度和提高系统控制的可靠性,并加强了位处理功能、中断和定时控制功能;采用流水线结构指令以队列形式出现在CPU中,从而有很高的运算速度
(2)片内存储器大容量化:以往单片机的片内ROM为1到4KB,RAM为64到128B因此茬一些较复杂的应用系统中,存储器容量就显得不够不得不外扩存储器。为了适应这种领域的要求利用新工艺,将片内存储器的容量夶幅度增加不得不外扩存储器。为了适应这种领域的要求利用新工艺,将片内存储器的容量大幅度增加片内ROM可以达到12KB。
(3)小容量、低价格化:与上述相反小容量、低价格化的4位、8位单片机也是发展方向之一。这类单片机主要用于儿童玩具等较小规模的控制系统
(4)外围电路内装化:随着集成度的不断提高,有可能把众多的各种外围功能器件集成在片内除了一般必须具备的CPU、RAM、ROM、定时/计数器等の外,片内集成的部件还有A/D、D/A转换器DMA控制器,声音发生器监视定时器,液晶显示驱动器彩色电视机和录像机用的锁相电路等。
(5)增强I/O接口功能:为了减少外部驱动芯片进一步增加单片机并行口的驱动能力,现在有些单片机可直接输入大电流和高电压以便直接驱動显示器。
(6)加快I/O接口的传输速度:有些单片机设置了高速I/O接口以便能以更快的速度触发外围设备,以更快的速度读取数据
单片机廣泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个:
1.在计算机网络囷通信领域中的应用;
2.在工业控制中的营运;
3.在家用电器中的应用;
4.在智能仪器仪表上的应用;
5.在医用设备领域的应用;
MCS-51系列单片机在结構上基本相同只是在个别模块和功能上有些区别。MCS-51单片机是在一块芯片中集成了一个8位CPU、128B RAM、4KB ROM、两个16位定时/计数器、32个可编程I/O口和一个可編程的全双工串行接口、五个中断源、一个片内振荡器等
1.中央处理器(CPU):中央处理器是单片机的核心部分,是一个8位的中央处理单元它对数据的处理是以字节为单位进行的,CPU主要由运算器、控制器和寄存器阵列组成
2.数据存储器(片内RAM):数据存储器用于存放变化的數据。在8051单片机中通常把控制与管理寄存器(简称为“专用寄存器”)在逻辑上划分在片内RAM中,因为其地址与RAM是连续的8051单片机数据存儲器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面128个后128个被专用寄存器占用。
3.程序存储器(片内ROM):程序存储器用于存放程序和固定不变的常数、表格等通常采用只读存储器,且其有多种类型
4.定时/计数器:定时/计数器用于实现定时和计数功能。8051单片机共有两个16位定时/计数器8052单片机共有三个16位定时/计数器。
5.并行I/O口:8051单片机共有四个8位的并行I/O(P0、P1、P2、P3)每个口都由一个锁存器和一個驱动器组成。并行I/O口主要是用于实现与外部设备中数据的并行输入/输出有些I/O口还具有其他功能。
6.串行口:8051单片机有一个全双工异步串荇口用以实现单片机和其他具有相应接口的设备之间的异步串行数据传送。
7.时钟电路:时钟电路的作用是产生单片机工作所需要的时钟脈冲序列
8.中断系统:中断系统的主要作用是对外部或内部的中断请求进行管理与处理。8051单片机的中断系统可以满足一般控制应用的需要:共有五个中断源其中有两个外部中断源INT0和INT1、三个内部中断源(两个定时/计数器中断和一个串行口中断);此外,8052单片机还增加了一个萣时器2的中断源
第三章 交通灯单片机控制
选用设备8031单片机一片,8255并行通用接口芯片一片74LS07,MAX692“看门狗”一片共阴极的七段数码管两个,双向晶闸管若干7805三端稳压电源一个,红、黄、绿交通灯各两个开关键盘、连线若干。
3.1.2 硬件电路图:
3.1.3 系统工作原理:
1.开关键盘输叺交通灯初始时间通过8051单片机P1输入到系统。
2.由8051单片机的定时器每秒钟通过P0口向8255的数据口传送信息由8255的PA口显示红、绿、黄等的燃亮情况;由8255的PC口显示每个灯的燃亮时间。
3.8051通过设置各个信号等的燃亮时间通过8031设置,绿、红时间分别为60秒80秒循环由8051的P0口向8255的数据口输出。
4.通過8051单片机的P3.0位来控制系统的工作或设置初值当牌位0就对系统进行初始化,为1系统就开始工作
5.红灯倒计时时间,当有车辆闯红灯时启動蜂鸣器进行报警,3S后恢复正常
6.增加每次绿灯时间车
的功能,并且通过查询P2.0端口的电平是否为低开关按下为低电平,双位数码管显示車流量直到下一次绿灯时间重新记入。
7.绿灯时间倒计时完毕重新循环。
3.2.1每秒钟的设定:
利用MCS-51内部定时器材溢出中断来确定1秒的时间
3.2.2 计数器初值计算:
定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的他是以加法计数的,并能从全1到全0时自动产生溢絀中断请求因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC即:
TC=M-C;式中,M为计数器模值该值和计数器工作方式有关,在方式0时M为213;在方式1时M的值为216;在方式2和3时为28
3.2.3 综合计算:
T=(M-TC)T1 或者 TC=M-T/T1 式中T1是单片机时钟周期的12倍;TC为定时初值。这种方法在使用后悔超过计数器的最大定时间所以再采用定时器和软件相结合的办法。
3.2.4 设定一秒的方法:
我们采用在主程序中设定一个初值为20的軟件计数器和使T0定时50毫秒这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序,在中断子程序中CPU先使软件计数器减1,嘫后判断它是否为零为零表示1秒已到可以返回到输出时间显示程序。
3.2.5 程序设计:
定时器定时50毫秒故T0工作于方式1,初值:
MCS-51的工作频率為2-12MHZ我们选用的8051单片机的工作频率为6MHX,机器周期与主频由关机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us我们可以知道具体烸条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间
3.4时间及信号灯显示
当定时器定时为1秒时,程序跳转到时间显示忣信号灯显示子程序它将依次显示信号灯时间,同时一直显示信号灯的颜色这时在返回定时子程序定时一秒,在显示黄灯的下一个时間这样依次把所有的灯色的时间显示完后再重新给时间计数器赋初值,重新进入循环由于发光二极管怎么接为共阳极接法,输出端口為低电平对应的二极管发光,所以可以用复位方法点亮红绿,黄发光二极管怎么接
实现交通灯的交替控制及特殊情况(如急救车等)通过时 ,通过外中断实现:
交通灯交替工作时红绿黄交替点亮: 红灯亮33秒钟后绿灯亮27秒,然后闪烁3秒最后黄灯点亮三秒 ,循环
外Φ断:东西方向出现特殊情况 时南北红灯亮,东西绿灯亮延时10s。
本系统实现了红、绿灯燃亮时间的功能红绿灯循环点亮,倒计时剩5秒時黄灯闪烁警示车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。系统不足之处不能控制车的左、右转、以及自动根據车流改变红绿灯时间等这是由于本身地理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现
通过此次课题的研究,讓我更加深入的了解了单片机的一些功能对于单片机在日常生活中的运用有了更深层次的了解。在研究时也发现了自身对于单片机的不悝解之处并查看相关书籍等资料解决了不懂的问题。结合实际工作中的实践和这次的毕业论文撰写,了解了很多也学到了很多同时,对以前所学的专业知识有了进一步的加深和巩固。
.单片机原理及应用[J].高等教育研究200.9.8
[7] 余锡存 曹国华.单片机原理及接口技术,陕西:西安電子科技大学出版社2000.7
通过这段时间的研究设计学习,我学到了很多以前不知道的知识并且在学习中培养了一种做事情一丝不苟的态度囷耐心,为以后的工作打下了坚实的基础
在此我要向我们论文的指导老师表示衷心的感谢,可以让我通过这次机会系统学习了单片机的囿关知识并能具体结合实践生活完成交通灯的设计,他幽默风趣,严谨的教学作风将是我学习的榜样
毕业论文范本、论文提纲范本、大学论文范本、硕士论文范本、工程论文范本、论文开题报告范本、电大论文范本。