单片机
返回首页

lpc1768的rit使用

2017-01-12 来源:eefocus

LPC1768在系统滴答定时器和通用定时器之外还引入了一个定时器,叫做重复定时器RIT,该定时器只能用于定时操作,带有一个中断,我个人的感觉,这似乎是为了延时函数设计的一个定时器

那么使用该定时器时遵循什么流程?

第一,打开时钟

 

第二,我们要确定定时器从pclk分频数值,这要靠另外一个寄存器

 

第三,先关闭定时器

 

第四 设置寄存器比较值

 

第五 清空或者屏蔽一些特定的比较屏蔽位

 

最后打开中断,启动定时器

#define RIT_INT_POSITION 0

#define RIT_ENCLR_POSITION  1

#define RIT_ENBR_POSITION 2

#define RIT_EN_POSITION  3

 

void RitInit(u32 count)

{

    LPC_SC->PCONP |=(1<<16); //打开时钟   sys中四分频 25M

    LPC_RIT->RICTRL &= ~(1<<3);

    LPC_RIT->RICOMPVAL = count;

//  LPC_RIT->RIMASK = count;

    LPC_RIT->RIMASK = 0x80000000;

    LPC_RIT->RICOUNTER = 0;

    NVIC_EnableIRQ(RIT_IRQn);              /* enable irq in nvic              */

    LPC_RIT->RICTRL = (1<

}

 

最后,我们需要在rit的中断函数中响应中断,如下

void RIT_IRQHandler()

{

    u8 state = LPC_RIT->RICTRL;

    if(state&0x01)  //有中断发生

    {

        RitStop();

        LPC_RIT->RICOUNTER = 0;

        LPC_RIT->RICTRL |= 0x01;    //清除中断

        RIT_INT_CALLBACK;

        RitStart();

    }

}


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 如何构建一个触摸传感器电路

  • 基于ICL296的大电流开关稳压器电源电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章