51单片机检测光电旋转编码器每周实际脉冲数2009-08-18 15:19由于工作需要,写了这个程序来实际使用,感觉效果还可以。特记录在此,供有相同或相似需要的朋友查看。
程序代码
/******************************************************************
** 文件名: main.c
** 创建人: 飘扬
** 日 期: 2006.10.04
** 修改人:
** 日 期:
** 描 述: 本程序使用伟纳300A型实验板,来检测光电旋转编码器的实际每周
** 输出脉冲数。程序中,定时器0用于8位数码管动态扫描定时,时间
** 为1ms(12MHZ晶振)。定时器1工作于模式1,计数器方式,直接测量
** 接在T1脚的脉冲个数。外部中断0,工作于边沿触发方式,接在旋转
** 编码器的Z信号输出上,用于检测编码器完整旋转一周。8位数码管,
** 接成动态扫描,接在P0和P2口。左4位,用来显示上一周的实际脉冲
** 数,右4位,用来显示当前周的脉冲数。
**
** 实际使用,感觉效果还可以。程序准确的测量出某牌光电旋转编码
** 器(400脉冲),实际工作时,双路信号输出脉冲数量不等,及脉冲
** 数与标称值的误差情况。
**
** 本程序的显示部分,直接修改于伟纳提供的数码管显示1-8例程。
**----------------------------------------------------------------*/
#include <reg51.h>
#include <intrins.h>
unsigned char data dis_digit;
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余3页未读,立即下载
- 1
- 2
- 3
前往页