




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计时器:2104有两个定时计数器T0、T1IR :计时器中断寄存器T0IR、T1IRTCR :定时器控制寄存器TC :定时器计数器PR :预分频寄存器PC :预分频计数器寄存器MR0-3匹配寄存器MCR :匹配控制寄存器CR0-3 :捕捉寄存器CCR :捕捉控制寄存器EMR :外部匹配寄存器计时器的基本操作方法:计算l定时器的时钟频率,设定PR寄存器,进行分频操作l设定比较一致通道的初始值和动作模式,使用捕捉功能时,设定捕捉方式使用l定时器的相关中断的话,设定VIC,使之能够中断设定TCR,启动计时器l计数时钟频率=Fpclk/(N 1) N是PR的值定时器初始化:(定时器0定时0.1S )步骤:程序使用匹配寄存器将T0PR=99,即计数频率设定为Fplck的1/100 (即25 000HZ ),使用计时器0的MR0进行匹配比较操作定义为1、T0TC=0的复位定时计数器2、定时T0PR,即定义器频率为100分频3、设置T0MCR、T0MCR,核对后复位T0TC,发生中断4、定义匹配寄存器T0MR0,设定匹配值5、T0TCR定义、启动计时器0计时器捕获过程中的步骤:1、定义管脚连接,捕获管脚2、设置捕获控制寄存器T0CCR,设置捕获状态,并且设置上升沿、下降沿、事件中断3、复位T0TC4、启动计时器、T0TCR计时器PWM输出程序步:通过计时器的匹配输出功能实现,MR1匹配后MAT0.1输出电平反转时,输出的PWM占空比为一定的50%,要控制PWM占空比只能通过中断处理实现!1、设置匹配寄存器T0MCR1,在匹配后复位2、设定外部匹配寄存器T0EMR,匹配后使MAT0.1输出反转3 .根据PWM周期,设定匹配值T0MR14、启动计时器T0TCRLPC2103计时器0定时实验-查询方式今天进行了lpc2103的计时器实验,相关的c语言程序如下计时器0的定时-查询方法.查询方法.查询方法/功能:控制计时器0实现0.5秒的计时,等待查询标志位在计时时间到达,使LED每秒点亮/作成:胡峰/说明:参见ZLG电子教案OOOOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#includeincconfig.h #define LED 117 /p0.17控制LED,低电平点亮求求求求求求求求求求求求求求求求求求求求求*函数名称: Init_timer0 ()*函数功能:使用计时器T0实现0.5s的计时,控制LED的闪烁OOOOMMMMMMMMMMMMMMMMMMMMMMMMMMMMvoid Init_timer0(void )举止T0TC=0; /将定时器计数器设为0T0PR=0; /时钟不分频T0MCR=0x03; 设定T0MR0匹配后发生中断,将T0TC复位T0MR0=Fpclk/2; /0.5秒的定时T0TCR=0x01; /启动计时器以下求求求求求求求求求求求求求求求求求求求求求*函数名称: main ()*函数功能:使用计时器T0实现0.5s的计时,控制LED的闪烁OOOOMMMMMMMMMMMMMMMMMMMMMMMMMMMM语音主(语音主)举止PINSEL0=0x00000000; /管脚连接GPIO的设定IO0DIR=LED;/设定led控制端口输出Init_timer0 (); /计时器0初始化while(1)举止while (t0ir0x 01 )=/等待定时时间的到来T0IR=0x01; /清楚地中断标志if(IO0SET LED)=0) IO0SET=LED; /LED熄灭else IO0CLR=LED /LED亮以下/return 0;以下结果发现,程序中的计时器时间一达到0.5秒,LED就会改变一次状态,但实际执行的结果不是这样,好像其亮度和熄灭时间已经在1s以上,我的程序直接印在flash上。 你遇到过不知道那是什么原因的这种情况吗? 请和我交流。【转】LPC2103计时器0计时器实验-中断方式2010-08-23093765056在这两天学习LPC2103的计时器,其中使用中断这个功能,看了例子后,觉得ARM的中断设定很复杂,看了两天才稍微明白。在lpc2103的向量中断寄存器(VIC )中有32个中断请求输入,分为FIQ (快速中断)、向量IRQ和非向量IRQ这3种。 其中FIQ优先级最高,矢量IRQ次高非向量IRQ最低。VIC的基本操作方法如下1 .设定中断是FIQ还是IRQ,如果是IRQ则设定向量中断,分配中断优先级。2 .设定中断许可,并设定村的向量中断对应地址或非向量中断默认地址。3 .有中断后,如果有IRQ中断,可以读取向量地址寄存器,并跳转到有该地址的响应服务代码。4 .在出现中断的情况下,向向量地址寄存器写入0,并且通知VIC中断结束。在上一次实验中,用查询方式实现了LED闪烁,但是查询时CPU只能做一个,CPU的使用效率大幅降低,所以一般用中断方式更经济地实现了。程序如下所示:#include#include#include/OSC Hz外部水晶振子#define FOSC 11059200UL/Core clk Hz处理器当前时钟#define FCCLK FOSC/Per clk Hz外部设备时钟由VPB分频器确定其与FCCLK的关系#define PCCLK (FOSC/4 )/Timer tick per second计时器分频#define TICK_PER_SEC (2UL )# define Tim _ per _ s (val ) (PC clk/val )# definemax _ tick _ per Tim _ per _ s (20 )#define MIN_TICK_PER TIM_PER_S(5)/timer delta周期 ms #define DELTA_PER (50UL )# define Tim _ DP rer (PC clk * delta _ per )/1000 ul )#define LED_MASK 118求求求求求求求求求求求求求求求求求求求求*函数名称: irq_handler*入口参数:无*返回参数:无*说明: IRQ处理程序*我要去找你,我要去找你,我要去找你。#pragma vector=IRQV /中断向量地址_irq _arm void irq_handler (void )举止void (*interrupt_function ) ();不指示向量;向量=vicvectaddr; /获取中断矢量interrupt _ function=(void (* ) ) () ) vector;if (中断_函数! 如果不是=null)/null函数举止interrupt_function (); /调用断点函数以下else举止VICVectAddr=0; 清除/vic中的中断以下以下求求求求求求求求求求求求求求求求求求求求*函数名称: Timer0Handler*入口参数:无*无返回参数:*说明: Timer 0 handler*我要去找你,我要去找你,我要去找你。void Timer0Handler (void )举止清除/clear interrupt标志中断标志T0IR_bit.MR0INT=1;/Change paternif (IOSET LED_MASK)=0)IOSET=LED_MASK; 关闭/ledelseIOCLR=LED_MASK;/pnext pattern=pnext pattern-pnext pattern; /调整当前链表T0IR=0x02;VICVectAddr=0;以下求求求求求求求求求求求求求求求求求求求求*函数名称: VicInit中断初始化子程序*入口参数:无*无返回参数:*说明: init vic模块*我要去找你,我要去找你,我要去找你。void VicInit (void )举止/初始化中断选择寄存器,选择0为IRQ,1为FIQ,在此写入0,IRQ .VICIntSelect=0;/清除中断使能寄存器、写入1中断使能寄存器的对应位,禁止对应的中断请求VICIntEnClear=0xFFFFFFFF;/清除软件中断清除寄存器、软件中断寄存器的相应位1,解除强制的中断请求VICSoftIntClear=0xFFFFFFFF;/保护许可寄存器写入0使用户和特权模式都能访问VIC寄存器,写入1只能在用户模式下访问vic保护=0;/清除向量地址寄存器VICVectAddr=0;/清除默认向量地址寄存器VICDefVectAddr=0;/creardesoftheinterruptservicerouteine (ISR ) forvectoreddirqs。vicvectaddr0=vicvectaddr1=vicvectaddr2=vicvectaddr3=_vicvectaddr4=vicvectaddr5=vicvectaddr6=vicvectaddr7=_vicvectaddr8=vicvectaddr9=vicvectaddr 10=vicvectaddr 11=_vicvectaddr 12=vicvectaddr 13=vicvectaddr 14=vicvectaddr 15=0;/禁用所有受验证的IRQ槽vicvectcntl0=vicvectcntl1=vicvectcntl2=vicvectcntl3=vicvectcntl4=vicvectcntl5=vicvectcntl6=vicvectcntl7=_vicvectcntl8=vicvectcntl9=vicvectcntl 10=vicvectcntl 11=vicvectcntl 12=vicvectcntl 13=vicvectcntl 14=vicvectcntl 15=0;以下求助于,求助于,求助于,求助于,求助于。*函数名称: Init_timer0*入口参数:无*无返回参数:*说明: Init tiner0*我要去找你,我要去找你,我要去
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中书法概述课件
- 离婚双方贷款房产分割及共同还款协议
- 生猪、菜牛、菜羊、家禽养殖基地养殖资金购销合同
- 离婚后特殊病患子女抚养权及医疗费用承担协议
- 生物质能源项目贷款合同附共同担保人及环保责任
- 电信IDC机房服务-移动数据业务标包合作协议
- 公务员面试培训咨询服务合同
- 化学工业新产品推广细则
- 物业管理矛盾调解手册
- 园艺工程:参与或观赏园林景观工程
- 新转型九年一贯制学校三年发展规划(2025年-2028年)
- 维护秩序靠规则(课件) 2025-2026学年八年级道德与法治上册(统编版2024)
- 期神丁鹏期货交易课件
- 反走私课件教学课件
- 大货车闯红灯安全培训课件
- 2025秋教科版(2024)科学三年级上册教学设计(附目录)
- 2025年人教版三年级数学上册全册教案
- (2025秋新版)苏教版科学三年级上册全册教案
- 《中国人首次进入自己的空间站》导学案 部编语文八年级上册
- 烟花爆竹经营安全管理知识培训考核试题及答案
- 四川省土地开发项目预算定额标准
评论
0/150
提交评论