博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
N76E003---输入捕获
阅读量:4606 次
发布时间:2019-06-09

本文共 882 字,大约阅读时间需要 2 分钟。

输入捕获

根据芯片手册,定时器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 }

 

转载于:https://www.cnblogs.com/r1chie/p/10721572.html

你可能感兴趣的文章
Django extend(继承)模板标签
查看>>
2016.10.24 继续学习
查看>>
产品功能对标 - 服务授权管理
查看>>
各地IT薪资待遇讨论
查看>>
splay入门
查看>>
带CookieContainer进行post
查看>>
C语言学习笔记--字符串
查看>>
CSS-上下文选择器
查看>>
ionic repeat 重复最后一个时要执行某个函数
查看>>
1.初识代码审计-基础
查看>>
APC注入
查看>>
No enclosing instance of type Hello is accessible
查看>>
windows SVN搭建
查看>>
Scrum立会报告+燃尽图(Beta阶段第二周第二次)
查看>>
动态代理
查看>>
WCF 中,出现The remote server returned an unexpected response: (400) Bad Request.
查看>>
缓存概要
查看>>
vue项目中使用百度地图的方法
查看>>
[Vue-rx] Stream an API using RxJS into a Vue.js Template
查看>>
[Javascript] lodash: memoize() to improve the profermence
查看>>