📄 main.c
字号:
/* * Simple demonstration of using the Stripe Interrupt Controller.* This version sets the interrupt mode to a 5-bit priority scheme.** Author: ORC** Copyright (c) Altera Corporation 2001.* All rights reserved.*/#include <stdio.h>#include "timer.h"#include "stripe.h"#include "int_ctrl00.h"#include "irq.h"void detect_mode(void);int buffer[LIMIT], count;int main(void){ int i; // Initialize the stripe timer which is used as a stopwatch init_timer(); // Detect interrupt mode set by irq_init function detect_mode(); // Enable PLD interrupts enable_pld_int(); // Delay for 1 second to sample interrupts from the PLD delay(1); // Disable PLD interrupts disable_pld_int(); // Display interrupts that occurred in the PLD for (i = 0; i < count; i++) { // Don't display interrupts that occurred previously if ( buffer[i] != buffer[i-1] ) { switch(buffer[i]) { case PLDINT0_FIQ_PRI: printf("INT_PLD[0]\r\n"); break; case INT1_IRQ_PRI: printf("INT1\r\n"); break; case INT2_IRQ_PRI: printf("INT2\r\n"); break; case INT3_IRQ_PRI: printf("INT3\r\n"); break; case INT4_IRQ_PRI: printf("INT4\r\n"); break; case INT5_IRQ_PRI: printf("INT5\r\n"); break; case INT6_IRQ_PRI: printf("INT6\r\n"); break; case INT7_IRQ_PRI: printf("INT7\r\n"); break; case INT8_IRQ_PRI: printf("INT8\r\n"); break; case INT9_IRQ_PRI: printf("INT9\r\n"); break; default: printf("unknown interrupt\r\n"); break; } // switch } // if } // for while(1); }// Detect interrupt modevoid detect_mode(void){ volatile unsigned int int_mode; // Read the Interrupt Mode register int_mode = *INT_MODE(EXC_INT_CTRL00_BASE) & INT_MODE_MODE_MSK; // Print interrupt mode detected switch(int_mode) { case INT_MODE_SIX_IND: printf("\r\n*** 6 Individual Interrupt Mode ***\r\n"); break; case INT_MODE_SIX_PRI: printf("\r\n*** 6-bit Priority Interrupt Mode ***\r\n"); break; case INT_MODE_FIVE_PRI: printf("\r\n*** 5-bit Priority Interrupt Mode ***\r\n"); break; default: printf("\r\nUnknown Interrupt Mode\r\n"); break; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -