embeded/AVR (ATmega,ATtiny)2013. 12. 30. 23:47
메모리나 플래시 용량이 크지 않은 micom 특성상 용량을 줄이기 위해서 발악을 해야하는데
사소한 팁이라고 해야하려나... 

inline void init_timer(void)
{
TCCR0 = 0x04;     // Prescaler 설정
TCNT0 = OVERFLOW - (F_CPU / TICKS_PER_SEC / Prescaler);// 오버플로우에 사용될 초기값
TIMSK = 0x01;     // 오버플로우 인터럽트 허용
}

int main(void)
{
int idx = 0;
int val = 1500;

DDRB = 0xFF;
PORTB = 0x00;

init_timer();
while(1)
{
;
}

return 0;
}

inline 사용시
AVR Memory Usage
----------------
Device: atmega8

Program:     146 bytes (1.8% Full)
(.text + .data + .bootloader)

Data:          2 bytes (0.2% Full)
(.data + .bss + .noinit)
 

inline 사용시
AVR Memory Usage
----------------
Device: atmega8

Program:     160 bytes (2.0% Full)
(.text + .data + .bootloader)

Data:          2 bytes (0.2% Full)
(.data + .bss + .noinit)

정말 사소한 용량 차이이지만 하나하나 쌓이면 은근 커지기에..
나중에 switch 테스트 예정 
Posted by 구차니