打印

LPC2148 定时器定时1s 流水灯

[复制链接]
3382|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hanyue0612|  楼主 | 2010-11-22 19:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
LPC2148芯片,用定时器0定时1S(中断方式)实现流水灯变化
但是一直得不到想要的结果,运行的结果LED全亮;程序如下,大家帮忙看一下哪出问题了
#include<LPC214x.h>
#define uint32 unsigned int
#define uchar8 unsigned char
void tc0_isr (void) __irq
{
/* 流水灯*/
uchar8 i;
i=0x01;
while(1)
{
  IO1PIN=((IO1PIN&0XFF00FFFF)+~i*0x10000);
  i<<=1;
  if(!i)
   i=0x01;
}
T0IR=1;             //清除中断标志
VICVectAddr=0x00;          //通知VIC中断处理结束
}
int main()
{
IO1DIR=IO1DIR|0x00FF0000;
IO1PIN=IO1PIN|0x00FF0000;
/* 定时器0定时1s */
T0PR=11999;                                    //时钟不分频
T0MCR=0X03;                                       //设置TOMRO匹配后复位TOTC,并产生中断标志
T0MR0=1001;                                             //定时1s
T0TCR=0X01;                                       //启动定时器

/* 设置定时器0中断IRQ */
VICIntSelect=0x00;                                      //所有中断通道设置为IRQ中断
VICVectCntl0=0x20|0x04;         //设置定时器0中断通道分配最高优先级
VICVectAddr0=(uint32)tc0_isr;          //设置中断服务程序地址
VICIntEnable=1<<0x04;         //使能定时器0中断
while(1);
}

相关帖子

沙发
hanyue0612|  楼主 | 2010-11-22 19:26 | 只看该作者
而且有一个错误:
main.c(17): warning:  #111-D: statement is unreachable

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

9

帖子

1

粉丝