谁能给我发一个中颖单片机中断例程

[复制链接]
2567|7
 楼主| zhanglli 发表于 2011-1-20 19:20 | 显示全部楼层 |阅读模式
谁能给我发一个中颖单片机中断例程
lium 发表于 2011-1-20 19:31 | 显示全部楼层
4位的还是8位的?
guoyt 发表于 2011-1-20 19:51 | 显示全部楼层
哪一颗?哪个中断?
lium 发表于 2011-1-20 19:52 | 显示全部楼层
对啊,楼主详细说说
guoyt 发表于 2011-1-20 20:11 | 显示全部楼层
datasheet是王道啊
hanwe 发表于 2011-1-20 20:13 | 显示全部楼层
;***外部中断程序***
INT0:
;***进入中断***
STA  ACC_INT0,(ACC_INT0>>7)&07H  ;暂存ACC
CLRB0  IRQ,G0     ;清中断请求
;***中断返回***
LDX  IE,0011B,G0    ;开中断
LDA  ACC_INT0,(ACC_INT0>>7)&07H  ;恢复ACC
RTNI
;***定时中断0程序***
TIMER0:
;***进入中断***
STA  ACC_TMR0,(ACC_TMR0>>7)&07H  ;暂存ACC
CLRB2  IRQ,F0     ;清中断请求
;***中断返回***
LDX  IE,0011B,F0    ;开中断
LDA  ACC_TMR0,(ACC_TMR0>>7)&07H  ;恢复ACC
RTNI
;***AD中断程序***
ADCINT:
;***进入中断***
STA  ACC_ADC,(ACC_ADC>>7)&07H  ;暂存ACC
CLRB3  IRQ,C0     ;清中断请求
;***中断返回***
LDX  IE,0011B,C0    ;开中断
LDA  ACC_ADC,(ACC_ADC>>7)&07H  ;恢复ACC
RTNI
llia 发表于 2011-1-20 20:26 | 显示全部楼层
C版本的如下:
/*******************************************************************************************
** 函数名称: INT0_ISP
** 函数描述: 外部中断0中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        INT0_ISP(void) interrupt 0
{
   EA        =        0;
   IE0        =        0;
   //在此加入您要处理的代码
   EA        =        1;
}

/*******************************************************************************************
** 函数名称: Timer0_ISP
** 函数描述: TIMER0中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        Timer0_ISP(void) interrupt 1
{
          EA=0;
          TF0=0;
   //在此加入您要处理的代码
    EA=1;
}

/*******************************************************************************************
** 函数名称: INT1_ISP
** 函数描述: 外部中断1中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        INT1_ISP(void) interrupt 2
{
   EA=0;
   IE1=0;
   //在此加入您要处理的代码
          EA=1;
}

/*******************************************************************************************
** 函数名称: Timer1_ISP
** 函数描述: TIMER1中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        Timer1_ISP(void) interrupt 3
{         
   EA=0;
   TF1=0;
   //在此加入您要处理的代码
   EA=1;
}
/*******************************************************************************************
** 函数名称: ADC_ISP
** 函数描述: ADC中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        ADC_ISP(void) interrupt 6
{         
   EA=0;
   CLR_ADCIF;
   //在此加入您要处理的代码
   EA=1;
}
/*******************************************************************************************
** 函数名称: Comparator_ISP
** 函数描述: Comparator中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        Comparator_ISP(void) interrupt 8
{         
   EA=0;
   CLR_CMPIF;
   //在此加入您要处理的代码
   EA=1;
}
/*******************************************************************************************
** 函数名称: EEPROM_ISP
** 函数描述: EEPROM中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        EEPROM_ISP(void) interrupt 9
{         
   EA=0;
   EEIF=0;
   //在此加入您要处理的代码
   EA=1;
}
/*******************************************************************************************
** 函数名称: SCM_ISP
** 函数描述: SCM中断服务程序
** 输入参数: 无
** 输出参数: 无
*******************************************************************************************/
void        SCM_ISP(void) interrupt 11
{         
   EA=0;
   CLR_SCMIF;
   //在此加入您要处理的代码
   EA=1;
}

  
  
   
返回列表
 楼主| zhanglli 发表于 2011-1-20 20:34 | 显示全部楼层
太感谢楼上两位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1016

主题

9386

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部