zoukankan      html  css  js  c++  java
  • N76E003---输入捕获

    输入捕获

    根据芯片手册,定时器2可以作为输入捕获使用,设置非常简单,官方也提供了宏给我们使用

    void Time2_cap_init(void)
    {
        /******* 输入捕获CF设置 **********/
        Set_All_GPIO_Quasi_Mode;
        P04_Input_Mode;
        //P04 = 1;
        
        TIMER2_CAP0_Capture_Mode; //定时器2启用输入捕获功能
        
        IC3_P04_CAP0_RisingEdge_Capture;  //P04管脚,捕获方式:上升沿捕获
        
        
        set_ECAP;//开启输入捕获的中断
        
        set_TR2;
        
        set_EA;
    }

    处理函数

    我的处理函数非常简单,就是捕获到一个上升沿后,改为下降沿触发,即捕获到一个脉冲。

     1 void Capture_ISR (void) interrupt 12 
     2 {
     3     static char state;
     4 
     5     if(state == 1)
     6     {
     7       IC3_P04_CAP0_RisingEdge_Capture;    //开启上升沿捕获
     8        pulse_cnt++; //捕获次数加1
     9                         
    10      state = 0;
    11      }
    12      else //第一次捕获上升沿 
    13      {
    14         IC3_P04_CAP0_FallingEdge_Capture;    //开启下降沿捕获                                
    15         state = 1;
    16 
    17      }
    18         clr_CAPF0;
    19                     
    20 
    21 }
  • 相关阅读:
    Gin+Gorm小项目
    python实现监控信息收集
    Vue引入Stylus
    Go搭建一个Web服务器
    saltstack高效运维
    04-01 Django之模板层
    03-01 Django之视图层
    02-01 Django之路由层
    HTTP协议
    01-01 Web应用
  • 原文地址:https://www.cnblogs.com/r1chie/p/10721572.html
Copyright © 2011-2022 走看看