百位(开关)计数器课程设计报告_第1页
百位(开关)计数器课程设计报告_第2页
百位(开关)计数器课程设计报告_第3页
百位(开关)计数器课程设计报告_第4页
百位(开关)计数器课程设计报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课 程 设 计 任 务 书学 院信息科学与工程专 业测控技术与仪器学生姓名李晗学 号1003020107设计题目百位(开关)计数器内容及要求:keil c程序设计是测控技术与仪器专业的专业基础课。本设计是对该课程综合应用能力的检验,在鼓励学生熟悉基本原理的前提下,注重与实际应用相联系,提出自己的方案,完善设计。1、熟悉单片机及被控对象的工作原理; 2、提出可行设计方案;3、根据方案设计硬件电路、绘制电路原理图;4、软件编程并调试;5、系统调试;5、完成课程设计报告。进度安排:第18周(2012年12月29日-2013年1月7日):布置设计任务,查资料,完成总体方案设计,系统硬件电路设计,系统软

2、件编写并调试,验收答辩。指导教师(签字)2012年11月24日学院院长(签字)2012年11月24日摘 要 随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本课程设计报告主要介绍了一个基于89c51单片机的开关计数的设计,详细描述了利用开关计数系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统实现计数和显示,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点。关键词:单片机89c51;开关;开关计数器。目录1.设计背景41.1课题背景41.2设

3、计内容52系统总体设计53.硬件系统介绍53.1 80c51单片机的介绍53.1.1 80c51单片机主要特性73.1.2 80c51单片机管脚图73.1.3 80c51单片机的中断系统104硬件电路设计114.1开关计数电路硬件设计114.1.1晶振电路114.1.2显示器124.1.3操作电路124.1.4总电路图135.主要元器件136软件编程137调试178设计总结179.参考文献18引言计数是一种最简单的基本的运算,计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量,计数和控制的功能,同时兼有分频功能,计数器是由基本的计数单元和一些控制门所组成

4、,计数单元则由一系列具有存储信息功能的各类触发器构成。计数器在数字系统中应用广泛,如在电子计算机的控制中对指令的地址进行计数,以便顺序取出下一条指令,在运算中做乘法,除法运算时记下加法,减法的次数。计数器可以用来显示产品的工作状态,计数器不仅能用于对时钟脉冲计数,还可以用于分频,定时,产生节拍脉冲和脉冲序列以及进行数字运算等,但是并无法显示计算结果,一般是通过外接led或lcd才能显示,随着科学技术的不断提高,计数器的计数范围也越来越大。计数器的产生意义重大,在人类文明的进步过程中是不可缺少的。1.设计背景1.1课题背景 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广

5、,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。 计数器的应用范围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电

6、、机床、仪表、自动化控制等行业。1.2设计内容 1.利用开关的闭合和断开进行计数(计数范围:0-99),将计数值准确显示出来 2.用光电管用来检测是否有物体经过,数码管显示光电管检测到物体的数量,数值可设置,本设计设定为09999,上电显示初始值0000,计数上限为9999。用显示屏准确记录数值的变化。2系统总体设计 主电源数值显示89c51主控制器根据设计内容,开关计数器系统可以分为手动对信号输入端的输入,数码管显示和清零模块。具体模块有主电源模块,手动操作模块,计数值显示,晶振模块。系统总体设计框图如图所示晶振电路手动操作开关计数系统框图3.硬件系统介绍3.1 80c51单片机的介绍80c

7、51单片机最初是由intel 公司开发设计的,但后来intel 公司把51 核的设计方案卖给了几家大的电子设计生产商,譬如 sst、philip、atmel 等大公司。如是市面上出现了各式各样的但均以51 为内核的单片机,倒是intel 公司自己的单片机却显得逊色了。这些各大电子生产商推出的单片机都兼容51 指令、并在51 的基础上扩展一些功能而内部结构是与51 一致的。80c51有40个引脚,4个8位并行i/o口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。80c51的存储器系统由4k的程序存储器(掩膜rom),和128b的数据存储器(ram)组成。【3】

