공개된 LUFA (Lightweight USB Framework for AVRs, formerly known as MyUSB) 프로젝트가 있습니다.
제목과 같이 AVR(AT90USB162)을 USB to Serial 로 사용하기 위해서 먼저 프로젝트 소스를 다운로드 받습니다.
직접 다운로드 받거나 lufa-LUFA-140928.zip 프로젝트 사이트를 이용하시면 됩니다. http://www.lufa-lib.org
파일의 압축을 풀면 다음과 같은 구조의 디렉터리들이 존재합니다.
Bootloaders/
BuildTests/
Demos/
LUFA/
Maintenance/
Projects/
.gitignore
makefile
README
AVR을 이용하여 USBtoSerial외에도 여러가지 활용할 수 있는 프로젝트 소스들이 포함되어 있군요.
여기서 이용할 프로젝트인 USBtoSerial은 Projects 디렉터리에 위치합니다.
소스를 컴파일하기위해선 컴파일러 및 라이브러리들이 필요합니다. 그렇기때문에 AVR Studio가 설치되어 있어야 합니다.
필자는 AVR Studio 5.1을 이용하여 진행하겠습니다.
1. AVR Studio을 실행 시킵니다.
2. New Project를 클릭하면 아래와 같은 창이 열립니다. 프로젝트 Name을 써주고 OK.
3. MCU를 선택하고 OK
4. 프로젝트 생성이 완료되면 C소스파일이 기본적으로 하나 존재하는데 선택하고 삭제합니다.
5. 오른쪽 버튼 메뉴의 Properties을 선택합니다.
6. Build탭에서 Use External Makefile을 체크하고 Browse를 클릭합니다.
7. 초반에 다운로드 받은 ProjectsUSBtoSerial 안에 makefile을 선택합니다.
8. 중요한 설정이 남아있는데 방금 선택한 makefile을 열어서 MCU 및 F_CPU 부분을 수정합니다. 주파수(F_CPU)의 경우는
환경에 따라 다를 수 있습니다. 저의 경우는 16Mhz의 크리스탈이 달려있어서 아래와 같이 수정했습니다.
9. 이제 AVR Studio에서 Build - Build USBtoSerial을 클릭합니다.
10. 문제가 없다면 빌드가 진행되고 성공하면 아래화면처럼 성공했다고 출력합니다.
11. ProjectsUSBtoSerial 에 hex파일등이 생성되었음을 확인할 수 있습니다.
윈도우 설치 드라이버는 LUFA USBtoSerial.inf 을 설치하면 됩니다.
12. 이제 ISP를 이용해서 MCU에 퓨징하면 끝나네요! 저의 경우 비글본에 연결하여 테스한 결과 훌륭하게 잘 작동하였습니다.
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
13 | STM32와 CAN(Controller Area Network) Loop Back | makersweb | 2017.01.23 | 6094 |
12 | 윈도우10에서 Prolific USB to Serial 드라이버 인식문제 | makersweb | 2016.01.24 | 23607 |
11 | AVRISP mkII 펌웨어 업그레이드 | makersweb | 2015.07.22 | 7620 |
10 | 이클립스에서 IAR프로젝트 사용방법 | makersweb | 2015.07.09 | 9340 |
9 | JFlashARM으로 MCU에 bin(바이너리)다운로드 | makersweb | 2015.06.07 | 4998 |
» | AVR(AT90USB162)을 USB to Serial 로 이용하기 | makersweb | 2015.02.14 | 5379 |
7 | 실시간 운영 체제 또는 RTOS(Real Time Operating System) | pjk | 2014.12.02 | 6496 |
6 | 폴링(Polling), 인터럽트(Interrupt), DMA(Direct Memory Access) | pjk | 2014.10.24 | 6654 |
5 | 부트로더의 start.S 분석 | makersweb | 2014.03.23 | 4263 |
4 | 임베디드 시스템 개발 환경 선택 | makersweb | 2014.03.05 | 4129 |
3 | GNU C 레퍼런스 메뉴얼 - 부록 D | makersweb | 2014.02.28 | 5 |
2 | printk() | makersweb | 2014.02.27 | 5657 |
1 | [Uboot 명령어 및 환경 변수 요약]U-Boot에 Command 및 Parameter에 대한 설명 | pjk | 2014.01.09 | 11433 |