本文整理汇总了C++中ISR_EXIT函数的典型用法代码示例。如果您正苦于以下问题:C++ ISR_EXIT函数的具体用法?C++ ISR_EXIT怎么用?C++ ISR_EXIT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ISR_EXIT函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PWM_ISR
void PWM_ISR ( void ) {
ISR_ENTRY();
// LED_TOGGLE(2);
if (servos_idx == 0) {
IO1CLR = _BV(SERV1_RESET_PIN);
IO1SET = _BV(SERV1_DATA_PIN);
PWMMR0 = servos_values[servos_idx];
servos_delay = SERVO_REFRESH_TICS - servos_values[servos_idx];
PWMLER = PWMLER_LATCH0;
servos_idx++;
}
else if (servos_idx < _4015_NB_CHANNELS) {
IO1CLR = _BV(SERV1_DATA_PIN);
PWMMR0 = servos_values[servos_idx];
servos_delay -= servos_values[servos_idx];
PWMLER = PWMLER_LATCH0;
servos_idx++;
}
else {
IO1SET = _BV(SERV1_RESET_PIN);
PWMMR0 = servos_delay;
PWMLER = PWMLER_LATCH0;
servos_idx = 0;
}
/* clear the interrupt */
PWMIR = PWMIR_MRI_SERV1;
VICVectAddr = 0x00000000;
ISR_EXIT();
}
示例2: SSP_ISR
static void SSP_ISR(void) {
ISR_ENTRY();
MmOnSpiIt();
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例3: __attribute__
__attribute__ ((naked)) void TIMER_0_ISR_0(void)
{
ISR_ENTER();
DEBUG("\nenter ISR\n");
irq_handler(TIMER_0, TIMER_0_DEV_0, TIMER_0_DEV_1);
DEBUG("leave ISR\n\n");
ISR_EXIT();
}
示例4: USBIntHandler
/**
Interrupt handler
Simply calls the USB ISR, then signals end of interrupt to VIC
*/
void USBIntHandler(void)
{
ISR_ENTRY();
USBHwISR();
VICVectAddr = 0x00; // dummy write to VIC to signal end of ISR
ISR_EXIT();
}
示例5: ws2812_int
static void NACKEDFUNC ATTR
ws2812_int (void) /* SSC Interrupt Handler */
{
ISR_ENTRY();
ws2812_int_safe();
*AT91C_AIC_EOICR = 0; /* End of Interrupt */
ISR_EXIT();
}
示例6: EXTINT_ISR
void EXTINT_ISR(void) {
ISR_ENTRY();
/* no, we won't do anything asynchronously, so just notify */
ms2001_status = MS2001_GOT_EOC;
/* clear EINT */
EXTINT = (1<<MS2001_DRDY_EINT);
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例7: uart1_ISR
void uart1_ISR(void) {
// perform proper ISR entry so thumb-interwork works properly
ISR_ENTRY();
uart_ISR(&uart1);
VICVectAddr = 0x00000000; // clear this interrupt from the VIC
ISR_EXIT(); // recover registers and return
}
示例8: EXTINT_ISR
void EXTINT_ISR(void)
{
ISR_ENTRY();
baro_scp_read();
SetBit(EXTINT, SPI1_DRDY_EINT); /* clear EINT2 */
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例9: USBIntHandler
/**
Interrupt handler
Simply calls the USB ISR, then signals end of interrupt to VIC
*/
void USBIntHandler(void)
{
// do we really need this entry/exit stuff?
ISR_ENTRY();
USBHwISR();
VICVectAddr = 0x00; // dummy write to VIC to signal end of ISR
ISR_EXIT();
}
示例10: EXTINT_ISR
/******* External interrupt: Data input available ***********/
void EXTINT_ISR(void) {
ISR_ENTRY();
max3100_data_available = true;
SetBit(EXTINT, MAX3100_IRQ_EINT); /* clear extint */
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例11: i2c1_ISR
void i2c1_ISR(void) {
ISR_ENTRY();
uint32_t state = I2C1STAT;
I2cAutomaton(state,&i2c1);
I2cClearIT(i2c1.reg_addr);
VICVectAddr = 0x00000000; // clear this interrupt from the VIC
ISR_EXIT(); // recover registers and return
}
示例12: EXTINT_ISR
void EXTINT_ISR(void) {
ISR_ENTRY();
/* scp1000 has measured new data, now it's time to read it from spi */
scp1000_read();
EXTINT |= 1 << SCP_DRDY_EINT; /* clear EINT */
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例13: USBIntHandler
/**
Interrupt handler
Simply calls the USB ISR, then signals end of interrupt to VIC
*/
void USBIntHandler(void)
{
ISR_ENTRY();
//DBG("Z");
USBHwISR();
//DBG("z");
VICVectAddr = 0x00; // dummy write to VIC to signal end of ISR
//DBG("Exit int\n");
ISR_EXIT();
}
示例14: EXTINT0_ISR
void EXTINT0_ISR(void) {
ISR_ENTRY();
//ASSERT((max1168_status == MAX1168_SENDING_REQ), DEBUG_MAX_1168, MAX1168_ERR_SPURIOUS_EOC);
max1168_status = MAX1168_GOT_EOC;
//SetBit(EXTINT, MAX1168_EOC_EINT); /* clear extint0 */
EXTINT = (1<<MAX1168_EOC_EINT);
VICVectAddr = 0x00000000; /* clear this interrupt from the VIC */
ISR_EXIT();
}
示例15: i2c1_ISR
void i2c1_ISR(void)
{
ISR_ENTRY();
uint32_t state = I2C1_STATUS_REG;
i2c1_automaton(state);
I2c1ClearIT();
VICVectAddr = 0x00000000; // clear this interrupt from the VIC
ISR_EXIT(); // recover registers and return
}