8、80c51单片机的基本组成框图见图3-1。【3】图3-1 80c51单片机结构由图3-1可见,8051单片机主要由以下几部分组成:cpu系统 8位cpu,含布尔处理器; 时钟电路; 总线控制逻辑。存储器系统 4k字节的程序存储器(rom/eprom/flash,可外扩至64kb); 128字节的数据存储器(ram,可再外扩64kb); 特殊功能寄存器sfr。i/o口和其他功能单元 4个并行i/o口; 2个16位定时计数器; 1个全双工异步串行口; 中断系统(5个中断源,2个优先级)。3.1.1 80c51单片机主要特性1. 一个8 位的微处理器(cpu)。2. 片内数据存储器ram(128b)

9、,用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据等,sst89 系列单片机最多提供1k 的ram。3. 片内程序存储器rom(4kb),用以存放程序、一些原始数据和表格。但也有一些单片机内部不带rom/eprom,如8031,8032,80c31 等。目前单片机的发展趋势是将ram 和rom 都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。sst 公司推出的89 系列单片机分别集成了16k、32k、64k flash 存储器,可供用户根据需要选用。4. 四个8 位并行io 接口p0p3,每个口既可以用作输入,也可以用作输出。5. 两个定时器计数器,每个定

10、时器计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。为方便设计串行通信,目前的52 系列单片机都会提供3 个16 位定时器/计数器。6. 五个中断源的中断控制系统。现在新推出的单片机都不只5 个中断源,例如sst89e58rd 就有9 个中断源。7. 一个全双工uart(通用异步接收发送器)的串行io 口,用于实现单片机之间或单机与微机之间的串行通信。8. 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率为12mhz。sst89v58rd 最高允许振荡频率达40mhz,因而大大的提高了指令的执行速度。3

