Arduino를 프로그래머로 사용하는 것에서 외부 프로그래머로 어떻게 전환해야합니까?


12

아두 이노에서 일반 AVR 마이크로 컨트롤러 및 최소 지원 구성 요소 (으로 전환에 세 부분 시리즈의 두 번째 부분 부분 일 , 3 부 )

많은 사람들이 인터넷에서 이것을 묻는 것을 보았습니다.

나는 프로그래머로서 Arduino와 함께 베어 본 ATmega328을 프로그래밍하고 사용하는 방법을 이미 알고있다 . 이제 Arduino IDE에서 외부 프로그래머를 사용하고 싶습니다.

이 전환을 어떻게 진행해야합니까? 무엇을 배워야합니까? (일부 부분에 대한 미니어처가 답의 일부로 제공된다면 좋을 것입니다)


2
+1, 참조 질문에 대한 훌륭한 후보 인 저는 "에치 보드 (etch-a-board)"답변이 아닌 초보자도 쉽게 따라 할 수있는 체계적이고 세부적인 답변을 기대합니다.
Anindo Ghosh

혼란 스러워요. 한 방법에서 다른 방법으로 단계를 이동하려고합니다. 당신은 대답으로 무엇을 기대하고 있습니까? 외부 프로그래머를 직접 사용하기위한 자습서는 실제 자습서입니다.
asheeshr

@AshRj : 전환과 새로 시작은 서로 다른 두 가지입니다. Arduino 사용 방법을 알고 있다면 다양한 코드의 차이점과 프로그래머 사용의 기본 사항을 알아야합니다.
Manishearth

@Manishearth '부트 로더없이'는 무엇을 의미합니까?
Polar

@Polar : 기본적으로 Arduino 부트 로더가 나를 도와주기를 원하지 않습니다 (Arduino를 프로그래머로 사용하는 경우 발생 함). 모든 코드가 코드 인 ATmega를 원합니다 .
Manishearth

답변:


6

참고 :이 미니 튜토리얼은 공식 정보를 기반으로되어 여기 아두 이노 사이트. 또한 공식 Arduino IDE를 사용합니다.

참고 2 : 제품에 제공된 링크는 Farnell 링크 (데이터 시트 포함) 또는 제조업체 웹 사이트의 실제 제품 페이지 일 수 있습니다.


1 단계 : 외부 프로그래머 얻기

가장 먼저 알아 두어야 할 것은 부트 로더를 피하고 1K 또는 2K의 메모리 ( 메모리 의 12.5 %)를 회수하기 위해 외부 프로그래머가 필요하다는 것 입니다. 당신은 사용할 수 AVR-ISP 하는 STK-500 , 또는 병렬 포트 프로그래머 - 공식 아두 이노 사이트는이에 대한 지침을 가지고 여기에 . 병렬 프로그래머를 통해 보드와 통신 할 수 없다는 점에 유의하십시오. 직렬 케이블을 사용하는 것이 좋습니다. 병렬 프로그래머를 사용하면 얻을 수있는 가장 큰 장점은 납땜을하려는 경우 다른 것보다 훨씬 저렴하다는 것입니다. 몇 개의 저항기와 몇 개의 커넥터 만 있으면되지만 ISP는 백업을 설정할 수 있습니다 £ 30 / $ 50 (전환율은 대략적인 금액)


2 단계 : Arduino 기본 설정 파일 편집

다음으로 부트 로더를 우회 할 수 있도록 Arduino IDE를 구성해야합니다. Arduino IDE가 열려 있지 않은지 확인하십시오! 환경 설정 파일 preferences.txt은 운영 체제에 따라 다음 위치에서 찾을 수 있습니다.

  • C:\Documents and Settings\<Username>\Application Data\Arduino\preferences.txt (윈도우)
  • /Users/<Username>/Library/Arduino/preferences.txt (맥)
  • ~/.arduino/preferences.txt (리눅스)

Windows에서 환경 설정 파일로 이동하려면 시작 메뉴로 이동 한 다음 %appdata%(NB : 정기적으로 Windows를 사용하지 않고 자유롭게 수정하십시오)로 이동하십시오. 그런 다음 Arduino로 이동 한 다음preferences.txt

Mac에서는 터미널을 사용하고 다음을 수행하십시오.

cd ~/Library/Arduino
open .

또는 Finder에서 Goto (Cmd-Shift-G)를 사용하고을 입력하십시오 ~/Library/Arduino. 이 둘 모두를 사용하여 Finder 윈도우로 이동 preferences.txt합니다.

유닉스 시스템에서 '.'로 시작하는 폴더 (예 .cache, .git기본적으로 숨겨져 있습니다), 그래서 리눅스에서 당신은 터미널을 사용하고 입력해야합니다 :

cd ~/.arduino
nautilus .

참고 : 원하는 경우 노틸러스를 교체 할 수 있습니다 gnome-open . 나는 이것들이 리눅스의 일반적인 풍미에서 작동한다는 것을 알고 있지만 , 좀 더 '이국적인'풍미에 대해서는 문제 있을 있습니다.

preferences.txt파일 을 찾았 으면 파일을 열고 서브 디렉토리 upload.using에서 bootloader~ 중 하나를 프로그래머 이름으로 변경하십시오 ./hardware/programmers.txt. 한 보드에서 부트 로더 만 제거하려면 매개 변수를 ./hardware/boards.txt변경할 수 <board>.upload.using있으며 다른 모든 보드는 여전히 부트 로더를 사용합니다. 그런 다음 관련 파일을 저장하고 닫으십시오 (아두 이노가 추락하고 대답을 거의 잃어 버렸습니다.


3 단계 : 스케치 업로드

관련 파일을 편집 한 후 Arduino IDE를 다시 열고 스케치를 정상적으로 업로드하십시오. 방금 편집 한 경우 ./hardware/boards.txt, 다음 특정 보드에만 것을 하지 부트 로더를 가지고 있지만, 편집 한 경우 preferences.txt다음 보드의 모든 부트 로더가되지 않습니다.


4 단계 : 부트 로더 교체

어떤 이유로 든 보드에 부트 로더를 다시 설치하려면 먼저 <board>.upload.using매개 변수를 제거 하거나로 upload.using다시 설정하십시오 bootloader. 그런 다음 부트 로더를 영향을받는 보드에 다시 태워야합니다. 이 답변은 합리적인 방법 중 하나를 설명 하며 ISP 만으로 Arduino 부트 로더 를 업로드하는 더 쉬운 방법이 있습니다 (이전부터 있어야 함) 공식 사이트 여기에 .


나는 확실하지 않다고 생각한다. 별도의 질문으로 질문 할 수도 있습니다
Manishearth

@Manishearth 아, 원한다면 그것을 반영하도록 편집하겠습니다. 그리고 다시, 우리 더 많은 질문으로 할 수 있습니다 ...
Polar

나는 또 다른 하나를 물어볼 것이다. 내가 그것을
넣는

@Manishearth Ok :)
Polar

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.