#include <interrupt.h>
void HANDLER(void)
{
static volatile unsigned int uiIsr;
volatile unsigned int uiCnt;
// 인터럽트 핀 정보 저장
if() /* 인터럽트 핀 검색 */
{
}
for(uiCnt = 0 ; 1000000 > uiCnt ; ++uiCnt); /* 지연 */
}
void AIC_Init(void)
{
/* P.248 */
*AT91C_PMC_PCER = ( 1 << AT91C_ID_PIOA ); /* 15번 pin , PIOA 전원 공급 */
*AT91C_PIOA_PER = ( 1 << int_Pin ); /* 핀 활성화 */
*AT91C_PIOA_ODR = ( 1 << int_Pin ); /* 핀 출력 비활성화 */
*AT91C_PIOA_IDR = ( 1 << int_Pin ); /* 인터럽트 핀 출력 비활성화 */
*AT91C_PIOA_IFER = ( 1 << int_Pin ); /* PIOA 입력 필터 활성화 */
*AT91C_AIC_IDCR = ( 1<< AT91C_ID_PIOA ); /* 인터럽트 핀 컴맨드 비활성화 */
*AT91C_AIC_ICCR = ( 1<< AT91C_ID_PIOA ); /* 컴맨드 레지스터 클리어 */
*AT91C_AIC_ISCR = ( 1<< AT91C_ID_PIOA ); /* 컴맨드 레지스터 셋 */
AT91C_AIC_SVR[AT91C_ID_PIOA] = (unsigned int) HANDLER(); /* 핸들러 등록 */
return;
}
#ifndef _INTERRUPT_H_
#define _INTERRUPT_H_
#define int_Pin 15
void HANDLER(void);
void AIC_Init(void);
#endif
#ifndef _PROJECT_H
#define _PROJECT_H
#include "AT91SAM7S256.h"
// 2008.09.10.
#ifndef __ASSEMBLY__
#include "lcd.h"
#include "interrup.h"
void default_fiq_handler();
void default_irq_handler();
void default_spurious_handler();
#endif
// 2008.09.10.
#endif // _PROJECT_H
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20150814 11번 남수진 - ARM(DBGU 수신 인터럽트 사용) (6) | 2015.08.14 |
---|---|
2015-08-13 9번 김태현 업무일지 해커스쿨 level1, VMware 셋팅 (4) | 2015.08.14 |
ARM 인터럽트소스 (1) | 2015.07.31 |
20150730-7번-김재홍-IPC(내부 프로세스 간 통신 설비)통신 (4) | 2015.07.31 |
20150728-3번-권오민 - 멀티 프로세스 프로그래밍 (17) | 2015.07.28 |
20150727-출석번호 5번 - 김성주 - 업무일지 (5) | 2015.07.27 |
2015-07-21 32번 천정호 AT91ARM7S256 Chip 분석 및 ARM을 이용한 LED 제어 (7) | 2015.07.22 |
20150720-31번-차윤도-ARM bootcode분석,Datasheet 중간프로젝트 (7) | 2015.07.20 |