○ ATmega128의 기본적인 설정용으로 사용되며 Extended Fuse, Fuse High, Fuse Low바이트로 모두 3개의바이트로 구성되어 있다.
※ 주의 할점은 기본 비트값이 1로 되어 있고 프로그램하면 0으로 설정되고 chip erase명령에 의해 영향을 받지 않으므로 메모리 Lock비트의 LB1을 0으로 하여 퓨즈 비트를 변경할 수 없도록 할 수 있다.
퓨즈 비트를 먼저 설정하고 메모리 Lock비트를 설정해야 한다.
Extended Fuse Byte
○ ATmega103 compatibility 설정
- BIT1(M103C) : 기본 0으로 설정되어 ATmega13과 호환모드로 되어 있다. 1로 프로그램하면 노말모드로 ATmega128의 고유기능을 전부 활용할 수 있다.
○ WDTON( Watchdog Timer) 설정
- BIT0(WDTON: WatchDog Timer ON) : 기본 1로 설정되어 워치독 타이머 기능이 동작하도록 한다.
Normal Mode는 ATmega128의 기능을 모두 사용하는 모드로 4096Bytes의 내부SRAM을 모두 사용할 수 있다.
ATmega103호환모드에선 기능을 모두 사용할 수 없고 내부SRAM도 4000Bytes로 모두 사용하지 못 한다.
Fuse High Byte (CKOPT, JTAGEN 등)
○ OCDEN, JTAGEN, SPIEN 설정
- BIT7 : 기본 1로 설정되어 있으며 On chip debug를 허용한다.
- BIT6 : 기본 0로 설정되어 JTAG를 허용한다.
- BIT5: 기본 0로 설정되어 SPI를 통한 직렬 프로그래밍을 허용한다.
○ CKOPT 설정
- BIT4 : 기본1로 설정되어 클럭 옵션을 설정한다
○ EESAVE 설정
- BIT3 : 기본 1로 설정되어 Chip Erase할 때 EEPROM의 내용을 보호한다.
○ BOOT Size 설정
- BIT2~1: 부트 사이즈를 선택하는 데 사용한다
- BIT0: Reset vector의 선택에 사용한다.
기본 1로 설정되어 0x0000번지를 리셋 주소로 하고, 0이면 BIT2~1의 설정을 적용한다.
Fuse Low Byte 설정( SUT, CKSEL 등)
○ BODEN 설정
- BIT7: 기본 1로 설정되어 Brown Out Detector의 기능을 레벨값에 따라 트리거되도록 설정한다.
- BIT6: 기본 1로 설정되어 Brown Out Detector의 기능을 허용한다.
○ SUT1/0 설정
- BIT5~4: Start up 시간을 설정한다. 기본 상태로는 10의 값을 갖는다.
예를 들어 SUT1/0 비트를 "00"으로 설정할 경우 부팅 타임이 4.1ms 걸린다.
○ CKSEL 설정
- BIT3~0(CKSEL3~0) : 클럭 소스를 설정한다. 기본 0001의 값을 갖고 있어 디폴트
상태로는 1MHz의 내부 RC발진기를 통한 클록을 사용하도록 설정되어 있다.
① External Crystal or Ceramic Resonator ( External Crystal or Ceramic Resonator)
② Low-Frequency Crystal Oscillator
③ External RC Oscillator
④ 내부 RC 오실레이터 (Calibrated Internal RC Oscillator)
- Fuse 비트에서 CKOPT는 반드시 ‘1’로 설정
- XTAL1과 XTAL2 핀에는 아무것도 연결하지 않음
⑤ External Oscillator External Oscillator
⑥ 타이머/카운터 오실레이터
- TOSC1과 TOSC2 핀에 32.768kHz 의 크리스털을 직접 연결
- 외부에 커패시터는 연결하지 않음
기본 설정은 CKOPT와 CKSEL 설정이 중요하다.
CKSEL은 연결된 크리스탈 클럭에 맞게 설정하자.
퓨즈비트 설정이 어렵다거나 퓨즈비트 설정을 어떻게 할지 모르겠다면
퓨즈비트 계산기를 이용해 보는것도 좋아요.
'공학속으로 > 마이컴' 카테고리의 다른 글
코드비젼 AVR (Codevision AVR) 자료형 (0) | 2021.10.03 |
---|---|
포트 제어 (LED 켜기/끄기) 방법 (0) | 2020.03.12 |
PIC18F4520 EEPROM (0) | 2020.03.04 |
PIC18F4520 Timer. (0) | 2020.03.04 |
8051 모든 인터럽트 (0) | 2020.03.04 |
댓글