实验6、定时器实验.doc

上传人:cn****1 文档编号:542420413 上传时间:2023-09-03 格式:DOC 页数:3 大小:44.51KB
返回 下载 相关 举报
实验6、定时器实验.doc_第1页
第1页 / 共3页
实验6、定时器实验.doc_第2页
第2页 / 共3页
实验6、定时器实验.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《实验6、定时器实验.doc》由会员分享,可在线阅读,更多相关《实验6、定时器实验.doc(3页珍藏版)》请在金锄头文库上搜索。

1、实验6、定时器实验【实验目的】1、 学习LPC系列处理器定时器的功能原理;2、 掌握定时器的功能设置及工作模式设置;3、 掌握中断原理。4、 了解中断服务函数的编写方法。【实验要求】1、 了解LPC系列处理器定时器的的功能原理。2、 根据硬件电路,在KEIL中编写程序;3、 下载到试验台上成功运行4、 附加要求:请实现2秒定时,并且控制4个LED显示不同效果【实验原理】1、 IR 中断定时器TCR 定时器控制定时器TC 定时器计数器PR 预分频寄存器 MCR 匹配控制寄存器PC 预分频计数器要实现定时器的功能实际上就是对定时器寄存器的控制,所以只要懂得以上寄存器的原理就可以实现定时器功能了,实

2、际编程时只需对IR,TCR,PR, MCR操作即可2、实验电路实验电路如下图,使用定时器0和定时器1的定时功能。控制LED0和LED1改变状态。#include#define LEDCON0 (114) /*P1.14引脚控制LED D4,高电平点亮*/#define LEDCON1 (115) /*P1.15引脚控制LED D3,高电平点亮*/#define Fpclk 12000000 /*外设时钟*/typedef unsigned long DWORD;typedef unsigned char uint8;void Timer0Handler (void) _irq /中断处理函数

3、static uint8 m; static uint8 n; if(n=0) n=1; else n=0; if(n=1)IOCLR1=LEDCON1; /控制LED熄灭 else IOSET1=LEDCON1; /控制LED点亮 if(m=0) m=1; else m=0; if(m=1)IOSET1=LEDCON0; /控制LED点亮 else IOCLR1=LEDCON0; /控制LED熄灭 T0IR = 1; /* clear interrupt flag */ VICVectAddr = 0;/* Acknowledge Interrupt */void init_timer0 (

4、 DWORD TimerInterval ) /定时器0初始化 T0MR0 = TimerInterval - 1; T0MCR = 0X03;/产生中断,并且复位TCT0PR=0;/不分频T0TC=0;void init_VIC(void)/中断初始化/*/VICIntSelect = 0; /中断选择VICVectPriority4 =4; /中断优先级,VICVectAddr4=(DWORD)Timer0Handler; /中断地址赋值中断处理函数 VICIntEnable = 1 4; /使能中断,定时器0为4号中断源 int main (void)IODIR1=(LEDCON0|LEDCON1); /设置LED控制口为输出init_timer0(Fpclk);/定时器初始化,1s中断init_VIC();T0TCR = 1;/开启定时器0while(1);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号