单片机应用技术项目教程项目9测速表

上传人:ra****d 文档编号:252198466 上传时间:2024-11-13 格式:PPT 页数:43 大小:872.50KB
返回 下载 相关 举报
单片机应用技术项目教程项目9测速表_第1页
第1页 / 共43页
单片机应用技术项目教程项目9测速表_第2页
第2页 / 共43页
单片机应用技术项目教程项目9测速表_第3页
第3页 / 共43页
点击查看更多>>
资源描述
,*,出版社 理工分社,单片机应用技术项目教程版,出版社 理工分社,单片机应用技术项目教程版,教学目标,*,出版社 理工分社,单片机应用技术项目教程版,项目分析,*,出版社 理工分社,单片机应用技术项目教程版,项目知识平台,*,出版社 理工分社,单片机应用技术项目教程版,项目实施,*,出版社 理工分社,单片机应用技术项目教程版,工作任务,*,出版社 理工分社,单片机应用技术项目教程版,项目小结,*,出版社 理工分社,单片机应用技术项目教程版,项目考核,*,出版社 理工分社,单片机应用技术项目教程版,项目拓展,*,出版社 理工分社,单片机应用技术项目教程版,复习思考,*,工程9 测速表,知识目标:,1,定时器的结构;,2,定时,/,计数的区别;,3,定时器结合中断处理程序的应用。,技能训练目标:,1.,了解霍尔传感器的使用方法;,2,熟练使用定时,/,计数器,T0,、,T1,;,3,结合中断的方式,灵活应用,T0,、,T1,。,转速测量表,设计要求:,设计一测速系统,以霍尔元件为测速的敏感元件,以,8051,单片机为信号处理控制器,测量当前转盘的速度,并将值通过,4,位数码管实时显示,。,转速是电动机极为重要的一个状态参数,在很多运动系统的测控中,都需要对电机的转速进行测量。转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有,M,法,(,测频法,),、,T,法,(,测周期法,),和,M/T,法,(,频率周期法,),。,M,法是利用一段时间间隔内产生的输出脉冲数来确定转速。,T,法是通过测量光电编码器两个相邻脉冲的时间间隔,即脉冲周期来确定转速。,而,M/T,法相对于其它两种方法有较高的精度,但它的实时性差。由于该系统采用灵敏性和可靠性很高的光电传感器件进行速度采集,因此采用,M,法,(,测频法,),。转速是以单位时间内转数来衡量,,在变换过程中多数是有规律的重复运动。光电采集的输出脉冲信号,其频率和转速成正比。,该测速系统以AT89C51单片机接收霍尔传感器传来的脉冲信号,单片机根据外部中断,以及内部定时器/计数器进行定时和计数,根据计算出电机转速送到通过4位数码管实时显示。首先,将一颗小磁钢贴在测速的轮盘边缘,注意其S靠外由A3144的特性决定,霍尔传感器A3144解决轮盘安装固定,然后将A3144的输出信号输入到单片机用于显示当前转速。系统框图如图9-1。,图,9,1,转速测量系统框图,图,9-2,霍尔传感器测试原理,开关型霍尔传感器,A3144,测量原理,如图,9-2,。,在MCS-51单片机的控制应用系统中,常用的定时方法有:软件定时、硬件定时、可编程定时器。软件定时是通过执行一个循环程序来进行时间延迟,时间精确,不需要附加其它硬件电路;系统硬件定时是由硬件电路完成,无需占用CPU的时间;可编程定时器通过对系统时钟的计数来实现,其计数值通过程序设定,并且通过改变计数值来改变定时的时间,比较方便。,本工程介绍的定时器/计数器为可编程定时器/计数器,通过编程可用来实现定时控制、延时、信号发生、检测信号等。另外,该定时器/计数器还可以作为串行通信中波特率发生器。,2.,定时,/,计数方法,理解两种“工作模式-“定时&“计数,共同点,:都是对脉冲加,1,计数,不同点,:定时,-,对内部机器脉冲计数,计数,-,对外部脉冲计数,t=T*n,脉冲数,定时时间,周期,设定的参加量,量筒加水的过程类比说明定时,/,计数过程,最大值,80ml,定时:,初始值,35ml,量筒加水的过程类比说明定时过程,设定初值,15536,工作方式1时,16位计数器最大值65535,满时“溢出,计,50000,次,50ms,给存放器TH0、TL0赋值,TH0=0 x3C,;,TL0=0 xB0,;,量筒加水的过程类比说明计数过程,读取当前的计数值,设定计数初值,一、定时,/,计数器的结构,MCS-51单片机内部有两个16位的可编程定时器/计数器,称为定时器0T0和定时器1T1,可以通过编程选择其作为定时器使用或作为计数器使用。此外,工作方式、定时时间、计数值、启动、中断请求等都可以由程序设定,其逻辑结构如下图。,图,9,3,定时,/,计数器逻辑结构图,1,、定时,/,计数器的工作模式,“定时/计数器有两种工作模式,一种是定时模式,一种是计数模式。,作为定时器时,是以内部机器周期的脉冲作为基准脉冲,通过计基准脉冲的数量来实现定时功能;,作为计数器时,是对芯片引脚T0(P3.4)或T1(P3.5)上的输入脉冲进行计数,利用外部脉冲的下降沿触发计数,每输入一个脉冲,加法计数器加1,且外部脉冲的最高频率不能超过时钟频率的1/24。,TMOD是定时/计数器的工作方式存放器,其地址为89H,格式如图9-4。,图,9,4,方式寄存器,TMOD,2、方式存放器TMOD(Timer Moden),掌握四种“工作方式,见表9-1,M1 M0,工作方式,功能说明,0 0,方式,0,13,位计数器,0 1,方式,1,16,位计数器,1 0,方式,2,初值自动重载,8,位计数器,1 1,方式,3,T0,:分为两个,8,位计数器;,T1,:停止计数,表,9-1,注:应先以工作方式,1,为例,掌握其用法,其他几种方式可类推!,0 0 0 0 0 0 0 1,TMOD=0 x01,;,例:定义定时器T0、T1工作方式TMOD,要求:,T1纯软件启动,工作于定时模式,工作方式为方式0;,T0纯软件启动,工作于定时模式,工作方式为方式1。,图9-3 方式存放器TMOD,TCON,用于控制定时器的启动、停止、标识定时器的溢出和中断情况,其格式如图,9-5,。,图9-4 控制存放器TCON,溢出中断标志位?,3、控制存放器TCON(Timer controler),二、定时,/,计数器的工作方式,首先,以T0为例,理解掌握工作方式1的应用。,=,主要从以下几个存放器的设置入手:,TMOD-用于工作模式的设置,TH0,TL0-存储定时/计数值,TR0TCON的D4位-开始/停止位,TF0TCON的D5位-溢出标志位,1,工作方式0,-13,位定时,/,计数方式,图9-5工作方式0逻辑电路结构,1,工作方式0,-13,位定时,/,计数方式,难点:,13,位初值的设置,例如:需要定时1ms,那么计数次数为1ms/1us=1000次。那么T0的初值应设为,X=M-计数值=8192-1000=7192=1c18H=0001 1100 0001 1000B,由于13位定时器中,TL0的高3位未使用,填写0,TH0占高8位,所以实际得到的初值,X=1110 0000 0001 1000B=e018H,语句表达为:,TH0=0 xe0;TL0=0 x18;,如图9-6所示:,13,位初值的设置,图,9-6,方式,0,的初值设定,2,工作方式,1-16,位定时,/,计数方式,图9-7,工作方式1逻辑电路结构,16,位初值的设置,例如:需要定时50ms,那么计数次数为1ms/1us=50000次。那么T0的初值应设为,X=M-计数值=65536-50000=15536=3CB0H=0011 1100 1011 0000B。,由于采用16定时器,直接设置X=3CB0H。用语句表达,分配到高8位的TH0和低8位的TL0,写为:,TH0=0 x3c;,TL0=0 xB0;,3,工作方式,2-8,位自动重载初值方式,图9-8工作方式2逻辑电路结构,4,工作方式,3,图9-9工作方式3逻辑电路结构,三,.,定时,/,计数器的使用,1、单片机的定时/计数可以采用查询方式或者中断方式来实现。,2、初始化程序:,由于定时/计数器的功能是由软件编程确定的,所以,在使用定时器/计数前必须对其进行初始化。初始化骤如下:,(1)确定工作方式对TMOD赋值。,如赋值语句为:TMOD=0 x10;说明定时器1工作在方式1,且工作在定时器方式。,(2)预置定时或计数的初值直接将初值写入TH0、TL0或TH1、TL1。,定时/计数器的初值因工作方式的不同而不同。假设最大计数值为M,那么各种工作方式下的M值如下,方式0:213=8192,方式1:216=65536,方式2:28=256,方式3:定时器0分成两个8位计数器,所以两个定时器的M值均为256。,由于定时器/计数器工作的实质是做“加1计数,所以,当最大计数值M值时,初值X可计算如下:,X=M 计数值,(3)根据需要开启定时器/计数器中断可以直接对IE存放器赋值。,(4)启动定时器/计数器工作将TR0或TR1置“1。,GATE=0时,直接由软件置位启动;GATE=1时,除软件置位外,还必须在外中断引脚处加上相应的电平值才能启动。操作为:TR1=1。,练习,1,:分别采用查询法和中断法,利用定时器,T0,,写出,10ms,延时的子程序,void delay(),/*,一:工作模式设置,TMOD=0 x01;,/,对,T0,而言,纯软件启动、定时模式,工作方式,1,/*,二、赋予初值*,/,TH0=0 x3c;,TL0=0 xbo;,/*,三、开始定时*,TR0=1,;,/,启动计数器,/*,四、用查询法查看定时器溢出否*,/,while(TF0=0);,/,查询,TF0=0,?,/*,查询法实现,50ms,延时*,/,中断法,初始化程序段:,/*,一:工作模式设置,/*/,TMOD=0 x01;,/,对,T0,而言,纯软件启动、定时模式,工作方式,1,/*,二、赋予初值*,/,TH0=0 x3c;,TL0=0 xb0;,/*,三、开启总中断及定时中断*,/,EA=1,;,ET0=1,;,/*,三、开始定时*,TR0=1,;,/,启动计数器,while(1);,/,实际应用中,执行其他处理任务,/*中断处理函数*/,void int0()interrupt 1,/参加定时时间到后的处理内容,或者是改写标志变量,TH0=0 x3c;/方式1重赋初值,TL0=0 xb0;,;,思考:“查询法、“中断法各有什么优劣?,练习,2,:对计数模式的理解,用按键模拟外部脉冲,实现单片机对外部脉冲计数,即按键按下一次,数码管上计数值加一。,见仿真演示:,【,活动一,】,硬件电路设计,【,活动二,】,软件设计,算法分析,采用定时计数的方法,用,T0,定时,100ms,,将外部脉冲接入,T1(P3.5),,在固定的,100ms,时间内,T1,计外部脉冲的数量,X,,即可算得该脉冲的频率,。,。,2,程序设计,1启动Keil uVision4软件,创立新工程:CH9.UVPROJ,CPU选择Atmel 89C52。,2对工程的属性进行设置:目标属性中选择“生成HEX文件。,3编写参考源程序ch9.c,以C为扩展名保存在工程文件夹中。,4将参考源程序参加程序组:鼠标右键单击程序组图标,参加文件组。,5调试:进入调试状态,期间可能需要修改参考源程序,直到没有语法错误为止。翻开相应窗口,运行程序,观察运行结果。,三、程序仿真与调试,转速测量表实物图,四、,实物制作,。,2,程序设计,考核项目,考核内容,技术要求,评分,标准,得分,备注,总体设计,任务分析,方案设计,软件和硬件功能划分,任务明确(,5分);,方案设计合理、有新意(,10分);,软件和硬件功能划分合理(,5分);,20分,硬件设计,片内器件分配,;,电路原理图设计;,电路制作;,片内器件分配正确、合理(,5分);,电路原理图设计正确(,10分);,电路制作:布线正确、整齐、合理(,5分);,20分,软件设计,算法和数据结构设计;,流程图设计;,编程;,算法和数据结构设计正确、合理(,5分);,流程图设计正确、简明;(,5分);,编程正确、有新意(,10分);,20分,系统仿真与调试,调试顺序;,错误排除;,调试结果;,调试顺序正确(,5分);,能熟练排除错误(,10分);,调试后运行正确(,5分);,20分,实训报告,书写;,内容;,图形绘制;,结果分析,书写规范整齐(,5分);,内容翔实具体(,5分);,图形绘制正确、完整、全面(,5
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!