懒猫爱飞

AVR学习日志(二十五)-- INT0中断控制LED

0
阅读(3611)

附件.rar

再来一个中断的,懒猫虽然比较懒,但懒猫爱玩,既然中断玩着蛮不错的,那懒猫就多玩玩吧……

       /******************************************************************
// 文件名称:Int_led
//功    能:中断控制LED灯
//作    者:懒猫爱飞
//日    期:2010.05.26
*******************************************************************/

#include <iom8515v.h>
#include <macros.h>

#define uchar unsigned char
#define uint  unsigned int

//宏定义左移,右移函数crol为左移,cror为右移
#define crol(a,n) a=(a<<n)|(a>>(8-n))
#define cror(a,n) a=(a>>n)|(a<<(8-n))

/****************************************************************
// 函数名称:port_init(void)
//功    能:端口初始化
//入口参数:无
//出口参数:无
*****************************************************************/
void port_init(void)
{
 DDRA  = 0x00;  //A口,不用的端口设置为高阻状态
 PORTA = 0x00;
 
 DDRB  = 0xff;  //B口,PB0控制Led灯
 PORTB = 0x01;
 
 DDRC  = 0x00;  //C口
 PORTC = 0x00;

 DDRD  = 0x00;  //D口
 PORTD = 0xff;

}

/****************************************************************
// 函数名称:init_devices(void)
//功    能:初始化器件
//入口参数:无
//出口参数:无
*****************************************************************/
void init_devices(void)
{
 //stop errant interrupts until set up
 CLI();       //disable all interrupts
 port_init();

 MCUCR = 0x00; //低电平触发
 EMCUCR = 0x00;
 GICR = 0x40; //外部中断0
 
 SEI();       //re-enable interrupts
}

/****************************************************************
// 函数名称:int0_isr(void)
//功    能:中断处理函数
//入口参数:无
//出口参数:无
*****************************************************************/
#pragma interrupt_handler int0_isr:iv_INT0
void int0_isr(void)
{
   PORTB^=BIT(0);
}

/****************************************************************
// 函数名称:void main(void)
//功    能:主函数
//入口参数:无
//出口参数:无
*****************************************************************/
void main(void)
{
 init_devices();
 while(1); //这里什么函数也不写,只等待中断触发
}

呵呵,好了,今天就弄到这吧,懒猫已交了不少作业了,改天再继续吧,明天还要给老板卖命,因为懒猫主要负责硬件电路的设计和PCB的绘制,所以代码写的比较少,但懒猫爱写程序,感觉这写程序是一种乐趣,也许懒猫没有那些牛人的天赋,不过懒猫只是享受这种调出程序时的那种快感,懒猫只是比较懒,但懒猫会坚持下去,继续懒猫的学习之路,懒猫小候常听妈妈说坚持就是胜利,懒猫从小没有别人聪明,但懒猫从没有忘记妈妈的话--坚持就是胜利,愿你好能坚持下去!

如果你也是单片机爱好者,如果你也是电子爱好者,如果有缘你也在学习中,懒猫很高兴能和你相互学习,懒猫有点懒,也有点笨,但懒猫一直心中怀着那个梦想,一直梦想自己能展翅高飞,也许这只能是一个梦,也许某天懒猫真的能高飞!……

懒猫不会停下前进的脚步,懒猫一直会向着那个梦想走下去……

好了,不费话了,改天再交作业^_^