- 필요한 구성 요소
- Atmega328의 핀 다이어그램
- 구성 요소 설명
- Part-1 : 브레드 보드에 Arduino 회로 구축
- 2 부 : 부트 로더를 Atmega328 IC로 굽기
- Part-3 : Atmega 328을 업로드 한 Arduino Bootloader 프로그래밍 방법
- Arduino 보드를 사용하여 Atmega328 칩 프로그래밍
- USB to Serial 변환기를 사용하여 Arduino Atmega328 칩 프로그래밍
우리 모두는 Atmega328 IC가 Arduino UNO 보드에 사용된다는 것을 알고 있습니다. 이 IC는 Arduino 보드의 두뇌입니다. 실제로 Arduino 설계자는 초보자를위한 편리한 프로토 타이핑 보드를 만들고 싶었 기 때문에 누구나 Atmega328 IC의 모든 핀에 액세스하고 컴퓨터에 연결하기 만하면 프로그래밍 할 수 있도록 모든 구성 요소를 구성했습니다. Arduino 보드는 취미 프로젝트를 구축하는 데 매우 인기가 있습니다. 그러나 산업 또는 소비자 제품에서는 완전한 Arduino 보드를 사용하는 것이 좋지 않으므로 Arduino IDE로 프로그래밍 할 수 있지만 Arduino 보드를 사용하지 않고 독립형 Atmega328 IC를 사용할 수 있습니다.
이 튜토리얼에서는 Arduino 보드를 Atmega328 IC 및 몇 가지 다른 구성 요소로 교체하는 방법 을 살펴 봅니다. arduino 대신 Atmega328 IC를 사용하려면 먼저 Arduino Bootloader를 구운 다음 FTDI 또는 Arduino Board를 사용하여 프로그래밍합니다. 이 튜토리얼은 또한 Arduino 보드에서 손상된 Atmega328 IC를 교체하는 데 도움이됩니다. 또한 아래에 설명 된 회로를 사용하여 PCB에 복제 하여 자신 만의 Arduino 보드 를 구축 할 수 있습니다.
필요한 구성 요소
- Atmega 328 IC
- 브레드 보드
- LM7805
- 16MHz 크리스탈
- 22pF 세라믹 커패시터 (2)
- 10uF 커패시터 (2)
- 10K 저항
- 1k 저항
- 점퍼 와이어
선택적으로 3.3v 전압 조정기 LM1117-3.3v를 사용하여 회로에 3.3v 레일을 포함 할 수도 있습니다.
Atmega328의 핀 다이어그램
구성 요소 설명
전원부
- 5V 전압 조정기: Atmega 328 IC는 5V 전원 공급 장치에서 실행됩니다. 따라서 여기에서 LM7805를 사용하여 5v 출력을 얻고 최대 30V를 입력으로 처리 할 수 있습니다. 별도의 5V 전원 이있는 경우이 단계를 종료 할 수 있습니다.
- 커패시터: 10uF 커패시터는 7805의 입력 및 출력 부분에 사용되어 AC 구성 요소를 접지로 우회합니다.
- LED: 이것은 5V 출력이 나오고 있음을 보여줍니다.
마이크로 컨트롤러 부품
- Atmega 328: 이것은 브레드 보드의 주요 구성 요소입니다. 핀 다이어그램은 위에 나와 있습니다.
- 수정 발진기: 16MHz 외부 수정이 ATmega328의 9 번 핀과 10 번 핀 사이에 연결됩니다. 이 크리스탈은 마이크로 컨트롤러에 클럭을 제공하여 작업을 더 빠르게 실행하는 데 사용됩니다.
- 푸시 버튼: 마이크로 컨트롤러를 재설정하기 위해 푸시 버튼이 핀 1과 GND 사이에 연결됩니다. 일반적으로 10k 저항을 사용하여 5v로 연결됩니다.
- LED: LED 는 디지털 핀 13에 연결됩니다.
이 완전한 튜토리얼은 브레드 보드에서 실행되는 Arduino 를 만들기 위해 세 부분으로 나뉩니다 .
- 브레드 보드에 Arduino 회로 구축
- Atmega328 IC에 부트 로더 굽기
- Arduino Bootloader를 프로그래밍하는 방법은 브레드 보드에 Atmega 328 IC를 업로드했습니다.
이제 각 부분을 하나씩 설명하겠습니다.
Part-1: 브레드 보드에 Arduino 회로 구축
1 단계:- 회로도에 표시된대로 전원 공급 장치 부품 을 연결하고 LM7805에 외부 전원 공급 장치를 사용하여 테스트합니다. 이렇게 보일 것입니다.
2 단계:- 이제 회로도에 표시된대로 마이크로 컨트롤러 부품 을 연결합니다. 조심스럽게 연결하십시오.
3 단계:- 이제 점퍼를 사용하여 전원 공급 장치와 마이크로 컨트롤러 부품을 연결합니다. 최종 회로는 다음과 같습니다.
그래서 이것은 브레드 보드 의 Arduino입니다. EasyEDA 등과 같은 간단한 도구를 사용하여 PCB에 동일한 회로를 구현할 수 있습니다. 이제 IC 프로그래밍을 시작할 수 있도록 부트 로더를 새로운 Atmega 328 IC에 업로드해야합니다.
2 부: 부트 로더를 Atmega328 IC로 굽기
부트 로더 란 무엇이며 왜 필요한가요 ??
부트 로더는 마이크로 컨트롤러의 메모리에 영구적으로 저장되는 작은 실행 코드입니다. 이것은 1Kb 미만의 메모리를 차지합니다. 부트 로더를 사용하면 IC가 컴퓨터에서 코드를 받아 마이크로 컨트롤러의 메모리에 저장할 수 있습니다.
전통적으로 Atmel의 모든 마이크로 컨트롤러는 멋진 연결을 가진 프로그래머의 도움을 받아 프로그래밍됩니다. 부트 로더는 복잡성을 줄이고 마이크로 컨트롤러를 쉽고 효율적으로 프로그래밍 할 수있는 방법을 제공합니다. 즉 , USB 케이블을 사용하여 프로그래밍 할 수 있습니다.
시장에서 새 Atmega 328을 구입하면 부트 로더가 없습니다. 따라서 Arduino IDE를 사용하여 Atmega328을 프로그래밍하려면 먼저 부트 로더를 업로드해야합니다.
부트 로더를 업로드하려면 두 가지 방법이 있습니다.
- USBasp 프로그래머 사용
- Arduino UNO 보드 사용
두 번째 방법은 첫 번째 방법에 비해 쉽습니다. 더 적은 연결이 필요하고 최신 버전의 Arduino IDE는 멋진 USBasp 프로그래머를 지원하지 않기 때문입니다.
따라서이 튜토리얼에서는 Arduino Uno 보드를 사용하여 부트 로더를 업로드합니다.
Atmega328 칩에 Arduino 부트 로더 업로드
1 단계: -Arduino IDE를 엽니 다. 이동 파일 -> 예 -> ArduinoISP . ArduinoISP를 선택하는 것보다. 아래 그림과 같이.
2 단계: 이제이 코드를 Arduino 보드에 업로드해야합니다. 도구 메뉴에서 com 포트와 보드를 선택하고 업로드 버튼을 누르십시오.
3 단계: ' 업로드 완료 '후 Arduino 보드를 컴퓨터에서 분리하고 아래 그림과 같이 Arduino 보드를 Atmega 328과 연결합니다.
4 단계:- 이제 Arduino 보드를 컴퓨터에 연결합니다. Arduino IDE를 엽니 다.
도구로 이동하여 보드 를 Arduino / Genuine Uno 로 선택하고 보드에 맞는 포트 를 선택하십시오. Programmer를 "Arduino as ISP"로 선택합니다. ArduinoISP와 혼동하지 마십시오. 둘 다 다릅니다.
5 단계: 이제 도구로 다시 이동 하여 프로그래머 옵션 바로 아래 에있는 Burn Bootloader를 클릭합니다. 몇 초 후 부트 로더가 성공적으로 업로드됩니다. 업로드에 오류가 있으면 연결을 확인하십시오.
Atmega 328 IC에서 Bootloader 를 업로드 하기 위해 위에서 설명한 단계를 이해하려면 아래 비디오를 확인하십시오.
귀하의 브레드 보드 아두 이노는 실제 아두 이노 보드 등의 작업을 할 준비가되어 있습니다. 이제 Atmega 328 IC 를 프로그래밍 하는 방법에 대한 의문이 생깁니다. 다음 섹션에서 논의 할 것입니다.
Part-3: Atmega 328을 업로드 한 Arduino Bootloader 프로그래밍 방법
독립형 Arduino Atmega328 칩은 다양한 방법으로 프로그래밍 할 수 있습니다.
- 빈 Arduino 보드, 즉 Atmega 328 IC가없는 Arduino 보드 사용.
- USB to Serial TTL 변환기 모듈 (FTDI 모듈) 사용.
- USBasp 프로그래머 사용 (많은 연결 포함).
여기서는 USB to serial converter와 Arduino board의 두 가지 방법을 사용하여 프로그래밍합니다.
Arduino 보드를 사용하여 Atmega328 칩 프로그래밍
1 단계: Atmega328 칩이없는 Arduino 보드를 가져옵니다. 이 다이어그램과 같이 Arduino 보드를 브레드 보드 Arduino 와 연결 합니다.
2 단계: -Arduino 보드를 컴퓨터에 연결하고 Arduino IDE를 엽니 다. Tools의 Board 메뉴에서 Arduino Uno를 선택하고, Programmer를 USBasp로 선택하고 보드의 올바른 COM 포트를 선택합니다.
3 단계: Blink 프로그램을 업로드하는 것으로 시작합니다. 따라서 예제에서 깜박임 프로그램을 선택하고 업로드 버튼을 누르십시오.
이제 브레드 보드의 LED가 깜박이기 시작하는 것을 볼 수 있습니다.
USB to Serial 변환기를 사용하여 Arduino Atmega328 칩 프로그래밍
1 단계: -Arduino 보드가없는 경우. 이것은 브레드 보드 Arduino 를 프로그래밍하는 가장 좋은 방법 입니다.
다음과 같이 연결하십시오.
FTDI의 RXD 핀-> Atmega328의 Tx 핀 (핀 3)
FTDI의 TXD 핀-> Atmega328의 Rx 핀 (핀 2)
GND-> GND (핀 8)
5v-> Vcc (핀 7)
일부 FTDI 모듈에는 Atmega328 (핀 1)의 리셋 핀과 연결해야하는 DTR 핀이라고도하는 리셋 핀이 있습니다. 모듈에 리셋 핀이없는 경우 칩을 프로그래밍 할 때 솔루션을 제공 할 것이므로 걱정하지 마십시오.
2 단계:- 이제 FTDI를 컴퓨터와 연결하고 제어판에서 장치 관리자 를 엽니 다. 포트 섹션이 표시되면 확장합니다. 드라이버 앞에 노란색 표시가 있으면 모듈 드라이버를 업데이트해야합니다.
표시가 없으면 com 포트 번호를 기록하고 Arduino IDE를 엽니 다. 이동 도구 -> 포트 -> 선택 당신이 언급 한 것을 co.kr에서.
3 단계:- 이제 Breadboard Arduino에 깜박임 프로그램을 업로드 합니다. 이동 파일 -> 예 -> 기본 -> 깜박임 . 도구의 보드 메뉴에서 Arduino Uno를 선택하고, 프로그래머는 USBasp로, 보드의 올바른 COM 포트를 선택합니다.
그런 다음 업로드 버튼을 누르십시오.
참고: FTDI 모듈에 DTR 핀이없는 경우 브레드 보드에서 재설정 버튼을 누르고 업로드 버튼을 누르십시오. 스케치 컴파일 중… 이라고 표시되면 계속 누르고 있습니다. 업로드 중… 이라고 표시되면 버튼을 놓습니다 .
이제 프로그램이 Arduino Bootloader Atmega328 칩에 성공적으로 업로드됩니다.
아래는 Arduino 보드를 사용하지 않고 Atmega 328 IC 를 프로그래밍 하는 비디오입니다.
우리는 DIY Breadboard Arduino Circuit을 사용했습니다. 이 회로를 PCB에 설계하여 더 컴팩트하게 만들 수 있습니다.