본문 바로가기
코스웨어/10년 스마트폰BSP

[BSP]업무일지-김동훈-20100617

by 알 수 없는 사용자 2010. 6. 18.
728x90
반응형
접근 권한 public: protected: private:
클래스 내부의 멤버 함수에서는 접근 권한에 상관 없이 모든 멤버에 접근.
스위치 입력시 FND 숫자 증가 / 감소 토글
#include"d:\kdh\port.h" #define DELAY() delay_ms(5) void delay_us(unsigned char time_us); void delay_ms(unsigned int time_ms); int main() { DDRC = 0x00; DDRD = 0xFF; PORTD = 0xFF; int i=0; int flag=1; while(1) { if(PINC != 0xFF) //스위치 입력시 { if(flag) { flag = 0; //플래그 비트 토글 } // 1 : 증가 else // 0 : 감소 { flag = 1; } while(PINC != 0xFF); //스위치 리플 제거 } PORTD = ((i/10) << 4) + (i % 10); //FND 숫자 출력 DELAY(); i = flag ? (i+1) : (i-1); //플래그에 따른 가감 if(i > 100) i -= 100; //0~99 범위 제한? if(i < 0) i += 100; } return 0; }
타이머/카운터0 비교 매치 레지스터 1초 설정
소스인사이트 시작하기
따라하기 1 - makefile 만들기
따라하기 2 - Source Insight 시작하기
따라하기 3 - 헤더 파일 추가하기
따라하기 4 - SIGNAL(SIG_OVERFLOW0) 매크로 살펴보기
현재 코드
SIGNAL(OVERFLOW0)
{
...사용자 입력 코드
}
1차 전처리 후
void OVERFLOW0 (void) __attribute__((signal, __INTR_ATTRS));
void OVERFLOW0
{
...사용자 입력 코드
}
2차 전처리 후
void OVERFLOW0 (void) __attribute__((signal, used, externally_visible));
void OVERFLOW0
{
...사용자 입력 코드
}
3차 전처리 후
void _VECTOR(16) (void) __attribute__((signal, used, externally_visible));
void _VECTOR(16)
{
...사용자 입력 코드
}
4차 전처리 후
void __vector_16 (void) __attribute__((signal, used, externally_visible));
void __vector_16
{
...사용자 입력 코드
}

SIGNAL(OVERFLOW0) 매크로 원형
SIGNAL(OVERFLOW0)
{
}

전처리 후 최종 코드
void __vector_16 (void) __attribute__((signal, used, externally_visible));
void __vector_16
{
}
728x90