新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于PIC16F877单片机的简易测速计设计方案

基于PIC16F877单片机的简易测速计设计方案

作者:时间:2013-11-08来源:网络收藏

  0 引言

  随着微电子技术的迅猛发展,在汽车、通信、办公自动化、工业控制、高级玩具、家用电器等方面都得到了广泛的应用。如果将Proteus 作为系统仿真工具,则不用制作电路板,而可以使用Proteus 进行系统虚拟实现,这样不仅能完成所需功能设计验证,还能降低硬件成本的耗用,从而缩短整个设计周期,从根本上提高了电子产品的开发效率。

  测速是工农业生产中经常遇到的问题,基于的各种优势,将单片机应用于测速系统,具有很重要的意义。而对于测速技术,首先要解决的就是采样问题。在使用模拟技术制作测速设备时,常用测速发电机的方法,即将测速发电机的转轴与待测轴相连,测速发电机的电压高低反映了转速的高低;而使用单片机进行测速,则可以使用简单的脉冲计数法。

  只要转轴每旋转一周,产生一个或固定的多个脉冲,并将脉冲送入单片机中进行计数,最终计算出单位时间内的脉冲个数,即可获得转速的相关信息。本文将基于 单片机的捕捉功能来完成脉冲计数,利用软件编程实现相关物理关系的转换,最终得出齿轮线速度,并显示在数码管上。

  1 测速计原理

  1.1 CCP1 捕捉功能

   单片机中有两个CCP 模块,其构造基本相同,分别记为CCP1 和CCP2.每个CCP 模块可以任意配置为捕捉(Capture)、比较(Compare) 和脉宽调制(PWM)3 个功能模式之一。

  CCP1 的捕捉模式具有如下三个功能:其一是可以捕捉RC2/CPP1引脚出现的跳变并保存当时TMR1计数寄存器内容;其二是具有预分频器,可以实现每1 个脉冲、每4 个脉冲或16 个脉冲捕捉一次;其三是捕捉时间能产生中断。

  1.2 CCP 测速计原理

  在捕捉模式下,单片机可以捕捉引脚电平变化时刻的时间值,即引脚输入脉冲上升沿或下降沿出现时刻的精确时间值。

   的CCP1 模块工作于捕捉模式时,当特定的跳变沿出现时,TMR1 定时器的计数值会立即复制到CCPR1H 和CCPR1L 中并产生中断信号,通过在中断服务程序中读取这个16 位计数值。当使用CCP1 模块的捕捉功能实现相邻两次上升沿时间间隔的测量时,此时间间隔就是输入信号的周期g-Period.由于主频是4 MHz, 即每个指令周期为1 μs, 将预分频比设置为1:1,测得周期结果单位为微秒级。所以最终测得的速度值speed 通过以下公式得出:

  speed=(1M*60s*0.01m*pi)/g_Period

  其中,pi 为圆周率值;0.01m 为被测对象齿轮的直径,通过物理方法测得。

  speed=(1M*60s*0.01m*pi)/g_Period

  其中,pi 为圆周率值;0.01m 为被测对象齿轮的直径,通过物理方法测得。

  2 功能实现

  2.1 系统设计框图

  测速计功能的实现可由基于PIC16F877 的主控制模块、显示模块、齿轮和光电传感器构成的被测模块等几部分构成。

  通过单片机的RC2/CCP1 引脚分别连接被测模块和测量子模块,在Proteus 软件仿真时,分别由信号发生器SG1 和频率计作为硬件设备连接。SG1 用来模拟被测模块产生信号,F1 采用频率计方式运行,用来显示当前信号频率,用来做参考值与显示模块数据,即测速计测速结果值进行比较,以验证测速计测速结果的正确与否。各模块之间的连接关系如图1 所示。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