版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机课程设计课程设计 题目 采用单片机的手动计数器设计学院名称 电气工程学院指导老师 黄智伟 朱卫华 班 级 电子信息工程054班学 号 20056470146学生姓名 朱小群二00八年六月摘 要 简要介绍单片机at89s51芯片的功能、内部结构、引脚功能及应用电路。手动计数器就是基于单片机at89s51的应用,通过单片机的定时功能而实现的,其中使用了到了独立式按键,涉及到按键的去抖动的问题;通过正确的识别按键进行计数,计数满时,又从零开始计数,然后通过数码管显示出来。关键字:单片机at89s51、时钟电路、数码管abstractat89s51 briefed microcontroller
2、 chip features, internal structure, function and application-pin circuit. manual counter at89s51 scm is based on the application by the timing of scm functions to achieve, which used the keys to a stand-alone, involving the key to the problem of jitter through the correct identification keys to coun
3、t, full count , and start from scratch count, and then through the digital display.keyword: scm at89s51, clock circuits, digital control 目录1、at89s51 芯片简介2、at89s51 芯片封装及引脚功能3、手动计算器的功能与设计方案3.1 手动计数器的功能与设计要求3.2 计方案的确定4、手动计算器的硬件设计 4.1 手动计算器的硬件系统框架 4.2 手动计数器的主机电路设计4.3硬件电路原理图5、手动计算器的软件系统设计5.1 软件系统设计 5.2 基
4、于asm51汇编的源程序 5.3 基于c51的源程序6、系统的组装与调试6.1 硬件系统组装与调试6.2 软件调试7、总结与心得体会8、 参考文献9、附录1、 at89s51 芯片简介at89s51是美国atmel公司产生的第功耗,高性能cmos8为单片机,片内含4k bytes的可系统编程的flash程序存储器既可在线编程(isp)也可用传统方法进行编程及通用8位微处理器于单片芯片中,atmel公司的功能强大,低价为at89s51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。2、at89s51芯片图如下:(1)at89s51 芯片封装(2)功能特性概述:at89s51提供以下
5、标准功能:4k 字节flash闪速存储器,128字节内部ram,32个io口线,看门狗(wdt),两个数据指针,两个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路。同时,at89s51可降至0hz的静态逻辑操作,并支持两种软件可选的节电工作模式;空闲方式停止cpu的工作,但允许ram,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存ram中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。(3)引脚功能说明:vcc:电源电压。end:接地。p0口:p0口是一组8位漏极开路型双向i/o口,也即地址/数据总线复用口。作为输出口用时,
6、每位能驱动8个ttl逻辑门电路,对端口写“1”可作为高组抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在flash编程时,p0口接收指令字节,而在程序校验时,要求外接上拉电阻。p1口:p1是个带内部上拉电阻的8位双向i/o口,p1的输出缓冲级可驱(吸收或输出电流)4个ttl逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口;作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(iil)flash编程和程序校验期间,p1接收低8位地址。p2口:p2是一个带有内部上拉电阻
7、的8 位双向i/o口,p2的输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路:对端口写“1”,通过内部的上拉电阻把端口拉到感动哦电平,此时可作输入口,作输入使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(iil)。在访问外部程序存储器或16位地址的外部数据存储器(例如movx dptr指令)时,p2口送出高8位地址数据。在访问8位地址的外部存储器(如执行movx ri指令)时,p2口线上的内容(也即特殊功能寄存器(sfr)区中p2寄存器的内容),在整个访问期间不改变。flash编程或校验时,p2亦接收高位地址和其它控制信号。p3口:p3口是一组带有内部上拉电阻的8位
8、双向i/o口,p3口输出缓冲级可驱动(吸收或输出电流在)4个ttl逻辑门电路:对p3口写如“1”时,它们内部上电阻拉高并可作为输入端口,作输入端时,被外部拉低的p3口将用上拉电阻输出电流(iil)。p3口除了作为一般的i/o口线外,更重要的用途是它的第二功能,如下表所示:p3口还接收一些用于flash闪速存储器编程和程序校验的控制信号。rst:复位输入,当振荡器工作时,rst引脚出现两个机器周期以上高电平将使单片机复位。wdt溢出将使该引脚输出高电平,设置sfr auxr的disrto位(地址8eh)可打开或关闭该功能,disrto的缺省位reset输出高电平打开状态。ale/:当访问外部程序
9、存储器或数据存储器时,ale(地址锁存器允许)输出脉冲用于锁存地址的低8位字节,即使不访问外部存储器,ale乃以时钟振荡器频率的1/6输出固定的正脉冲信号,因此它可以对外输出时钟或用于定时目的。更重要的是:每当访问外部数据存储器时将跳过一个ale脉冲。对flash存储器编程期间,该引脚还用于编程脉冲()。如有必要,可通过对特殊寄存器(sfr)区中的8eh单元的d0位置为,可禁止ale操作。该位置位后,只有一条movx和movc指令ale才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ale无效。:程序存储允许()输出是外部程序存储器的读选通信号,当at89s51由外部程序存储
10、器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。当外部数据存储器,没有两次有效的信号。ea/vpp:外部访问允许。欲使cpu仅访问外部程序存储器(地址为0000hffffh),ea端必须保持低电平(接地)。需注意的是,如果加密位lb1被编程,复位时内部会锁存ea端状态。如ea端为高电平(接vcc端),cpu则执行内部程序存储器中的指令。flash存储器编程时,该引脚加上+12v的编程电压vpp。xtal1:振荡器反相放大器及内部时钟发生器的输入端。xtal2:振荡器反相放大器的输出端。wdt:看门狗定时器。wdt是为了解决cpu程序运行时可能进入混乱或死循环而设置,它在一个14bi
11、t计数器和看门狗复位sfr(wdtrst)构成。外部复位时,wdt默认为关闭状态,要打开wdt,用户必须按顺序将oieh和oelh写到wdtrst寄存器(sfr地址为(0a6),当启动wdt,它会随晶体振荡器在每个机器周期计数,除硬件复位或wdt溢出复位没有其它方法关闭wdt,当wdt溢出,将使rst引脚输出高电平的复位脉冲。(4)中断at8951共有5个中断向量:2个外中断(int0和int1),2个定时中(timer0和timer1)和一个串行中断,这些中断如表(p3口的第二功能)。这些中断源各自的禁止和是能位参见特殊功能寄存器的ie。ie也包含总中断控制位ea,ea清0,将关闭所有中断。
12、值得注意的下表中的ie6和ie5没有定义,用户不要访问这些位,它是保留位以后的at89产品作扩展用途。定时器0和定时器1的中断标志tf0和tf1,它是定时器溢出时的s5p2时序周期被置位。该标志保留至下个时序周期。3、手动计算器的功能与设计方案3.1 手动计数器的功能与设计要求在at89s51单片机的p3.7管脚接一个轻触开关,作为手动计数的按钮,用单片机的p2.0p2.7接一个共阴数码管, 作为0099计数的个位数显示,用单片机的p0.0p0.7接一个共阴数码管,作为0099计数的十位数显示。3.2设计方案的确定可以从以下的几个方面来确定手动计数器的设计方案1) 微处理器采用atmel的at
13、89s51微处理器,通过使用单片机的定时或计数的功能实现。2)显示电路该显示电路可采用液晶显示或数码管显示。对于一般的段式液晶屏,需要专门驱动电路,而且液晶显示作为一种被动显示,可视相对较差;对于具有驱动电路和微处理器接口的液晶显示模块,一般多采用并行接口,对于微处理器的接口要求较高,占用资源多。另外,89s51本身无专门的液晶驱动接口,因此,本电路采用数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。3)按健电路本电路只设一个按健:按下sp1健进行计数,计数满时,又从零开始计数。4、手动计算器的硬件设计 4.1 手动计算器的硬件系统框架复位电路
14、主控制器 数码管显示电路按健电路时钟振荡4.2 手动计数器的主机电路设计1) 系统时钟电路设计系统时钟电路设计如图所示。对于时间要求不是很高的系统,只要按图进行设计就能使系统可靠起振并稳定运行。但由于图中的c1、c2电容起着系统时钟频率微调和稳定的作用,因此,在本闹钟系统的实际应用中一定要注意正确选择参数(30+/-10pf),并保证电路的对称性,选用正牌厂家生产的瓷片或云母电容,如果可能的话,温度系数要尽可能低。2) 系统复位电路设计 复位电路一般应有手动或上复位电路。复位电路的实现通常有两种方式:即专用up监控电路和rc复位电路。前者电路实现简单,成本低,但复位可靠性相对较低;后者成本较高
15、,但复位可靠性高,尤其是高可靠重复复位。对于复位要求高、并对电源电压进行监视的场合,大多采用这种方式。本系统采用的是rc复位方式。rc复位电路的实质是一阶充放电路,现结合如下图所示说明这种电路复位电路的特点。 系统上电时该电路提供有效的复位信号rst(高电平)直至系统电源定后撤消复位信号(低点平)。从理论上说,51系列单片机复位引脚只要保证t=rc2m(机器周期)便可。但在实际设计中,通常c1取值为10uf以上,r1通常取值10k左右。实践发现,r1如果取值太小,例如1k,则会导致rst信号驱动能力变差而无法使系统可靠复位。3) 按键电路设计按键电路设计参见系统原理图中的sp1对应的部分,按键
16、电路设计中关键考虑的就是按键去抖动问题,一般硬件去抖和软件去抖动两种方式。过去硬件去抖电路通常采用分立元件或触发器实现,目前市场上已有硬件去抖专用接口芯片,例如:maxim公司max68166818,均为单电源供电,电压为2.75.5v,分别为单输入、双输入和八输入,输出端具有欠压锁定功能。这里考虑到系统的硬件简化和成本,没有采用硬件去抖,而采用软件去抖。4)手动计数器的显示电路设计 显示电路采用共阴极数码管,电路图如下:4.3硬件电路原理图1)利用at89s51单 片机来制作一个手动计数器,硬件电路图如图所示。2) 系统板上硬件连线 (1 把“单片机系统”区域中的p0.0/ad0p0.7/a
17、d7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个ah端口上;要求:p0.0/ad0对应着a,p0.1/ad1对应着b,p0.7/ad7对应着h。(2 把“单片机系统”区域中的p2.0/a8p2.7/a15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的ah端口上; (3 把“单片机系统”区域中的p3.7/rd端口用导线连接到“独立式键盘”区域中的sp1端口上; 5、手动计数器的软件系统设计5.1 软件系统设计程序框图:5.1基于asm51汇编的源程序count equ 30h sp1 bit p3.7 org 0 start: mov count,#00h ne
18、xt: mov a,count mov b,#0ah div ab mov dptr,#table movc a,a+dptr mov p0,a mov a,b movc a,a+dptr mov p2,a wt: jnb sp1,wt wait: jb sp1,wait lcall dely15ms jb sp1,wait inc count mov a,count cjne a,#64h,next ljmp start dely15ms: mov r6,#14h d1: mov r7,#f8h djnz r7,$ djnz r6,d1 ret table: db 3fh,06h,5bh,4
19、fh,66h,6dh,7dh,07h,7fh,6fh end 5.2 基于c51的源程序#include unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f; unsigned char count; void delay10ms(void) unsigned char i,j; for(i=20;i0;i-) for(j=248;j0;j-); void main(void) count=0; p0=tablecount/10; p2=tablecount; while(1) if(p3_7=
20、0) delay10ms(); if(p3_7=0) count+; if(count=100) count=0; p0=tablecount/10; p2=tablecount; while(p3_7=0); 6、系统的组装与调试系统组装与调试分为硬件的组装调试和软件的调试。硬件的组装与调试侧重于原理设计正确性验证和印刷电路板的工艺性错误的检测(如:过孔不通、线间粘连等);软件的调试则侧重于子模块的功能验证和模块与模块的接口配合。6.1 硬件系统组装与调试硬件组装前首先要仔细核对硬件系统设计原理的正确性,包括参数选用的正确性和原理的正确性,这取决于设计者的学识和经验积累。对没有把握的电路可以
21、通过在通用实验板上直接焊接实际电路来进行实物调试和验证。在系统通过理论分析后,便可进行印刷电路设计和加工。一般而言,印刷电路板加工企业的质量是有保证的,但也不排除个别企业加工的印刷电路板出现工艺缺陷的情况。因此在调试前,必须首先进行工艺排错,这对于第一块样板的调试更是必不可少的环节。调试分为断电调试和通电调试。1.断电调试为安全起见,首先必须进行断电调试。断电调试的内容至少包含短路检测和原理正确性确认。1) 短路检测2) 原理正确性确认2. 通电调试1)系统时钟是否起振2)逻辑笔法3)示波器法6.2 软件调试结构化软件的调试一般可以将重点放在分模块调试上,统调是最后一环。软件调试可以采取离线调试和在线调试两种方式。前者不需要硬件仿真器,借助于软件仿真器即可;后者一般需要仿真系统的支持。当然,对于经验丰富的开发者,可以不要仿真器,直接将程序代码烧录到芯片,直接通电实验,观察关键现象。7、总结与心得体会通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新,是要我们学会将理论很好地联系实际,并不断地去开动
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年生产销售部培训计划方案
- 2026年民航安全质量管理体系标准
- 2026年国庆节加油站活动策划方案
- 2026年小学生教学研究与实践
- 2026年户外亲子活动策划流程及方案
- 2026年过年超市活动策划书
- 输电线路杆项目工程项目投资估算范文
- 2026关于医院面试题及答案
- 兽医微生物学复习题+答案
- 首都医科大学内科题库-内分泌
- 2026年湖北武汉警务辅助人员招聘考试试卷-含答案解析
- 2026工会社会化工作者综合能力测试题库及答案
- DB32∕ 3962-2020 绿色建筑设计标准
- (完整版)输变电国网缺陷库
- 设计思维与表现课件
- DG型高压锅炉给水泵安装使用说明书
- 肾部分切除术患者的护理查房
- SVW大众FormelQ之QPNTP审核说明
- 万科集团公司工程管理手册
- GB/T 17285-2022电气设备电源特性的标记安全要求
- GB/T 7512-2006液化石油气瓶阀
评论
0/150
提交评论