#include "LED.h"
#include "AT91SAM7S256.h"
#define PICNT 20
void ISR_System(void);
void PIT_INIT(void);
volatile unsigned int uiCnt;
int main(void)
{
LED_INIT();
PIT_INIT();
while (1);
return 0;
}
void PIT_INIT(void)
{
AT91C_AIC_SVR[AT91C_ID_SYS] = ((volatile unsigned int)ISR_System); // 함수 등록
*AT91C_AIC_IECR = (1 << AT91C_ID_SYS); // Interrupt Enable
*AT91C_PITC_PIMR = AT91C_PITC_PITEN|AT91C_PITC_PITIEN|0xF4240;
// PIMR -> PITEN, PITIEN, 활성화, 0xF4240 마다 IRQ 발생 //
}
void ISR_System(void) // PIT 말고도 다른 sys 쪽도 발생할수 있다
{ // Interrupt Service Routine
if( *AT91C_PITC_PISR != 0 )
{
if( (*AT91C_PITC_PIVR >> PICNT) == 1) // PICNT 는 Set, Clear 를 반복, Set 이 될 때 마다 0.3 초 마다 uiCnt 상승
{
++uiCnt;
}
if( uiCnt%3 == 0)
{
LED_Toggle();
}
}
}
main.c
'코스웨어 > 14년 스마트컨트롤러' 카테고리의 다른 글
ADS LED ON/OFF(PIT) 김화린 (0) | 2014.10.31 |
---|---|
ADS LED ON/OFF(PIT) 문대영 (0) | 2014.10.31 |
ARM PIT 이용한 LED - 허수웅 (0) | 2014.10.31 |
ADS LED ON/OFF (0) | 2014.10.31 |
2014.10.29 ARM Source 구조체 -> 포인터 변경 소스코딩 - 오두환 (0) | 2014.10.30 |
2014.10.29 업무보고 18번 오영주 (5) | 2014.10.30 |
ARM main source - 허수웅 (0) | 2014.10.29 |
[서상우]arm main (0) | 2014.10.29 |