久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

atmege16外部中斷程序

作者:韓冰   來源:本站原創   點擊數:  更新時間:2013年11月29日   【字體:

/******************************************

功能:演示ATMEGA16的3個外部中斷程序

編輯環境:ICCAVR

 

******************************************/

 

#include<iom16v.h>

#include<macros.h>

 

#define uint unsigned int

#define uchar unsigned char

 

#define beep_0 (PORTD&=~(1<<PD7))

#define beep_1 (PORTD|=(1<<PD7))

//蜂鳴器響

uint count;

/*******************************************

三個外部中斷聲明,注意中斷向量號

*******************************/

#pragma interrupt_handler Exint0:2

#pragma interrupt_handler Exint1:3

#pragma interrupt_handler Exint2:19

/*************************************

系統延時函數

************************************/

void delay(uint ms)

{

  uint i,j;

    for(i=0;i<ms;i++)

           {

             for(j=0;j<1140;j++);

           }

}

/**************************************

端口初始化每個外部中斷端口是固定的

****************************************/

void port_init()

{

 DDRA=0XFF;

 PORTA=0XFF;

 DDRB&=(0<<PB2);//INT2

 PORTB|=(1<<PB2);

 DDRD&=(0<<PD2);//INT0

 PORTD|=(1<<PD2);

 DDRD&=(0<<PD3);//INT1

 PORTD|=(1<<PD3);

}

 

/***********************************

外部中斷初始化

*******************************/

void INT_init()

{

 SREG=0X80;//打開全局中斷

 GICR|=(1<<INT0)|(1<<INT1)|(1<<INT2);//三個中斷使能

 MCUCR=(1<<ISC11)|(0<<ISC10)|(1<<ISC01)|(0<<ISC00);//INT0,INT1下降沿觸發

 MCUCSR=(0<<ISC2);//INT2下降沿觸發中斷

 

}

/*****************************************

流水燈函數

****************************************/

void LED_1()

{

  uchar i;

  for(i=0;i<8;i++)

   {

    PORTA=~BIT(i);

          delay(200);

   }

}

/***********************************

LED_2函數

**********************************/

void LED_2()

{

  PORTA=0X0F;

  delay(500);

  PORTA=0XF0;

  delay(500);

}

/********************************

LED_3函數

************************************/

void LED_3()

{

  PORTA=0X81;

  delay(500);

  PORTA=0X7E;

  delay(500);

}

/************************************

外中斷0函數

**********************************/

void Exint0()

{

 LED_2();

}

/**********************************

外中斷1函數

***********************************/

void Exint1()

{

  LED_3();

}

/************************

外中斷2函數

***********************/

void Exint2()

{

 DDRD=(1<<PD7);

 for(count=0;count<4;count++)

  {

   beep_0;delay(200);

         beep_1;delay(200);

  }

}

/*********************************

主函數

*********************************/

void main()

{

 port_init();//端口初始化

 INT_init();//中斷初始化

 while(1)// 當非0值時執行下面函數

  {

    LED_1();//流水燈函數

  }

}
 

關閉窗口

相關文章

主站蜘蛛池模板: 一级特黄色毛片 | 18av在线播放 | 中文成人无字幕乱码精品 | 久久国产电影 | 国产高潮av | 日日摸日日添日日躁av | 999国产视频 | 天天躁日日躁狠狠躁2018小说 | 国产成人精品一区二区三区视频 | 久久久久国产一区二区三区不卡 | 午夜免费看视频 | 黄色三级在线播放 | 成人免费在线小视频 | 日韩午夜一区二区三区 | 激情六月天| 日韩在线不卡视频 | 成人免费视频网站在线看 | 成人毛片网站 | 在线a视频网站 | 久久性av | 亚洲日本欧美日韩高观看 | 日韩视频在线免费观看 | 成人一区二区三区 | 久久网站免费视频 | 在线播放亚洲 | 女同av亚洲女人天堂 | 中文字幕在线观看 | 欧美性生活一区二区三区 | 成年人免费看的视频 | 欧美日韩一区二区视频在线观看 | av大片在线 | 国产精品一卡二卡三卡 | 毛片在线看片 | 亚洲欧美一区二区三区在线 | 亚洲 精品 综合 精品 自拍 | 亚洲视频在线观看免费 | 国产精品视频观看 | 久国久产久精永久网页 | 成人高潮片免费视频欧美 | 国产亚洲精品久久19p | 久久高清 |