基于AT89C51单片机的简易频率计设计嵌入式论文.docx
《基于AT89C51单片机的简易频率计设计嵌入式论文.docx》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的简易频率计设计嵌入式论文.docx(32页珍藏版)》请在冰豆网上搜索。
![基于AT89C51单片机的简易频率计设计嵌入式论文.docx](https://file1.bdocx.com/fileroot1/2022-12/7/b3e89668-b936-4aeb-87bd-248acf694f17/b3e89668-b936-4aeb-87bd-248acf694f171.gif)
基于AT89C51单片机的简易频率计设计嵌入式论文
嵌入式论文
基于AT89C51单片机的简易频率计设计
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
□优□良□中□及格□不及格
3、学生综合运用所学知识和专业技能分析和解决问题的能力
□优□良□中□及格□不及格
4、研究方法的科学性;技术线路的可行性;设计方案的合理性
□优□良□中□及格□不及格
5、完成毕业论文(设计)期间的出勤情况
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
二、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
评阅教师:
(签名)单位:
(盖章)
年月日
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
□优□良□中□及格□不及格
2、对答辩问题的反应、理解、表达情况
□优□良□中□及格□不及格
3、学生答辩过程中的精神状态
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
评定成绩:
□优□良□中□及格□不及格
教研室主任(或答辩小组组长):
(签名)
年月日
教学系意见:
系主任:
(签名)
年月日
摘要
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此越来越广泛地应用各个领域。
本文的频率计系统是以单片机(AT89C51)为核心,利用AT89C51单片机的T0和T1的定时计数功能来完成对输入的信号进行频率计数,由时基集成电路NE555P、四位共阴极数码管等元器件以及C语言程序组成。
具体介绍应用Proteus的ISIS软件进行单片机系统的频率设计与仿真的实现方法,以及Keil软件的编译与应用。
该方法既能准确验证所设计的系统是否满足技术要求,又能提高系统设计的效率和质量,降低开发成本,具有推广价值。
关键词:
AT89C51、NE555、频率计
1.单片机简介
1.1单片机概述
单片机因将其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU(Centralprocessingunit)。
随机存储器RAM(Randomaccessmemory)。
只读存储器ROM(Readonlymemory)。
中断系统、定时器/计数器以及I\O(Input/output)接口电路等主要微型机部件集成在一个芯片上。
虽然单片机只是一个芯片,但从组成和功能上看,它已具有了计算机系统的属性。
为此,称它为单片微型计算机SCMC(Singlechipmicrocomputer),简称单片机。
单片机主要应用与控制领域,用以实现各种测试和控制功能,为了强调起控制属性,也可以把单片机称为微控制器MCU(Microcontrollerunit)。
在国际上,“微控制器”的叫法似乎更通用一些,而在我国则比较习惯与“单片机”这一名称。
单片机在应用时,通常是处于控制系统的核心地位并融入其中,即以嵌入的方式进行使用,为了强调其"嵌入"的特点,也常常将单片机称为嵌入式微控制器EMCU(Embeddedmicrocontrollerunit)。
在单片机的电路和结构中,有许多嵌入式应用的特点。
1.2单片机与单片机系统
单片机通常是指芯片本身,它是有芯片制造商生产的,在它上面集成的是一些做为基本组成部分的运算器电路,控制器电路,存储器,中断系统,定时器/计数器以及输入/输出口电路等。
但一个单片机芯片并不能把计算机的全部电路都集成到其中,例如组成谐振电路和复位电路的石英晶体,电阻,电容等,这些元件在单片机系统中只能以散件的形式出现。
此外,在实际的控制应用中,常常需要扩展外围电路和外围芯片。
从中可以看到单片机和单片机系统的差别,即:
单片机只是一块芯片,而单片机系统则是在单片机芯片的基础上扩展其它电路或芯片构成的具有一定应用功能的计算机系统。
通常所说的单片机系统都是为实现某一控制应用需要由用户设计的,是一个围绕单片机芯片而组建的计算机应用系统。
在单片机系统中,单片机处于核心地位,是构成单片机系统的硬件和软件基础。
2.频率计数器概述
2.1简介
频率计数器是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
本数字频率计将采用定时、计数的方法测量频率,采用一个四位共阴极数码管显示器动态显示4位数。
测量范围从1Hz—9999Hz的方波、用单片机实现自动测量功能。
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
2.2频率测量仪的设计思路与频率的计算
频率测量仪的设计思路主要是:
对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测量出该信号频率的大小,其原理如右图1所示。
图2.1频率测量原理图
若被测量信号的周期为,分频数m1,分频后信号的周期为T,则:
T=m1Tx。
由图可知:
T=NTo(注:
To为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。
)
由于单片机系统的标准频率比较稳定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于1,所以由式T=NTo可知,频率测量的误差主要取决于N值的大小,N值越大,误差越小,测量的精度越高。
2.3基本设计原理
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。
若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。
其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。
时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。
闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。
秒信号结束时闸门关闭,计数器停止计数。
由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。
3.系统设计
3.1频率计数器系统硬件组成
频率计数器系统硬件主要由AT89C51单片机、定时电路NE555、LED数码管等元器件组成。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
NE555是美国Signetics公司1972年研制的用于取代机械式定时器的中规模集成电路,因输入端设计有三个5kΩ的电阻而得名。
数码管是一种半导体发光器件,其基本单元是发光二极管。
图3.1系统框图
3.2AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图3.2AT89C51单片机
3.2.1主要特性
与MCS-51兼容4K字节可编程闪烁存储器寿命:
1000写/擦循环数据保留时间:
10年全静态工作:
0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路
3.2.2管脚说明
VCC:
供电电压。
GND:
接地。
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门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
P3.0RXD
串行输入口
P3.1TXD
串行输出口
P3.2/INT0
外部中断0
P3.3/INT1
外部中断1
P3.4T0
记时器0外部输入
P3.6/WR
外部数据存储器写选通
P3.7/RD
外部数据存储器读选通
表3.1P3口功能列表
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
3.3定时电路NE555
3.3.1NE555介绍
NE555是属于555系列的计时IC的其中的一种型号,555系列IC的接脚功能及运用都是相容的,只是型号不同的因其价格不同其稳定度、省电、可产生的振荡频率也不大相同;而555是一个用途很广且相当普遍的计时IC,只需少数的电阻和电容,便可产生数位电路所需的各种不同频率之脉波讯号。
3.3.2NE555特点
(1)只需简单的电阻器、电容器,即可完成特定的振荡延时作用。
其延时范围极广,可由几微秒至几小时之久。
(2)它的操作电源范围极大,可与TTL,CMOS等逻辑闸配合,也就是它的输出准位及输入触发准位,均能与这些逻辑系列的高、低态组合。
(3)其输出端的供给电流大,可直接推动多种自动控制的负载。
(4)它的计时精确度高、温度稳定度佳,且价格便宜。
3.3.3NE555引脚位配置说明
图3.3NE555接脚图
图3.4NE555的内部结构框图
3.4数码管
3.4.1数码管介绍
数码管是一种半导体发光器件,其基本单元是发光二极管。
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管.
如图所示,LED数码管由7个发光二极管组成,此外,还有一个圆点型发光二极管(在图中以dp表示),用于显示小数点。
通过七段发光二极管亮暗的不同组合,可以显示多种数字、字母以及其它符号。
LED数码管中的发光二极管共有两种
图3.5数码管的符号和引脚
3.4.2连接方法
共阴极接法:
把发光二极管的阴极连在一起构成公共阴极。
使用时公共阴极接地,这样阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。
实验中使用的LED显示器为共阴极接法
共阳极接法:
把发光二极管的阳极连在一起构成公共阳极。
使用时公共阳极接+5V。
这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。
为了显示数字或符号,要为LED显示器提供代码,因为这些代码是为显示字形的,因此称之为字形代码。
七段发光二极管,再加上一个小数点位,共计八段。
因此提供给LED显示器的字形代码正好一个字节。
若a、b、c、d、e、f、g、dp8个显示段依次对应一个字节的低位到高位,即D0、D1、D2、D3、D4、D5、D6、D7,则用共阴极LED数码管显示十六进制数时所需的字形代码如表3.2所示。
字型
共阴极字形代码
字型
共阴极字形代码
字型
共阴极字形代码
0
3FH
6
7DH
C
39H
1
06H
7
07H
d
5EH
2
5BH
8
7FH
E
79H
3
4FH
9
6FH
F
71H
4
66H
A
77H
灭
00H
5
6DH
b
7CH
表3.2共阴极LED数码管字形代码
4.频率计数器系统设计流程
图4.1基于Proteus的单片机系统设计流程
4.1硬件电路设计
4.1.1频率计数器电路图设计
运行Proteus的ISIS后出现程序主窗口界面,鼠标左键单击窗口左侧的元器件工具栏的component.按钮,接着再点击窗口左侧的元器件选择区的PickDivices.按钮,弹出如图1所示的PickDevices窗口,再在Categ栏里点击MicroprocessorICs项后,在Results栏里会出现各种类型的CPU器件,找到AT89C51后双击,AT89C51就被添加到当前窗口左侧的元器件列表区了。
用同样的方法依次把NE555、数码管、晶振以及多个电阻、电容也添加到器件列表区里。
然后再依次点击列表区里的器件,单击左键把他们放到绘图区,右键选中元件,并编辑其属性,合理布局后,进行连线。
连线时当鼠标的指针靠近一个对象的引脚时,跟着鼠标的指针rICs就会出现一个“×”提示符号,点击鼠标左键即可画线了,需要拐弯时点击一下即可,在终点再点击确认一下就画出了一段导线,所有导线画完后,点击工具栏的Inter-sheeTerminal.按钮,添加上电源和接地符号,原理图的绘制就完成了。
4.1.2频率计数器电路图
(1)NE555方波产生信号电路图:
所产生方波公式:
T1=0.693(RA+RB)*C
T2=0.693RB*C
F=1.433/(RA+2RB)*C
图4.2NE555方波信号产生电路原理图
注:
555不属于频率计,放在这里当信号源,方便验收时演示频率计测频率,制作频率计时频率要专用信号发生器,以便校准自制的频率计
(2)频率计数器系统原理图
方波信号产生电路NE555的Q脚接TO计数器,以使T0完成对方波的计数功能。
AT89C51单片机PO.0-P0.7口接数码管的显示段,P2.0-P2.3接四段的数码管选择口。
XTAL1和XTAL2接上12MHZ的晶振。
即振荡周期=1/12us;时钟周期=1/6us;
机器周期=1us。
图4.3设计频率计数器系统原理图
4.2软件设计
4.2.1程序流程图设计
图4.4系统程序流程图
4.2.2程序设计内容
(1)定时/计数器T0和T1的工作方式设置,由图可知,T0是工作在计数状态下,对输入的频率信号进行计数,但对工作在计数状态下的T0,最大计数值为fOSC/24,由于fOSC=12MHz,因此:
T0的最大计数频率为250KHz。
对于频率的概念就是在一秒只数脉冲的个数,即为频率值。
所以T1工作在定时状态下,每定时1秒中到,就停止T0的计数,而从T0的计数单元中读取计数的数值,然后进行数据处理。
送到数码管显示出来。
(2)T1工作在定时状态下,最大定时时间为65ms,达不到1秒的定时,所以采用定时5ms,共定时200次,即可完成1秒的定时功能。
4.2.3源程序设计
(1)设置定时器工作方式,开中断和定时器:
TMOD=0x15;//设置定时器启动模式
TH0=0;
TL0=0;
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
TR1=1;
TR0=1;//启动定时器
ET0=1;
ET1=1;//启动两个中断
EA=1;//开中断
由前面可知工作方式寄存器TMOD的值和TH0、TL0的值,ET0是T0溢出中断允许位,所以ET0=1表示允许T0中断;要引入中断,所以必须开总中断,所以EA=1;TR0是T0定时器运行控制位,置1表示启动T0。
(2)TO计数子程序:
voidt0(void)interrupt1using0
{
T0count++;
}
//中断号1
(3)T1定时子程序:
voidt1(void)interrupt3using0
{
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
timecount++;
if(timecount==200)
{
TR0=0;
timecount=0;
flag=1;
}
P2=0xff;
P0=displaycode[dispbuf[dispcount]];
P2=displaybit[dispcount];