📄 interrupt.c
字号:
/**
******************************************************************************
* @file st79_it.c
* @brief This file contains all the interrupt routines.
* @author STMicroelectronics - MCD Application Team
******************************************************************************
* <h3>History:</h3>
* <table border=2>
* <tr><td>Date</td> <td>Changes</td></tr>
* <tr><td>23-APR-2007</td> <td>First version</td></tr>
* </table>
******************************************************************************
*
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
* FROM THE CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*
* <h2><center>© COPYRIGHT 2007 STMicroelectronics</center></h2>
* <center><a href="http://mcu.st.com/mcu/">Microcontrollers Division</a></center>
* @image html logo.bmp
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "public.h"
unsigned char T10ms;
unsigned char T100ms;
unsigned char T1s;
/*void test()
{
unsigned char i;
for(i=24;i>0;i--);
}*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
/* Public functions ----------------------------------------------------------*/
/** @addtogroup IT_Public_Functions
* @{
*/
/**
* @brief Dummy interrupt routine
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void NonHandledInterrupt(void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief TRAP interrupt routine
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TRAP_IRQHandler(void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Top Level Interrupt Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TLI_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Auto Wake Up Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void AWU_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Clock Controller Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void CLK_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief External Interrupt PORTA Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EXTI_PORTA_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
//Pin_TEST=1;
#ifndef SINO_MOS
RDSInt();
#endif
InfraRed();
//SCI_SendString("Here for interupt of IR");
//Pin_TEST=0;
return;
}
/**
* @brief External Interrupt PORTB Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EXTI_PORTB_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
#ifdef SINO_MOS
RDSInt();
#endif
return;
}
/**
* @brief External Interrupt PORTC Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EXTI_PORTC_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief External Interrupt PORTD Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EXTI_PORTD_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
is_touched();
return;
}
/**
* @brief External Interrupt PORTE Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EXTI_PORTE_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief CAN RX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void CAN_RX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief CAN TX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void CAN_TX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief SPI Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void SPI_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer1 Update/Overflow/Trigger/Break Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM1_UPD_OVF_TRG_BRK_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer1 Capture/Compare Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM1_CAP_COM_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer2 Update/Overflow/Break Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM2_UPD_OVF_BRK_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer2 Capture/Compare Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM2_CAP_COM_IRQHandler (void)
{
volatile UCharInt temp;
if(TIM2_SR1_CC1IF)
{
TIM2_SR1_CC1IF=0;
temp.byte[0]=TIM2_CCR1H;
temp.byte[1]=TIM2_CCR1L;
// 2ms
temp.Dbyte+=2000;
TIM2_CCR1H=temp.byte[0];
TIM2_CCR1L=temp.byte[1];
#ifndef SINO_MOS
Pin_TEST=~Pin_TEST;
#endif
// 2ms below
//INTEncoder();
// 10ms below
if(T10ms>0)
{
T10ms--;
return;
}
else
{
T10ms=4;
}
//test();
PowerTimer10ms();
// KeyTimer10ms(); erase it by jzq and time is:2009-1-1
AudioTimerINT10ms();
RDSDataTimer10ms();
Radio10msTimer();
DSATimer10ms();
TouchPanelTimer10ms();
//AccordoTimer10ms();
//CD10msTimer();
// 100ms below
if(T100ms>0)
{
T100ms--;
return;
}
else
{
T100ms=9;
}
AudioTimerINT100ms();
RDSTimer100ms();
RDSDataTimer100ms();
Radio100msTimer();
//DisplayTimer100ms();
ACCTimer100ms();
AmpTimer100ms();
//AccordoTimer100ms();
//GPSTimer100ms();
TFTMotorDriverTimer100ms();
ClockRun();
// 1s below
if(T1s>0)
{
T1s--;
return;
}
else
{
T1s=9;
}
RDSDataTimer1s();
PowerTimer1s();
//CD1sTimer();
#ifdef SINO_MOS
// Temp_Show_Time();
#endif
}
else if(TIM2_SR1_CC2IF)
{
TIM2_SR1_CC2IF=0;
temp.byte[0]=TIM2_CCR2H;
temp.byte[1]=TIM2_CCR2L;
// 600us
temp.Dbyte+=600;
TIM2_CCR2H=temp.byte[0];
TIM2_CCR2L=temp.byte[1];
//Pin_TEST=~Pin_TEST;
IrTimer();
}
return;
}
/**
* @brief Timer3 Update/Overflow/Break Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM3_UPD_OVF_BRK_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer3 Capture/Compare Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM3_CAP_COM_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief USART TX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void USART_TX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
UARTTxInt();
return;
}
/**
* @brief USART RX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void USART_RX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
UARTRxInt();
return;
}
/**
* @brief I2C Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void I2C_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief LINUART TX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void LINUART_TX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
LINUartTx();
return;
}
/**
* @brief LINUART RX Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void LINUART_RX_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
LINUartRx();
return;
}
/**
* @brief ADC Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void ADC_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @brief Timer4 Update/Overflow Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void TIM4_UPD_OVF_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
if(TIM4_SR)
{
TIM4_SR=0;
}
return;
}
/**
* @brief Eeprom EEC Interruption routine.
* @par Parameters:
* None
* @retval void None
* @par Required preconditions:
* None
* @par Called functions:
* None
*/
@interrupt void EEPROM_EEC_IRQHandler (void)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
return;
}
/**
* @}
*/
/******************* (C) COPYRIGHT 2007 STMicroelectronics *****END OF FILE****/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -