USB to TTL을 ISP로 AVR에 사용하기 (Feat. USBasp)
2017.07.25 18:42
USB to TTL로 ISP 쓰기 설명
FT245R 이라는 모드를 쓸거라며 패치를 해란다.
http://doswa.com/2010/08/24/avrdude-5-10-with-ftdi-bitbang.html
윈도우용에서는 저걸 컴파일해 본 적도 없고, 혹시 또 모르니 avrdude 다운로드 링크
http://ftp.yzu.edu.tw/nongnu/avrdude/
또는
http://download.savannah.gnu.org/releases/avrdude/
----
avrdude.conf의 해당 부분 정의를 보니까 핀 순서만 맞추면 걍 될 것 같다. 해보고 수정해야지...
결과:
* ftdi ft232 비싼놈 : (avrdude 6.3 기준) 안된다.
- avrdude.conf ft232r의 내용을 수정하거나 복사해서 새로 추가한다.
** avrdude.conf 정의를 보면 RTS를 쓰는데 비싼 놈은 이건 없고 CTS만 있기 때문에 이걸 상단 첫 링크의 설명을 참고하여 CTS의 핀 번호로 바꿔줘야 된다.
- 컴파일 된 바이너리에 pthread가 없다고 땍땍거린다. 결론, 새로 컴파일 안하면 아예 실행 못 함
* CH340G 싼놈 : (avrdude 6.3 기준) 된다.
- 아래 링크대로 결선
** 링크: https://github.com/microtherion/ChipHeadBang
- 위 링크의 avrduderc 파일 내용을 avrdude.conf에 추가
- 되긴 되는데, 일반적으로 사용하는 ISP보다 20배 가량 느리다.
CH340G에 땜질한 선은 9(파란선), 13(빨간선), 14(녹색선)
타겟 디바이스는 Attiny84
나중에 부품들이 다 오면 USBasp를 만들어서 시도해보등가 하고, USB to TTL 직접 연결을 통한 방법은... 이건 뭐 너무 느려서... 에혀...
USBasp도 느린 것 같다. 만들고 나서 정말로 느리면 아래 링크까지는 확인을 해봐야겠다.
http://forum.arduino.cc/index.php?topic=179533.0
당분간은 걍 계속 하던대로, Arduino as ISP를 써야겠다.
usbasp를 만들어서 테스트 해봤다. - https://www.fischl.de/usbasp/
겁나 빠르다. 시간 될 때 제대로 한 번 만들어봐야겠다.
여기까지 ATmega8로 만든 것, 아래는 ATmega328P/16MHz로 만든 것.
LED 인디케이터와 디커플링 커패시터를 달아봤다. 노이즈 걱정에 달아본건데 별로 영향은 없는 것 같다.
avrdude로 플래싱이 안되면 -B5 정도의 옵션으로 속도를 늦춰주면 된다.
Broken pipe 가 어쩌고 저쩌고 에러가 뜨면, 일단 PC에서 USB 케이블을 뺐다 끼우고 다시 해본다.
그래도 안되면 아두이노IDE를 종료했다가 다시 실행해본다.
발진부는 불안해서 걍 납땜했다.
ATmega328P/16MHz 대상의 hex 파일과 변경한 소스, avrdude(기본값 Arduino as ISP)를 첨부에 올려놨음.
(avr-gcc로 동작 확인. 컴파일은 알아서...)
USB 드라이버는 zadig를 사용하면 됨. (드라이버는 winusb나 libusb 또는
libusbK로 선택하면 됨. 첨부에 추가함)
윈도우 장치관리자에서 "알 수 없는 USB 장치" 같은 이름이 뜨면 100% 발진부 문제이므로 발진소자 (Xtal, Cap) 들을 꾹꾹 눌러줘본다.
크리스탈이랑 콘덴서 핀이 너무 가늘어서 발진부를 땜질해서 올리는게 제일 좋음.
끝.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
8 | nodemcu pin 아두이노용으로 define | 꿈돌이 | 2018.09.11 | 1685 |
7 | AVR 무선 ISP 관련 | 꿈돌이 | 2017.09.03 | 1041 |
6 | avr-gcc 작업 환경 만들기 | 꿈돌이 | 2017.08.11 | 1690 |
5 | 아두이노 스케치 소스를 아두이노 IDE 없이 avr-gcc로 컴파일 | 꿈돌이 | 2017.08.10 | 1804 |
» | USB to TTL을 ISP로 AVR에 사용하기 (Feat. USBasp) | 꿈돌이 | 2017.07.25 | 3558 |
3 | avrdude와 Arduino as ISP를 이용하여 hex 쓰기 | 꿈돌이 | 2017.07.23 | 2811 |
2 | AVR 모델별(~=플라스틱 패키지 DIP) 아두이노 핀 연결 | 꿈돌이 | 2017.07.21 | 14032 |
1 | 아두이노 USB-Serial 핀 매핑 | 꿈돌이 | 2017.06.24 | 744 |