单片机数字频率计设计_本科毕业设计论文(编辑修改稿)内容摘要:
硬件的设计 基本设计原理 本设计是基于 ATMEL 公司生产的 AT89C51 单片机为核心的数字频率计,是利用该 51 单片机内部的定时 /计数器来完成待测信号频率的测量。 AT89C51 单片机内部具有 2 个 16 位的定时 /计数器 T0 与 T1,其工作方法可以通过编程来实现所需的定时 /计数与产生计数溢出中断要求的功能。 定时 /计数器 T0 与 T1 的核心都是 16位的加 1 计数器, TH0 与 TL0 构成在构成定时 /计数器 T0 加 1 计数器的高 8 位和低8 位; TH1 与 TL1 构成在构成定时 /计数器 T1 加 1 计数器的高 8 位和低 8 位。 加 1计数器的初值可以通过程序设定,这样就可以获得不同的计数值或定时时间。 当加1 计数器用作定时器时,每个机器周期加 1(使用 12MHz 时钟时,每 1us 加 1) ,这样以机器周期为基准可以用来测量时间间隔。 当加 1 计数器用作计数器时,在相应的外部引脚发生从 1 到 0 的跳变时计数器加 1,这样在计数闸门的控制下可以用来测量待测信号的频率。 外部输入每个机器周期被采样一次,这样检测一次从 1 到0 的跳变至少需要 2 个机器周期( 24 个振荡周期),所以最大计数速率为时钟频率的 1/24。 AT89C51 单片机的时钟频率可以在 0Hz— 24MHz 范围内自动调节,当使用 12MHz 时钟时,最大计数速率为 500KHz。 定时 /计数器的工作由相应的运行控制位 TR 控制,当 TR 置 1 时 ,定时 /计数器开始计数;当 TR 置 0 时,停止计数。 在本设计方案中,我通过程序设定 T0 工作在计数状态下, T1 工作在计时状态下。 T0 计数器对输入的信号经行计数。 由于信号的频率就是每秒钟信号脉冲的个数,于是我让 T1 工作在定时状态下,定时时间为 1 秒。 每定时 1 秒钟到,就停止 T0 的计数,然后从 T0 的计数单元中读取计数的数值,即完成了信号频率的测量。 最后通过五位数码管显示出频率值。 由于要尽可能的使用最少的元件,在满足设计要求的前提下,我尽可能的减少了元器件的使用。 将被测信号不加任何处理,直接输入单片机的 口。 而将被测 信号经行放大整形、倍频锁相等处理就不再进行了。 这样做会使该频率计在测量信号频率时产生精度误差,但能够满足设计要求。 系统硬件模块关系 系统总体 系统总体分为:中央控制芯片,时钟电路,复位电路,显示电路等部分。 系统总体方框如图 4 所示。 西京学院本科毕业设计(论文) 7 图 系统整体方框图 AT89C51 是一个低功耗,高性能 CMOS8 位单片机,片内含 4k Bytes ISP 的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机 AT89C51 可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89C51 具有如下特点: 40 个引脚, 4k Bytes Flash 片内程序存储器, 128 bytes的随机存取数据存储器( RAM), 32 个外部双向输入 /输出( I/O)口, 5 个中断优先级 2 层中断嵌套中断, 2 个 16 位可编程定时计数器, 2 个全双向串行通信口,看门狗( WDT)电路,片内时钟振荡器。 此外 , AT89C51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。 空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、 TQFP和 PLCC 等三种封装形式,以适应不同产品的需求。 单片机管脚说明 AT89C51 单片机管脚如图 所示。 时 钟 电 路 复位电路 AT89C51 单片机 电源电路 数 码 管 显 示 输 入 信 号 西京学院本科毕业设计(论文) 8 图 AT89C51 引脚分布图 P0: P0 口为一个 8 位漏级开路双向 I/O 口 ,每脚可吸收 8TTL 门电流。 当 P1口的管脚第一次写 1 时,被定义为高阻输入。 P0 能够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。 在 FIASH 编程时, P0 口作为原码输入口,当FIASH 进行校验时, P0 输出原码,此时 P0 外部必须被拉高。 P1: P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P1 口缓冲器能接收输出 4TTL 门电流。 P1 口管脚写入 1 后,被内部上拉为高,可用作输入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 在 FLASH 编程和校验时, P1 口作为第八位地址接收。 P2: P2 口为一个内部上拉电阻的 8 位双向 I/O 口, P2 口缓冲器可接收,输出4 个 TTL 门电流,当 P2 口被写“ 1”时,其管脚被内部上拉电阻拉高,且作为输入。 并因此作为输入时, P2 口的管脚被外部拉低,将输出电流。 这是由于内部上拉的缘故。 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, P2 口输出地址的高八位。 在给出地址“ 1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时, P2 口输出其特殊功能寄存器的内容。 P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3: P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门西京学院本科毕业设计(论文) 9 电流。 当 P3 口写入“ 1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平, P3 口将输出电流( ILL)这是由于上拉的缘故。 RXD(串行输入口) (串行输出口) (外部中断 0) (外部中断 1) T0(计时器 0 外部输入) T1(计时器 1 外部输入) /WR(外部数据存储器写选通) (外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些 控制信号。 RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在 FLASH 编程期间,此引脚用于输入编程脉冲。 在低平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。 如想禁止 ALE 的输出可在 SFR 8EH 地址上置 0。 此时, ALE只有在执行 MOV X, MOV C 指令 是 ALE 才起作用。 另外,该引脚被略微拉高。 如果微处理器在外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 /PSEN 有效。 但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。 /EA/VPP:当 /EA 保持低电平时,则在此期间使用外部程序存储器,不管是否有内部程序存储器。 注意加密方式 1 时, /EA 将内部锁定为 RESET。 当 /EA 端保持高电平时,此期间使用内部程序存储器。 在 FLASH 编程期间,此引脚也用于施加12V编程电源( VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 VCC:供电电压。 GND:接地。 西京学院本科毕业设计(论文) 10 单片机 I/O 口分配表 单片机 I/O 口分配表如表 所示。 表 单片机 I/O 口分配表 开始键 信号采集 ~ 数码管位选通端 ~ 数码管段码 频率显示电路 频率显示电路如图 所示。 图 频率显示电路图 当按键按下以后, 端直接与地接通,使 引脚为低电平;当键弹起后, 重新恢复高电平,从而产生一个脉冲信号给单片机,单片机从而接收输入信号并测量。 时钟电路 单片机工作是在统一的时钟脉冲控制下一拍一拍地进行的,这个脉冲是单片机控制器中的时序电路发出的。 单片机的时序就是 CPU 在执行指令时所需控制信号的时间顺序。 为了保证各部件的同步工作,单内部电路应在唯一的时钟信号下严格按时序进行工作。 MCS51 系列单片机内部有一个高增益反相放大器,用于构成振荡器,但要形成时钟脉冲,外部还需附加电路。 MCS51 的时钟产生方法有“内部时钟方式”与“外部时钟方式”两种。 在本设计中采用了内部时钟方式。 其电路图如图 所示。 西京学院本科毕业设计(论文) 11 图 时钟电路 如图 所示,利用芯片内部的振荡器,然后在引脚 XTALl 和 XTAL2 两端跨接晶体振荡器 X1(简称晶振),就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路。 外接晶振 X1 时, C1 和 C2 的值通常选择为 30pF 左右; Cl 与 C2对频率有微调作用,晶振或陶瓷谐振器的频率范围可在 ~ 12MHz 之间选择。 为了减少寄生电容,更好地保证振荡器稳定可靠的工作,振荡器和电路应尽可能安装得与单片机引脚 XTALl 和 XTAL2 靠近。 电源电路 直流稳压电源一般由电源变压器、整流、滤波及稳压电路所组成。 5V直流电源如图 所示。 图 直流电源电路图 复位按钮 复位电路和时钟电路是维持单片机最小系统运行的基本模块。 复位电路通常分西京学院本科毕业设计(论文) 12 为两种:上电复位和手动复位。 有时系统在运行过程中出现程序跑飞的情况,在程序开发过程中,经常需要手动复位。 所以本次设计选用手动复位按钮,其电路图如图 所示。 图 手动复位按钮 数码管显示电路 显示器是微机重要的输出设备。 显示器有显示监控结果、提供用户操作界面等功能。 在本次设计中采用了 LED 显示器,即数码管。 数码管的每一个数码段是一只发光二极管。 当发光二极管导通时,相。单片机数字频率计设计_本科毕业设计论文(编辑修改稿)
相关推荐
~+15V)。 GND:地。 2 V RE F8G ND3V C C20CS1W R 12DI 34DI 25DI 16D1 07RF B9G ND10IO UT 111IO UT 212DI 713DI 614DI 515DI 416X F E R17W R 218IL E (B Y 1 /B Y 2 )19U1DA C08 3 2 图 8 DAC0832 芯片图 ( 3) LM339 芯片
效,用完成单片机的复位初始化操作。 XTAL1 和 XTAL2:外接晶体引线端。 当使用芯片内部时钟时,此二 引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 P0 口: P0 口为一个 8 位漏极开路双向 I/O 口,当作输出口使用时,必须接上拉电阻才能有高电平输出;当作输入口使用时,必须先向电路中的锁存器写入 “ 1” ,使 FET 截止,以避免锁存器为 “ 0”
style used in the UCP to remove wording that could lead to inconsistent application and interpretation. When work on the revision started, a number of global surveys indicated that, because of
是一句程序的修改或诞生,但那种收获的感觉很暖人心。 8 参考文献 《单片机原理与应用》 倪云峰 主编 《 51 单片机 c 语言教程》 郭天祥 主编 《 51 单片机原理与应用》 陈海宴 主编 《单片机 c 语言应用 100 历》 王东锋 主编 附录 项目设计 评 语 项目设计 成 绩 指导教师 (签字) 年 月 日 程序 include define uchar unsigned char
经成熟,正在获得广泛应用。 目前在数字领域和通信领域正在发生一场数字化革命。 DSP 在其中扮演很重要的角色,它为新体制新算法和新原理提 供了最佳的实现条件。 主要研究内容: MATLAB 是主要适用于矩阵运算和信息处理领域的分析设计 ,它使用方便 ,输入简捷 ,运算高效 ,内容丰富 ,并且很容易由用户自行扩展 .MATLAB
灯控制,而加拿大多伦多市于 1964 年完成了计算机控制信号灯的实用化,建立了一套由 IBM650 型计算机控制的交通信号协调控制系统,成为世界上第一个具有电子数字计算机城市交通控制系统的城市。 这是道路交通控制技术发展的里程碑。 可以说,在近百年的发展中,道路交通信号控制系统经历了手动到自动,从固定配时到灵活配时,从无感应控制到有感应控制,从单点控制到干线控制,从区域控制到网络控制的长远过程。