EEPROM에 펌웨어 구워넣기
오늘은 잠깐 곁가지로 새서,
EEPROM에 펌웨어를 구워보자.

이제까지 우리는 작성한 펌웨어를 EZ-USB Control Panel을 써서 CY7C68013으로 다운로드 해 왔다.
하지만 이러한 방법은 개발할 때에나 쓸 수 있는 것이고,
USB장치를 사용할 때마다 사용자더러 이렇게 번거로운 절차를 행하라고 시킬 수는 없는 일 아닌가?

따라서 펌웨어를 EEPROM에 구워 넣고,
장치를 USB 포트에 끼워 넣으면 바로 우리가 코딩한 펌웨어에 따라 동작하는 USB 디바이스로 인식되게끔 만들어 보자.


먼저 EEPROM의 시작번지 첫 두 바이트에 0xFF 0xFF를 써 주어야 한다.
요 짓을 왜 하느냐 하면
아래에 설명하겠지만,
EEPROM 이미지(xxx.iic 파일)를 EEEPROM(24LC64)에 써 넣는 일도
EZ-USB Control Panel을 사용해서 하는데,
만약 첫 두 바이트가 0xC0 0xXX 요렇게 이미 세팅되어 있다면
EZ-USB Control Panel이
아! EEPROM이 이미 프로그램 되어 있구나 하고 알아차리고는
덮어쓰기를 거부해 버린다.
따라서 EEPROM을 굽기 앞서 이 두 바이트를 지워주는 절차로서 “0xFF 0xFF”를 써주는 것이다.

자 어떻게 하는냐?
EEPROM이 소켓에 잘 끼워져 있는지 확인부터 하시라.
끼워져 있는가?
그럼 빼시라. ㅋㅋㅋ
(Tip. 처음 새 EEPROM을 끼울 때에는 접촉불량이 생길 수 있으므로,
그냥 세네번 끼웠다 뺐다를 반복해 주시라.
다리가 휘지 않도록 조심 하면서.
핀셋으로 하면 캡숑 좋다.)

EEPROM을 “뺀” 상태에서 UniHigh 보드를 USB 포트에 꼽는다.
그리고 나서 EEPROM을 끼워라.

이제 EZ-USB Contrrol Panel을 연다.
먼저 EZ-USB Contrrol Panel의 “Download” 버튼을 누른다.


C:CypressUSBExamplesFX2Vend_ax 폴더의 Vend_Ax.hex를 선택해서 다운로드한다.


아래와 같이 세팅하고 “Vend Req” 버튼을 누른다.


이제 24LC64의 첫 두 바이트가 지워졌다.


이제 리셋버튼을 누르거나 USB 포트에서 분리 후 다시 장착해서
장치관리자를 들여다 보자.


위와 같이 나오면 EEPROM이 잘 초기화 된 것이다.




이제 EEPROM을 프로그램 할 차례이다.


EZ-USB Contrrol Panel의 “EEPROM” 버튼을 누른다.


굽고자 하는 펌웨어의 iic파일을 선택해 준다.


확인을 누르면
프로그램이 한 10초정도 응답이 없다가, 다 구워지면 커서가 깜빡거린다.


리셋버튼을 누르거나 USB 포트에서 분리 후 다시 장착해서
장치관리자를 들여다 보자.
우리가 짠 펌웨어대로 장치가 나타날 것이다.


이제는 우리가 만든 USB 디바이스를 아무 컴터에나 꼽기만 하면 인식이 될 것이다.
(물론 드라이버가 깔려있거나, 깔아야 하고,
테스트 프로그램도 있어야 하지만…)


사족.
펌웨어 소스를 빌드한 결과물은 hex파일이고,
EEPROM이미지는 iic파일이다.
hex파일을 iic파일로 바꾸어주는 툴은
c:cypressusbin 폴더의 hex2bix.exe이다.

이 hex2bix.exe를 사용한 예는
Keil u-Vision으로 예제 프로젝트를 열고,
( 왼쪽 창에서 “Target 1”이 선택된 상태에서)
메뉴의 Project->Options for Target “Target 1”을 선택한 후에
“Output” 탭을 선택하면 아래와 같이 볼 수 있다.



UniHigh 펌웨어와 BulkLoop 펌웨어의 세팅을 비교해 보시라.
hex2bix를 실행시킬 때 파라메터가 어덯게 다른지.
디바이스 디스크립터의 VID와 PID를 바꾸면
이 파라메터도 같이 바꾸어 주어야 한다.
by 바람처럼날다 | 2005/06/01 17:54 | FX2 펌웨어 강좌 | 트랙백 | 핑백(1) | 덧글(0)
트랙백 주소 : http://muosys.egloos.com/tb/198883
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Linked at EEPROM에 펌웨어 구워넣기.. at 2008/04/01 01:26

... http://muosys.egloos.com/198883 ... more

:         :

:

비공개 덧글

< 이전페이지 다음페이지 >