11、.1.2 80c51单片机管脚图图3-2 80c51单片机管脚图部分引脚说明:时钟电路引脚xtal1 和xtal2:xtal2(18 脚):接外部晶体和微调电容的一端;在8051 片内它是振荡电路反相放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。要检查8051/8031 的振荡电路是否正常工作,可用示波器查看xtal2 端是否有脉冲信号输出。xtal1(19 脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,该引脚必须接地。控制信号引脚rst,ale,psen 和ea:rst/vpd(9 脚):rst

12、是复位信号输入端,高电平有效。当此输入端保持备用电源的输入端。当主电源vcc 发生故障,降低到低电平规定值时,将5v 电源自动两个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。rst 引脚的第二功能是vpd,即接入rst 端,为ram 提供备用电源,以保证存储在ram 中的信息不丢失,从而合复位后能继续正常运行。ale/prog(30 脚):地址锁存允许信号端。当8051 上电正常工作后,ale 引脚不断向外输出正脉冲信号,此频率为振荡器频率fosc 的1/6。cpu 访问片外存储器时,ale 输出信号作为锁存低8 位地址的控制信号。平时不访问片外存储器时,ale 端也以振荡频

13、率的1/6 固定输出正脉冲,因而ale 信号可以用作对外输出时钟或定时信号。如果想确定8051/8031 芯片的好坏,可用示波器查看ale端是否有脉冲信号输出。如有脉冲信号输出,则8051/8031 基本上是好的。ale 端的负载驱动能力为8 个ls 型ttl(低功耗甚高速ttl)负载。此引脚的第二功能prog 在对片内带有4kb eprom 的8751 编程写入(固化程序)时,作为编程脉冲输入端。psen(29 脚):程序存储允许输出信号端。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引肢接eprom 的oe 端(见后面几章任何一个小系统硬件图)。psen 端有效

14、,即允许读出epromrom 中的指令码。psen 端同样可驱动8 个ls 型ttl 负载。要检查一个8051/8031 小系统上电后cpu 能否正常到epromrom 中读取指令码,也可用示波器看psen 端有无脉冲输出。如有则说明基本上工作正常。ea/vpp(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当ea 引脚接高电平时,cpu只访问片内eprom/rom并执行内部程序存储器中的指令,但当pc(程序计数器)的值超过0fffh(对8751/8051 为4k)时,将自动转去执行片外程序存储器内的程序。当输入信号ea 引脚接低电平(接地)时,cpu 只访问外部eprom/r

15、om 并执行外部程序存储器中的指令,而不管是否有片内程序存储器。对于无片内rom 的8031 或8032,需外扩eprom,此时必须将ea 引脚接地。此引脚的第二功能是vpp 是对8751 片内eprom固化编程时,作为施加较高编程电压(一般12v21v)的输入端。输入/输出端口p0/p1/p2/p3:p0口(p0.0p0.7,3932 脚):p0口是一个漏极开路的8 位准双向i/o口。作为漏极开路的输出端口,每位能驱动8 个ls 型ttl 负载。当p0 口作为输入口使用时,应先向口锁存器(地址80h)写入全1,此时p0 口的全部引脚浮空,可作为高阻抗输入。作输入口使用时要先写1,这就是准双向

16、口的含义。在cpu 访问片外存储器时,p0口分时提供低8 位地址和8 位数据的复用总线。在此期间,p0口内部上拉电阻有效。p1口(p1.0p1.7,18 脚):p1口是一个带内部上拉电阻的8 位准双向i/o口。p1口每位能驱动4 个ls 型ttl 负载。在p1口作为输入口使用时,应先向p1口锁存地址(90h)写入全1,此时p1口引脚由内部上拉电阻拉成高电平。p2口(p2.0p2.7,2128 脚):p2口是一个带内部上拉电阻的8 位准双向i/o口。p口每位能驱动4个ls 型ttl 负载。在访问片外eprom/ram 时,它输出高8 位地址。p3口(p3.0p3.7,1017 脚):p3口是一个

17、带内部上拉电阻的8 位准双向i/o口。p3口每位能驱动4个ls型ttl负载。p3口与其它i/o 端口有很大的区别,它的每个引脚都有第二功能,如下:p3.0:(rxd)串行数据接收。p3.1:(rxd)串行数据发送。p3.2:(int0#)外部中断0输入。p3.3:(int1#)外部中断1输入。p3.4:(t0)定时/计数器0的外部计数输入。p3.5:(t1)定时/计数器1的外部计数输入。p3.6:(wr#)外部数据存储器写选通。p3.7:(rd#)外部数据存储器读选通。3.1.3 80c51单片机的中断系统80c51系列单片机的中断系统有5个中断源,2个优先级,可以实现二级中断服务嵌套。由片内

18、特殊功能寄存器中的中断允许寄存器ie控制cpu是否响应中断请求;由中断优先级寄存器ip安排各中断源的优先级;同一优先级内各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。3.1.4 80c51单片机的定时/计数器在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。80c51单片机内集成有两个可编程的定时/计数器:t0和t1,它们既可以工作于定时模式,也可以工作于外部事件计数模式,此外,t1还4硬件电路设计4.1开关计数电路硬件设计4.1.1晶振电路晶振电路由2个电容,1个晶振组成,如下图所示。 晶振电路单片机晶振的作用是为系统提供基本

19、的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。单片机晶振有2个电容的作用:这2个电容叫晶振的负载电容,分别接在晶振的2个脚上和对地的电容,一般在几十皮法。它会影响到晶振的振谐频率和输出幅度。晶振的负载电容=(cd*cg)/(cd+cg)+cic+c。4.1.2显示器显示电路图4.1.3操作电路 操作电路图4.1.4总电路图开关计数总电路图5.主要元器件表1元件清单元件序号型号主要参数数量备注芯片u1at89c5112mhz1晶振crystal12mhz1电阻阻排r1digital10krespack-81/1

20、电容cap1030pf3开关button无3清零,计数电源,地power,gnd1/1显示器lcd1.5v,10ma26软件编程#include #define uchar unsigned char #define uint unsigned intsbitseg_1=p20; sbitseg_2=p21;sbitseg_3=p22;sbitseg_4=p23;sbit t0=p34;ucharcount_tab=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7b,0x39,0x5e,0x79,0x73;int coun

21、t=0;void delay(int n)uchar j=0;uint k=0;for(j=0;j0;k-);void display(uint temp)/4位数码管循环显示 int ge,shi,bai,qian;qian=temp/1000;bai=temp%1000/100;shi=temp%100/10;ge=temp%10;seg_1=0;seg_2=0;seg_3=0;seg_4=0;seg_1=1;p0=count_tabqian;delay(10);seg_1=0;seg_2=1;p0=count_tabbai;delay(10);seg_2=0;seg_3=1;p0=count_tabshi;delay(10);seg_3=0;seg_4=1;p0=count_tabge;delay(10);seg_4=0;void main() p0 = 0x00;p2 = 0x00;p3=0xff;t0=1; tmod = 0x06;th0 = tl0 = 256 - 1 ;et0 = 1;ex0 = 1;ex1 = 1;ea = 1;ip = 0x02;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论