电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

六位数显频率计数器

13页
  • 卖家[上传人]:pu****.1
  • 文档编号:430988815
  • 上传时间:2023-03-29
  • 文档格式:DOC
  • 文档大小:288.50KB
  • / 13 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、目录一、前言 1.1 课程设计任务1.2设计目的二、方案的提出与论证 2.1频率测量的原理和方法三、系统硬件设计3.1.1电源供电电路-3.1.2单片机时钟电路-3.1.3单片机复位电路3.1.4显示电路3.2 AT89C51单片机芯片的功能及其参数- 四、系统软件设计4.1软件流程图及编写程序4.2软件减小测量误差的办法五、实验总结附录一:参考文献一、前言1.1 课程设计任务 本课程设计主要任务是设计一个频率计数器,其主要功能如下:利用AT89C51单片机的T0、T1的定时计数器功能,来完成对输入的信号进行频率计数,计数的频率结果通过6位动态数码管显示出来。要求能够对025KHZ的信号频率进行准确计数,计数误差不超过2HZ。1.2设计目的: A、熟悉和掌握51单片机的原理、结构和应用; B、用 PROTEL/ALTIUM DESIGNER进行电路的设计,进一步了解相关软件的功能以及设计的一些规则; C、熟悉用C语言进行程序设计的一般方法、步骤和应用; D、积极发扬团队精神和集体荣誉感,互相协作、互相帮助; E、熟悉电路的调试的接线方法和调试方法及其原理 F、锻炼自己的实践和动手能力,

      2、为以后能更快的投入工作而做准备;二、方案提出与论证2.1频率测量原理与方法方案一:直接测频法。把被测频率信号经过脉冲形成电路后加到闸门的一个输入端,只有在闸门开通时间 1秒内,被计数的脉冲被送到计数器进行计数。设计数器的值为N,由频率定义式计算得到被测信号频率为fN/T=N。 方案二:测量周期法。将被测量信号经过过零检测后转换成方波信号,利用单片机查询两个下降沿,在此期间根据晶体振荡器产生的时钟经过12分频的脉冲送计数器进行计数,设计数值为N,送入计数器的时钟周期为T,则得被测量信号的周期值为NT,然后取其倒数即为被测量信号的频率(1/NT) 。 理论上分析:采用直接测频法在测量低频段信号时的相对测量误差较大,但在高频段测量信号的频率有较高的精度。如果采用测频法测量低频段频率信号,要想提高精确度,势必会大幅度增加闸门开通时间T,时效性较差。相反,采用测量信号周期然后取其倒数的方法在低频段测量时精度很高。但是本题目要求误差为2HZ,经过试验分析,加上必要的软件编程的措施,可以直接用高频的测法,在高频段,误差与示波器的显示频率基本一致,低频时,误差小于0.5HZ,满足题目的要求!我们都知道

      3、,52单片机中断的进入都是需要一定的时间的,如果我们没有把这个考虑进去,直接进行软件的设计,误差达到了20HZ。不满足题目的要求!因而在编程的时候,把中断事件也考虑进去!这样可以使得误差减小!三、系统硬件设计3.1电路原理图总图3.1.1电源供电电路 供电部份接口设计用的是DIP2的插针,电路采用发光二极管检测电源是否已接通。3.1.2 单片机时钟电路如下图所示:如图所示是采用内部振荡方式使8052单片机产生时钟信号,在单片机芯片的X1和X2引脚两端跨接石英晶体振荡器和两个电容构成稳定的自激振荡电路,其中电容对振荡频率起微调作用。晶振频率为12MHZ。3.1.3单片机复位电路复位是单片机的初始化操作。其功能是使CPU从0000H单元开始执行程序。除了使系统正常初始化外,当程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。如图为按键手动复位方式,通过复位端经电阻和电源+5V接通实现复位功能,兼备上电复位功能。3.1.4显示及驱动电路该系统采用两个四位 LED共阳极显示器动态显示6位数。共阳极数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极

      4、为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。要使数码管正常发光一般都要加驱动电路,不加驱动电路是很暗的,共阳数码管驱动加于位选端。该数码管用S8850 PNP型三极管作为驱动电路,在基极加以分压限流电阻,以防止数码管因电流过大而烧坏。3 .2 AT89C51单片机芯片的功能及其参数 AT89S51是一个有40个引脚的芯片,引脚配置如图3所示。与8031相比,AT89C51自带4K的ROM和128B的RAM,因此编写中小型系统就无需任何硬件进行扩展。图3 AT89S51引脚配置AT89S51芯片的40个引脚功能为:VCC:电源电压。GND:接地。RST:复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至“1”。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡放大器的输出。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于

      5、定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。P0口:8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:8位双向I/O口。引脚P

      6、1.2P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的缘故。P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA电流,并能直接驱动LED显示器;P1口引脚写入“1” 后,可用作输入。在闪速编程与编程校验期间,P1口也可接收编码数据。P2口:带内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:引脚P3.0P3.7为带内部上拉的双向I/0引脚。P3口的输出缓冲器能接收20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口,

      7、其功能见表1。P3口同时也可为闪速存储器编程和编程校验接收控制信号。表3-1 P3口特殊功能 P3口引脚特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)四、系统软件设计4.1软件流程图1 设计思路及原理单片机当工作方式寄存器TMOD的C/T位=1时为计数方式,多路开关与定时器0的外部引脚连通,外部计数脉冲由引脚输入。当外部信号由1至0跳变时,计数器加1,此时T0成为外部事件的计数器。由于确认一次由1至0的跳变要用24个振荡器周期,所以所设计计数器的最高计数频率为单片机时钟频率的1/24。1) 定时/计数器T0和T1的工作方式设置,T0是工作在计数状态下,对输入的频率信号进行计数,但对工作在计数状态下的T0,最大计数值为fOSC/24,由于fOSC12MHz,因此:T0的最大计数频率为250KHz。所以对于设计要求即测量范围为025KHZ是完全满足的。对于频率的概念就是在一秒只数脉冲的个数,

      8、即为频率值。所以T1工作在定时状态下,每定时1秒中到,就停止T0的计数,而从T0的计数单元中读取计数的数值,然后进行数据处理。送到数码管显示出来2) T1工作在定时状态下,最大定时时间为65ms,达不到1秒的定时,所以采用定时50ms,共定时20次,即可完成1秒的定时功能。因此每次放入定时器1的初值为TH1=65536/256,TL1=65536%256.3) 工作方式的确定。首先,两个定时器都采用软件启动定时器,都工作在16位计数器状态,即方式1,所以TMOD的高四位和低四位的GATE=0,M1M0=01;定时器1用于定时,所以D6位=0,定时器0用于技术,所以D3位=1。所以TMOD=0x15.控制方式寄存器TCON的相应位在程序中确定。开始T0清零,T1赋初值,TR0=1,TR1=1,允许定时器中断ET0=1,ET1=1,EA=1。T0溢出中断或T1溢出中断Timecount=20?了吗?TR0=0,TR1=0;读一秒钟的计数次数(也就是频率)x=T0count*65536+TH0*256+TL0,处理数据temp0,temp1,temp2,temp3,temp4,temp5NY送数据到六位数码管显示结束软件流程图:设置变量T0count,temp等及字形码表及位选码表T0count+,th0,tl0=0T0溢出T1重新赋值NOT1溢出编写并调试好的程序如下:#include #include #define SEG P0#define SEG_w P2unsigned char code dispbit=0x01,0x02,0x04,0x08,0x10,0x20; /数组对应6个数码管unsigned char code dispcode= 0xC0,/ 00xF9,/ 10xA4,/ 20xB0,/ 30x99,/ 40x92,/ 50x82,/ 60xF8,/ 70x80,/ 80x90,/ 9

      《六位数显频率计数器》由会员pu****.1分享,可在线阅读,更多相关《六位数显频率计数器》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.