⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 编码器.c

📁 简单的控制直流电机的闭环速度反馈KEIL程序编译
💻 C
字号:
//-----------------------函数声明,变量定义--------------------------------------------------------
#include <reg51.h>
sbit INT_0 =P3^2;	             // 将p3.2外部中断0
sbit pulse_A=P1^2;               // P1.2为脉冲A输入


bit real_direction;             //电机实际运行方向
unsigned char pulseB_count;     //脉冲计数
//-----------------------变量声明---------------------------------------------------------------------
//--------------------------------------------------------------------------------------------------
// 函数名称: INT0_init()
// 函数功能: 初始化设置
//            设定INT0的工作方式
//--------------------------------------------------------------------------------------------------
void INT0_init(void )  
             {
              IT0=1;     //选择INT0为沿触发方式
              EX0=1;     //外部中断允许
              EA=1;      //系统中断允许
              }
//--------------------------------------------------------------------------------------------------
// 函数名称: INT0_intrupt
// 函数功能: 外部中断0处理程序
//--------------------------------------------------------------------------------------------------
void INT0_intrupt() interrupt 0 using 1
        {
        if(pulse_A==0)
          {   
          real_direction=1;  //若P1.2为低电平,则电机为正转,计数器N的值加1
          pulseB_count++;
          }
        else                //若为高电平,则电机为反转,计数器N值减l。
           {
            real_direction=1;
            pulseB_count++;
          }
}





⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -