微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > IAR STM8工程中断的使用

IAR STM8工程中断的使用

时间:11-23 来源:互联网 点击:
IAR的工程建立比较简单,直接先建立工作区然后保存,不保存无法调试。把官方的INC放到工程目录下,在C/C++编辑连接包含这个文件的绝对路径(最简单的搞法)。把c文件添加进去就可以了,它的中断很简单你只要写一个如下的.c文件就能用了:
#pragma vector=1
__interrupt void TRAP_IRQHandler(void)
{

}
#pragma vector=2
__interrupt void TLI_IRQHandler(void)
{

}
#pragma vector=3
__interrupt void AWU_IRQHandler(void)
{

}
#pragma vector=4
__interrupt void CLK_IRQHandler(void)
{


}
#pragma vector=5
__interrupt void EXTI_PORTA_IRQHandler(void)
{

}
#pragma vector=6
__interrupt void EXTI_PORTB_IRQHandler(void)
{

}
#pragma vector=7
__interrupt void EXTI_PORTC_IRQHandler(void)
{

}
#pragma vector=8
__interrupt void EXTI_PORTD_IRQHandler(void)
{

}
#pragma vector=9
__interrupt void EXTI_PORTE_IRQHandler(void)
{

}
#ifdef STM8S903
#pragma vector=0xA
__interrupt void EXTI_PORTF_IRQHandler(void)
{

}
#endif
#ifdef STM8S208
#pragma vector=0xA
__interrupt void CAN_RX_IRQHandler(void)
{

}
#pragma vector=0xB
__interrupt void CAN_TX_IRQHandler(void)
{

}
#endif
#pragma vector=0xC
__interrupt void SPI_IRQHandler(void)
{

}
#pragma vector=0xD
__interrupt void TIM1_UPD_OVF_TRG_BRK_IRQHandler(void)
{

CleT1UPF;
PDODR->bit3=(~PDODR->bit3);
}
#pragma vector=0xE
__interrupt void TIM1_CAP_COM_IRQHandler(void)
{

}
#ifdef STM8S903
#pragma vector=0xF
__interrupt void TIM5_UPD_OVF_BRK_TRG_IRQHandler(void)
{

}
#pragma vector=0x10
__interrupt void TIM5_CAP_COM_IRQHandler(void)
{

}
#else
#pragma vector=0xF
__interrupt void TIM2_UPD_OVF_BRK_IRQHandler(void)
{

}
#pragma vector=0x10
__interrupt void TIM2_CAP_COM_IRQHandler(void)
{

}
#endif
#if defined (STM8S208) || defined(STM8S207) || defined(STM8S105)
#pragma vector=0x11
__interrupt void TIM3_UPD_OVF_BRK_IRQHandler(void)
{

}
#pragma vector=0x12
__interrupt void TIM3_CAP_COM_IRQHandler(void)
{

}
#endif
#ifndef STM8S105
#pragma vector=0x13
__interrupt void UART1_TX_IRQHandler(void)
{

}
#pragma vector=0x14
__interrupt void UART1_RX_IRQHandler(void)
{

}
#endif
#pragma vector=0x15
__interrupt void I2C_IRQHandler(void)
{

}
#ifdef STM8S105
#pragma vector=0x16
__interrupt void UART2_TX_IRQHandler(void)
{

}
#pragma vector=0x17
__interrupt void UART2_RX_IRQHandler(void)
{

}
#endif
#if defined(STM8S207) || defined(STM8S208)
#pragma vector=0x16
__interrupt void UART3_TX_IRQHandler(void)
{

}
#pragma vector=0x17
__interrupt void UART3_RX_IRQHandler(void)
{

}
#endif
#if defined(STM8S207) || defined(STM8S208)
#pragma vector=0x18
__interrupt void ADC2_IRQHandler(void)
{

}
#else
#pragma vector=0x18
__interrupt void ADC1_IRQHandler(void)
{

}
#endif
#ifdef STM8S903
#pragma vector=0x19
__interrupt void TIM6_UPD_OVF_TRG_IRQHandler(void)
{

}
#else
#pragma vector=0x19
__interrupt void TIM4_UPD_OVF_IRQHandler(void)
{

}
#endif
#pragma vector=0x1A
__interrupt void EEPROM_EEC_IRQHandler(void)
{

}
这里面的函数和51一样你可以放到任何文件

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top