




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计说明书设计题目:学 院:机械工程学院专 业:机械设计制造及其自动化班 级:学 号:姓 名:指导教师:课 程 设 计 说 明 书目 录1. 课程设计要求12. 系统功能分析与方案确定13. 系统主要硬件电路模块设计43.1编码器模块43.2液晶显示模块93.3复位电路模块143.4晶振电路模块173.5 单片机硬件端口分配184. 程序软件设计与分析194.1系统软件分析及详细技术文件设计195. 后续有待完善和提高的工作25参考文献26附录26331. 课程设计要求数字转速(数)计的设计一、设计任务转速计是我们经常会用到的仪器之一,通常与编码器配合用来测量旋转机械设备的转速。用单片机的定时/计数器功能可以实现频率计的数字化、智能化,通过合理的硬件设计和软件编程使测量精度达到实用化要求。二、 基本要求1. 测量速度范围11000转每分钟。2. 可对转数计数并实时显示;3. 可对转速检测并实时显示;4. 速度检测精度:1%。5. 被测信号是方波。显示方式为转数计数:5位十进制数显示;速度计:5位有效数字显示,保留小数点后2位。2. 系统功能分析与方案确定2.1 转速测量系统的原理2.1.1 转速测量方法转速是指作圆周运动的物体在单位时间内所转过的圈数,其大小及变化往往意味着机器设备运转的正常与否,因此,转速测量一直是工业领域的一个重要问题。按照不同的理论方法,先后产生过模拟测速法(如离心式转速表) 、同步测速法(如机械式或闪光式频闪测速仪) 以及计数测速法。计数测速法又可分为机械式定时计数法和电子式定时计数法。本文介绍的采用单片机和光电传感器组成的高精度转速测量系统,其转速测量方法采用的就是电子式定时计数法。对转速的测量实际上是对转子旋转引起的周期脉冲信号的频率进行测量。在频率的工程测量中,电子式定时计数测量频率的方法一般有三种:测频率法:在一定时间间隔t 内,计数被测信号的重复变化次数N ,则被测信号的频率fx 可表示为f x =Nt(1)测周期法:在被测信号的一个周期内,计数时钟脉冲数m0 ,则被测信号频率fx = fc/ m0 ,其中, fc 为时钟脉冲信号频率。多周期测频法:在被测信号m1 个周期内, 计数时钟脉冲数m2 ,从而得到被测信号频率fx ,则fx 可以表示为fx =m1 fcm2, m1 由测量准确度确定。电子式定时计数法测量频率时, 其测量准确度主要由两项误差来决定: 一项是时基误差; 另一项是量化1 误差。当时基误差小于量化1 误差一个或两个数量级时,这时测量准确度主要由量化1 误差来确定。对于测频率法,测量相对误差为:Er1 =测量误差值实际测量值100 % =1N100 % (2)由此可见,被测信号频率越高, N 越大, Er1 就越小,所以测频率法适用于高频信号( 高转速信号) 的测量。对于测周期法,测量相对误差为:Er2 =测量误差值实际测量值100 % =1m0100 % (3)对于给定的时钟脉冲fc , 当被测信号频率越低时,m0 越大, Er2 就越小,所以测周期法适用于低频信号( 低转速信号) 的测量。对于多周期测频法,测量相对误差为:Er3 =测量误差值实际测量值100%=1m2100 % (4)从上式可知,被测脉冲信号周期数m1 越大, m2 就越大,则测量精度就越高。它适用于高、低频信号(高、低转速信号) 的测量。但随着精度和频率的提高, 采样周期将大大延长,并且判断m1 也要延长采样周期,不适合实时测量。根据以上的讨论,考虑到实际应用中需要测量的转速范围很宽,上述的转速测量方法难以满足要求,因此,研究高精度的转速测量方法,以同时适用于高、低转速信号的测量,不仅具有重要的理论意义,也是实际生产中的需要。2.1.2 转速测量原理利用编码器产生方波信号来模拟速度快慢,即通过编码器,将转速信号变为电脉冲,利用微机在单位时间内对脉冲进行计数,再经过软件计算获得转速数据。即:n=N/ (mT) (1)n 转速、单位:转/ 分钟;N 采样时间内所计脉冲个数;T采样时间、单位:分钟;m 每旋转一周所产生的脉冲个数。如果m=60, 那么1 秒钟内脉冲个数N 就是转速n, 即:n=N/ (mT) =N/60 1/60=N (2)这里m 为400。(看编码器而定)在对转速波动较快系统或要求动态特性好而精度高的转速测控系统中,调节周期一般很短,相应的采样周期需取得很小,使得脉冲当量增高,从而导致整个系统测量精度降低,难以满足测控要求。提高采样速率通常就要减小采样时间T, 而T 的减小会使采到的脉冲数值N 下降,导致脉冲当量(每个脉冲所代表的转速) 增高,从而使得测量精度变得粗糙。通过增加测速码盘的齿数可以提高精度,但是码盘齿数的增加会受到加工工艺的限制,同时会使转速测量脉冲的频率增高,频率的提升又会受到传感器中光电器或磁敏器或磁电器件最高工作频率的限制。凡此种种因素限制了常规智能转速测量方法的使用范围。而采用本文所提出的定时分时双频率采样法,可在保证采样度的同时,提高采样速率,充分发挥微机智能测速方法的优越性及灵活性。图1.1 系统原理图各部分模块的功能:编码器:用来对信号的采样。放大、整形电路:对传感器送过来的信号进行放大和整形,在送入单片机进行数据的处理转换。单片机:对处理过的信号进行转换成转速的实际值,1602液晶1602液晶显示:用来对所测量到的转速进行显示。3. 系统主要硬件电路模块设计3.1编码器模块转速测量的方案选择,一般要考虑传感器的结构、安装以及测速范围与环境条件等方面的适用性;再就是二次仪表的要求,除了显示以外还有控制、通讯和远传方面的要求。这里主要由编码器性质决定,以下为本次实验的编码器,及其工作原理:3.1.1光电编码器的介绍:光电编码器是通过读取光电编码盘上的图案或编码信息来表示与光电编码器相连的电机转子的位置信息的。根据光电编码器的工作原理可以将光电编码器分为绝对式光电编码器与增量式光电编码器,下面我就这两种光电编码器的结构与工作原理做介绍。(一)、绝对式光电编码器绝对式光电编码器如图所示,他是通过读取编码盘上的二进制的编码信息来表示绝对位置信息的。编码盘是按照一定的编码形式制成的圆盘。图1是二进制的编码盘,图中空白部分是透光的,用“0”来表示;涂黑的部分是不透光的,用“1”来表示。通常将组成编码的圈称为码道,每个码道表示二进制数的一位,其中最外侧的是最低位,最里侧的是最高位。如果编码盘有4个码道,则由里向外的码道分别表示为二进制的23、22、21和20,4位二进制可形成16个二进制数,因此就将圆盘划分16个扇区,每个扇区对应一个4位二进制数,如0000、0001、1111。按照码盘上形成的码道配置相应的光电传感器,包括光源、透镜、码盘、光敏二极管和驱动电子线路。当码盘转到一定的角度时,扇区中透光的码道对应的光敏二极管导通,输出低电平“0”,遮光的码道对应的光敏二极管不导通,输出高电平“1”,这样形成与编码方式一致的高、低电平输出,从而获得扇区的位置脚。(二)、增量式光电编码器增量式光电编码器是码盘随位置的变化输出一系列的脉冲信号,然后根据位置变化的方向用计数器对脉冲进行加/减计数,以此达到位置检测的目的。它是由光源、透镜、主光栅码盘、鉴向盘、光敏元件和电子线路组成。增量式光电编码器的工作原理是是由旋转轴转动带动在径向有均匀窄缝的主光栅码盘旋转,在主光栅码盘的上面有与其平行的鉴向盘,在鉴向盘上有两条彼此错开90o相位的窄缝,并分别有光敏二极管接收主光栅码盘透过来的信号。工作时,鉴向盘不动,主光栅码盘随转子旋转,光源经透镜平行射向主光栅码盘,通过主光栅码盘和鉴向盘后由光敏二极管接收相位差90o的近似正弦信号,再由逻辑电路形成转向信号和计数脉冲信号。为了获得绝对位置角,在增量式光电编码器有零位脉冲,即主光栅每旋转一周,输出一个零位脉冲,使位置角清零。利用增量式光电编码器可以检测电机的位置和速度。二、光电编码器的测量方法:光电编码器在电机控制中可以用来测量电机转子的磁场位置和机械位置以及转子的磁场和机械位置的变化速度与变化方向。下面就我就光电编码器在这几方面的应用方法做一下介绍。(一)、使用光电编码器来测量电机的转速可以利用定时器/计数器配合光电编码器的输出脉冲信号来测量电机的转速。具体的测速方法有M法、T法和M/T法3种。M法又称之为测频法,其测速原理是在规定的检测时间Tc内,对光电编码器输出的脉冲信号计数的测速方法,如图2所示,例如光电编码器是N线的,则每旋转一周可以有4N个脉冲,因为两路脉冲的上升沿与下降沿正好使编码器信号4倍频。现在假设检测时间是Tc,计数器的记录的脉冲数是M1,则电机的每分钟的转速为在实际的测量中,时间Tc内的脉冲个数不一定正好是整数,而且存在最大半个脉冲的误差。如果要求测量的误差小于规定的范围,比如说是小于百分之一,那么M1就应该大于50。在一定的转速下要增大检测脉冲数M1以减小误差,可以增大检测时间Tc单考虑到实际的应用检测时间很短,例如伺服系统中的测量速度用于反馈控制,一般应在0.01秒以下。由此可见,减小测量误差的方法是采用高线数的光电编码器。M法测速适用于测量高转速,因为对于给定的光电编码器线数N机测量时间Tc条件下,转速越高,计数脉冲M1越大,误差也就越小。T法也称之为测周法,该测速方法是在一个脉冲周期内对时钟信号脉冲进行计数的方法,如图3所示。例如时钟频率为fclk,计数器记录的脉冲数为M2,光电编码器是N线的,每线输出4N个脉冲,那么电机的每分钟的转速为为了减小误差,希望尽可能记录较多的脉冲数,因此T法测速适用于低速运行的场合。但转速太低,一个编码器输出脉冲的时间太长,时钟脉冲数会超过计数器最大计数值而产生溢出;另外,时间太长也会影响控制的快速性。与M法测速一样,选用线数较多的光电编码器可以提高对电机转速测量的快速性与精度。M/T法测速是将M法和T法两种方法结合在一起使用,在一定的时间范围内,同时对光电编码器输出的脉冲个数M1和M2进行计数,则电机每分钟的转速为 实际工作时,在固定的Tc时间内对光电编码器的脉冲计数,在第一个光电编码器上升沿定时器开始定时,同时开始记录光电编码器和时钟脉冲数,定时器定时Tc时间到,对光电编码器的脉冲停止计数,而在下一个光电编码器的上升沿到来时刻,时钟脉冲才停止记录。采用M/T法既具有M法测速的高速优点,又具有T法测速的低速的优点,能够覆盖较广的转速范围,测量的精度也较高,在电机的控制中有着十分广泛的应用。(二)使用增量式光电编码器来判别电机转速方向的原理增量式光电编码器输出两路相位相差90o的脉冲信号A和B,当电机正转时,脉冲信号A的相位超前脉冲信号B的相位90o,此时逻辑电路处理后可形成高电平的方向信号Dir。当电机反转时,脉冲信号A的相位滞后脉冲信号B的相位90o,此时逻辑电路处理后的方向信号Dir为低电平。因此根据超前与滞后的关系可以确定电机的转向。其转速辩相的原理如图4所示 图4转向判别原理图(三)、增量式光电编码器的反馈脉冲的四倍频原理在使用增量式编码器时,通过计相位相差90o的两路正交脉冲信号A和B的上升沿与下降沿已达到将增量式编码器的反馈脉冲四倍频的目的。这样在不增加增量式光电编码器的线数的情况下,就可以获得更精度高的位置脉冲信息,以实现对电机位置的精确控制。其工作原理与脉冲的相位关系如图5所示图5 脉冲四倍频相位关系图结束语:光电式编码器有着良好的抗干扰特性与应用的可靠性,在电机控制这种有着极高电磁感染的应用环境下有着广阔的应用前景。相信在不久的将来光电式编码器一定会在电机控制领域发挥更为重要的作用。而我们对于光电式编码器的研究也就显得格外的重要。3.2液晶显示模块液晶显示原理液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。液晶显示器的分类液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种。液晶显示器各种图形的显示原理:线段的显示点阵图形式液晶由MN个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共168=128个点组成,屏上6416个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的000H00FH的16字节的内容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。这就是LCD显示的基本原理。字符的显示用LCD显示一个字符时比较复杂,因为一个字符由68或88点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。汉字的显示汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。3.2.1 1602字符型LCD简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。一般1602字符型液晶显示器实物如图10-53:图3-1 1602字符型液晶显示器实物图3.2.2 1602LCD的基本参数及引脚功能1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图10-54所示:图3-2 1602LCD尺寸图1602LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。3.2.7 硬件原理图1602液晶显示模块可以和单片机AT89C51直接接口,电路如图3-11所示。图3-11 硬件原理图3.2.8 程序流程图图3-12 软件流程图3.3复位电路模块复位电路(图4.8):MCS-51 单片机复位电路是指单片机的初始化操作。单片机启运运行时,都需要先复位,其作用是使CPU 和系统中其他部件处于一个确定的初始状态,并从这个状态开始工作。因而,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,必须配合相应的外部电路才能实现。图4.8 复位电路复位功能:复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。单片机的复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST 通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位(如图4.9 (a))和按钮复位(如图4.9(b)两种方式。图4.9 RC 复位电路单片机复位后的状态:单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC0000H,这表明程序从0000H 地址单元开始执行。单片机冷启动后,片内RAM 为随机值,运行中的复位操作不改变片内RAM 区中的内容,21 个特殊功能寄存器复位后的状态为确定值,见表1。值得指出的是,记住一些特殊功能寄存器复位后的主要状态,对于了解单片机的初态,减少应用程序中的初始化部分是十分必要的。说明:表4-1 中符号*为随机状态:表4-1 寄存器复位后状态表PSW00H,表明选寄存器0 组为工作寄存器组; SP07H,表明堆栈指针指向片内RAM 07H 字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H 单元中;Po-P3FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出。IP00000B,表明各个中断源处于低优先级; IE000000B,表明各个中断均被关断; 系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。51 单片机的复位是由RESET 引脚来控制的,此引脚与高电平相接超过24 个振荡周期后,51 单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET 引脚转为低电平后,才检查EA 引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。51 单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部RAM 内部的数据则不变。3.4 晶振电路模块晶振(图4.10)是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是并联谐振。AT89C51 单片机内部有一个用构成振荡器的高增益反相放大器。引脚XTAL1 和XTAL2 分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1 和C2 构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为30F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。晶体振荡电路如图3-6:晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。3.5 单片机硬件端口分配 为合理利用单片机的端口资源,并且兼顾程序设计的便利,将系统的输出和输入端口作如表3.1配置。 表3.1 单片机端口配置表单片机端口外围接口电路硬件模块P1.2,P3.2编码器信号接收口P2.0-P2.2,P0.0-P0.7液晶显示集成电路模块4. 程序软件设计与分析4.1系统软件分析及详细技术文件设计单片机 AT89C51介绍AT89C51 是一种带4K 字节闪烁可编程可擦除只读存储器(FPEROMFalshProgrammable and Erasable Read Only Memory)的低电压,高性能CMOS8 位微处理器,俗称单片机。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51 指令集和输出管脚相兼容。由于将多功能8 位CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51 是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图4.5 是常用的一种单片机,型号为AT89C51,它将计算机的功能都集成到这个芯片内部去了,就这么一个小小的芯片就能构成一台小型的电脑,因此叫做单片机。图4.5 AT89C51 芯片它有40 个管脚,分成两排,每一排各有20 个脚,其中左下角标有箭头的为第1 脚,然后按逆时针方向依次为第2 脚、第3 脚第40 脚。在40 个管脚中,其中有32 个脚可用于各种控制,比如控制小灯的亮与灭、控制电机的正转与反转、控制电梯的升与降等,这32 个脚叫做单片机的“端口”,在单片机技术中,每个端口都有一个特定的名字,比如第一脚的那个端口叫做“P1.0”。AT89C51 单片机的功能:1主要特性:与MCS-51 兼容4K 字节可编程闪烁存储器寿命:1000 写/擦循环数据保留时间:10 年全静态工作:0Hz-24Hz三级程序存储器锁定128*8 位内部RAM32 可编程I/O 线两个16 位定时器/计数器5 个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路2管脚说明(图4.7):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 口管脚备选功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0 外部输入)P3.5 T1(记时器1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE 脉冲。如想禁止ALE 的输出可在SFR8EH 地址上置0。此时, ALE 只有在执行MOVX,MOVC 指令是ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE 禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1 时,/EA 将内部锁定为RESET;当/EA 端保持高电平时,此间内部程序存储器。在FLASH 编程期间,此引脚也用于施加12V 编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3振荡器特性:XTAL1 和XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除:整个PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE 管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU 停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。5.系统软件设计硬件电路完成以后,进行系统软件设计。首先要分析系统对软件的要求,然后进行软件的总体的设计,包括程序的总体设计和对程序的模块化设计。按整体功能分为多个不同的模块,单独设计、编程、调试,然后将各个模块装配联调,组成完整的软件。根据设计的要求,单片机的任务是:内部进行计数,在计算出速度后显示。软件编程用C 语言完成的,需要能掌握C 语言,还要熟练AT89C51 单片机。从程序流程图、编写程序、编译,到最后的调试,是很复杂的。下面作简单介绍:系统软件主程序的功能是完成系统的初始化、显示程序。5.1 主程序初始化(1) .定时器的初始化AT89C51 有两个定时器/计数器T0 和T1,每个定时器/计数器均可设置成为16位,也可以设置成为13 位进行定时或计数。计数器的功能是对T0 或T1 外来脉冲的进行计数,外部输入脉冲负跳变时,计数器进行加1。定时功能是通过计数器的计数来实现的,每个机器周期产生1 个计数脉冲,即每个机器周期计数器加1,因此定时时间等于计数个数乘以机器周期。定时器工作时,每接收到1 个计数脉冲(或机器周期)则在设定的初值基础上自动加1,当所有位都位1时,再加1 就会产生溢出,将向CPU 提出定时器溢出中断身请。当定时器采用不同的工作方式和设置不同的初值时,产生溢出中断的定时值和计数值将不同,从而可以适应不同的定时或计数控制。定时器有4 种工作方式:方式0、方式2、方式2 和方式3,在此对工作方式不做具体介绍。工作方式寄存器TMOD 的设定:TMOD 各位的含义如下:GATE:门控位,用于控制定时/计数器的启动是否受外部中断请求信号的影响。C/T:定时或计数方式选择位,当C/T=1 时工作于计数方式;当C/T=0 时工作于定时方式。M1、M0 为工作方式选择位,用于对T0 的四种工作方式,T1 的三种工作方式进行选择,选择情况如下表5-1:M1M0=00 为方式0;M1M0=01 为方式1;表5-1 M1、M0 为工作方式选择位(2)中断允许控制MCS-51 单片机中没有专门的开中断和关中断指令,对各个中断源的允许和屏蔽是由内部的中断允许寄存器IE 的各位来控制的。中断允许寄存器IE 的字节地址为A8H,可以进行位寻址表5-2 中断位寻址表EA:中断允许总控位。EA=0,屏蔽所有的中断请求;EA=1,开放中断。ET2:定时器/计数器T2 的溢出中断允许位ES:串行口中断允许位。ET1:定时器/计数器T1 的溢出中断允许位。EX1:外部中断INT1 的中断允许位。ET0:定时器/计数器T0 的溢出中断允许位。EX0:外部中断INT0 的中断允许位。5.2主程序流程图程序流程图主程序流程图5.1图5.1 流程图定时计数子程序流程图5.3图5.3 定时计数子程序流程图5. 后续有待完善和提高的工作采用单片机技术来实现转速的测量,可以提高转速的测量,可以提高转速测量的精确度,并且加快了采样的速率,具有较好的实时性。本文介绍的转速方法使用于高、低转速的测量,测量精确度与转速无关,因而具有较宽的应用范围和广阔的应用的前景。基于单片机的转速测量系统,具有硬件电路简单,程序简单和运算速度快,测速范围广,抗干扰性能好的特点。在设计的信号处理电路中经过滤波,能够进一步减少误差,是测速精度得到提高。可以再加入其他检测模块如检测电机温度、扭矩等,精度方面也可以再提高一点。参考文献1、陈伯时.电力拖动自动控制系统-运动控制系统.机械工业出版社,20032、马全权,李庆辉,强盛.一种高精度实时电机转速测量新方法,齐齐哈尔大学学报.20023、孙桂荣,班莹,刘鸣.电机转速测量设计实验. 实验室科学,20054、王雪文.张志勇.传感器原理及应用.北京航空航天大学出版社.20045、王秀杰,张畴先.模拟集成电路应用.西北工业大学出版社,20036、何立民.MCS-51 系列单片机应用系统设计.北京:北京航空航天大学出版社,19907、蒋智勇. 单片微型计算机原理及接口技术.沈阳:辽宁科学技术出版设,19928、何立民.MCS-51 系列单片机应用系统设计.北京:北京航空航天大学出版社,19909、穆兰.单片微型计算机原理及接口技术.北京:机械工业出版社,199510、张毅刚.MCS-51 单片机应用设计.哈尔滨:哈尔滨工业大学出版社,199011、蒋智勇. 单片微型计算机原理及接口技术.沈阳:辽宁科学技术出版设,1992附录/*系统软件源程序*/#include /包含单片机寄存器的头文件#include /包含随机函数rand()的定义文件#include /包含_nop_()函数定义的头文件sbit RS=P20; /寄存器选择位,将RS位定义为P2.0引脚sbit RW=P21; /读写选择位,将RW位定义为P2.1引脚sbit E=P22; /使能信号位,将E位定义为P2.2引脚sbit BF=P07; /忙碌标志位,将BF位定义为P0.7引脚 sbit b_pul=P32; /编码器脉冲 sbit b_dir=P12; /编码器方向float counter = 0.0,shudu=0.0,shuju1=0.0,shuju2=0.0; /编码器脉冲计数 unsigned char n,shift;unsigned char code digit =0123456789; /定义字符数组显示数字unsigned char code string2 =ZS; /定义字符数组显示提示信息unsigned char code string1 =QS; /定义字符数组显示提示信息unsigned char count; /定义变量统计中断累计次数long s,m,zuikuai;/*函数功能:延时1ms(3j+2)*i=(333+2)10=1010(微秒),可以认为是1毫秒*/void delay1ms() unsigned char i,j; for(i=0;i10;i+) for(j=0;j33;j+) ; /*函数功能:延时若干毫秒入口参数:n*/ void delay(unsigned char ms) unsigned char i;for(i=0;ims;i+) delay1ms(); /*函数功能:判断液晶模块的忙碌状态返回值:result。result=1,忙碌;result=0,不忙*/ unsigned char BusyTest(void) bit result;RS=0; /根据规定,RS为低电平,RW为高电平时,可以读状态 RW=1; E=1; /E=1,才允许读写 _nop_(); /空操作 _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 result=BF; /将忙碌标志电平赋给result E=0; /将E恢复低电平 return result; /*函数功能:将模式设置指令或显示地址写入液晶模块入口参数:dictate*/void WriteInstruction (unsigned char dictate) while(BusyTest()=1); /如果忙就等待 RS=0; /根据规定,RS和R/W同时为低电平时,可以写入指令 RW=0; E=0; /E置低电平(根据表8-6,写指令时,E为高脉冲, / 就是让E从0到1发生正跳变,所以应先置0 _nop_(); _nop_(); /空操作两个机器周期,给硬件反应时间 P0=dictate; /将数据送入P0口,即写入指令或地址 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=1; /E置高电平 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=0; /当E由高电平跳变成低电平时,液晶模块开始执行命令 /*函数功能:指定字符显示的实际地址入口参数:x*/ void WriteAddress(unsigned char x) WriteInstruction(x|0x80); /显示位置的确定方法规定为80H+地址码x /*函数功能:将数据(字符的标准ASCII码)写入液晶模块入口参数:y(为字符常量)*/ void WriteData(unsigned char y) while(BusyTest()=1); RS=1; /RS为高电平,RW为低电平时,可以写入数据 RW=0; E=0; /E置低电平(根据表8-6,写指令时,E为高脉冲, / 就是让E从0到1发生正跳变,所以应先置0 P0=y; /将数据送入P0口,即将数据写入液晶模块 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=1; /E置高电平 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=0; /当E由高电平跳变成低电平时,液晶模块开始执行命令 /*函数功能:对LCD的显示模式进行初始化设置*/void Lcd
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东梅州职业技术学院《交通规划课程设计》2023-2024学年第二学期期末试卷
- 哈尔滨商业大学《物理化学实验(上)》2023-2024学年第二学期期末试卷
- 黑龙江艺术职业学院《地理专业》2023-2024学年第二学期期末试卷
- 14保护呼吸器官(教学设计)-2024-2025学年科学三年级上册人教鄂教版
- 河南轻工职业学院《嵌入式综合实训》2023-2024学年第二学期期末试卷
- 中南林业科技大学《生命科学进展》2023-2024学年第二学期期末试卷
- 宜宾学院《天然产物》2023-2024学年第二学期期末试卷
- 哈尔滨商业大学《流体力学B》2023-2024学年第二学期期末试卷
- 泸州四川泸州泸县气象局见习基地招收见习人员2人笔试历年参考题库附带答案详解
- 大连软件职业学院《数据结构实验》2023-2024学年第二学期期末试卷
- GB/T 5796.3-1986梯形螺纹基本尺寸
- GB/T 4851-2014胶粘带持粘性的试验方法
- GB/T 3860-2009文献主题标引规则
- GB/T 13277.3-2015压缩空气第3部分:湿度测量方法
- 人教版小学精通英语单元五下Unit1整合教案
- (课件)港口安全知识培训讲解
- 2022年企业安全生产知识培训讲座PPT课件(带内容)
- 产品设计思维课件
- 电子直线加速器的工作原理专题培训课件
- 2023年孝感市孝南区全要素自然资源有限公司招聘笔试题库及答案解析
- 临终关怀成品课件
评论
0/150
提交评论