#ifndef __TIM_H_

#define __TIM_H_

#include "common.h"

extern u8 tim1_mr0_flag;

void tim0_ch0_count_int_init(u32 pr,u32 count);//定时器0 通道0 计数模式 中断模式 初始化

#endif

#include "tim.h"

u8 tim1_mr0_flag = 0;

void tim0_ch0_count_int_init(u32 pr,u32 count)  //定时器0 通道0 计数模式 中断模式 初始化

{

//打开TIM0时钟

LPC_SC->PCONP |= (1<<1);//打开时钟

LPC_TIM0->TCR |= (1<<1);//复位定时器   因为此处复位了寄存器,所以系统中使用多个定时器通道的时候这一位一定要改

LPC_TIM0->TCR = 0x00;//禁止定时器 退出复位

LPC_TIM0->PR = pr;//设置预分频值

LPC_TIM0->MR0 = count;//预设计数值

LPC_TIM0->MCR |= (1<<1)|(1<<0);//mr0 匹配时复位 并且中断打开

LPC_TIM0->CTCR &= ~(3<<0);//工作在计数模式

//此时,需要配置中断

NVIC_SetPriority(TIMER0_IRQn,NVIC_EncodePriority(PriorityGroup2,TIM0_PreemptPriority,TIM0_SubPriority));

LPC_TIM0->IR |= (1<<0);//清除中断

NVIC_ClearPendingIRQ(TIMER0_IRQn);//清除中断

NVIC_EnableIRQ(TIMER0_IRQn);//打开中断通道

//打开定时器

LPC_TIM0->TCR |= (1<<0);

}

void TIMER0_IRQHandler(void)

{

if((LPC_TIM0->IR & 0x01))//如果是通道1发生中断

{

LPC_TIM0->IR |= (1<<0);//清除中断

NVIC_ClearPendingIRQ(TIMER0_IRQn);//清除中断

tim1_mr0_flag = 1;

}

else

{

//现在还没做其他的通道的中断

LPC_TIM0->IR = 0xff;//清除中断

NVIC_ClearPendingIRQ(TIMER0_IRQn);//清除中断

}

}

LPC1788定时器使用的更多相关文章

  1. Objective-C三种定时器CADisplayLink / NSTimer / GCD的使用

    OC中的三种定时器:CADisplayLink.NSTimer.GCD 我们先来看看CADiskplayLink, 点进头文件里面看看, 用注释来说明下 @interface CADisplayLin ...

  2. 微信小程序中利用时间选择器和js无计算实现定时器(将字符串或秒数转换成倒计时)

    转载注明出处 改成了一个单独的js文件,并修改代码增加了通用性,点击这里查看 今天写小程序,有一个需求就是用户选择时间,然后我这边就要开始倒计时. 因为小程序的限制,所以直接选用时间选择器作为选择定时 ...

  3. [Java定时器]用Spring Task实现一个简单的定时器.

    今天做一个项目的的时候需要用到定时器功能.具体需求是: 每个月一号触发一次某个类中的方法去拉取别人的接口获取上一个月份车险过期的用户.如若转载请附上原文链接:http://www.cnblogs.co ...

  4. Node+fs+定时器(node-schedule)+MySql

    目标:将本人写博客时候的截图保存到桌面的图片 执行保存到指定文件进行整理 并写入数据库 先看最终的目录结构: package.json文件: { "name": "zqz ...

  5. 深入理解定时器系列第一篇——理解setTimeout和setInterval

    × 目录 [1]setTimeout [2]setInterval [3]运行机制[4]作用[5]应用 前面的话 很长时间以来,定时器一直是javascript动画的核心技术.但是,关于定时器,人们通 ...

  6. 前端开发:setTimeout与setInterval 定时器与异步循环数组

    前端开发:setTimeout与setInterval 定时器与异步循环数组 前言: 开通博客园三个月以来,随笔记录了工作中遇到的大大小小的难题,也看过无数篇令人启发的文章,我觉得这样的环境是极好的, ...

  7. 转载---javascript 定时器总结

    转载:http://www.jb51.net/article/40193.htm JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延 ...

  8. Node中的定时器详解

    在大多数的业务中,我们都会有一些需求,例如几秒钟实现网页的跳转,几分钟对于后台数据进行清理,node与javascript都具有将代码延迟一段时间的能力.在node中可以使用三种方式实现定时功能:超时 ...

  9. spring定时器,定时器一次执行两次的问题

    Spring 定时器 方法一:注解形式 配置文件头加上如下: xmlns:task="http://www.springframework.org/schema/task" htt ...

随机推荐

  1. HDU1258 Sum it up

    Sum it up 题意:给定一个数sum,和n个数,求sum可以由这n个数里面的那几个数的和表示. Given a specified total t and a list of n integer ...

  2. Dev之ChartControl控件(二)— 绘制多重坐标图形

    有时针对一个ChartControl控件可能要设置多个Y轴,进行显示: 以下举个例子:如在一个Chart中显示多个指标项如图: 首先,读取数据,并对左边的Y轴最大和最小值进行设定 IndexSerie ...

  3. hdu_5179_beautiful number(数位DP)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5179 题意:给你一个范围,问你漂亮的数有多少个,漂亮的数的定义为 数位高的比数位低的大,并且 数位高的 ...

  4. 手机端android/iPhone问题

    iPhone: 不能自动播放音乐, 去除默认样式 input:-webkit-appearance: none;border-radius:0px; video播放自动默认全屏解决-webkit-pl ...

  5. sqlserver2008用bat脚本备份时报错因为库名有中横杠【原创】

    提示原因是数据库名字有中横岗“-” 解决方法:用中括号把名字括起来就可以了 call :backupone [数据库名-new] 完整备份脚本如下 @ECHO ON set DATE=%date:/= ...

  6. JSP标签编程--简单标签

    javax.servlet.jsp.tagext里的类SimpleTagSupport 使用SimpleTagSupport类一网打尽以往复杂的标签开发,直接使用doTag()方法 java文件: p ...

  7. ecb gud

    mx gdb不好用,好像是因为用了一个dedicated window,改用mx gud-gdb,好用. http://stackoverflow.com/questions/13560933/how ...

  8. Textbox服务器控件

    <body> <form id="form1" runat="server"> <div> 姓名:<asp:TextB ...

  9. Hibernate用Oracle的sequence生成自增Id

    <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBL ...

  10. Brain Network (easy)

    Brain Network (easy) One particularly well-known fact about zombies is that they move and think terr ...