로그인회원등록 내글장바구니주문조회현재접속자
 상품 검색








 게시판 검색





 
 
회원등록 비번분실


온라인 입금계좌
ㆍ기업은행
ㆍ219-043192-01-028
ㆍ이건영

      거래은행 바로가기
 
 Products Manual
상품 자료실
       
판매하는 상품의 관련자료입니다.
작성자 leeky        
작성일 2006/04/15
첨부#1 eboot_src+hex.zip (51KB) (Down:466)
첨부#2 ethernut2-hardware.zip (683KB) (Down:217)
Link#1 index.html (Down:132)
ㆍ추천: 0  ㆍ조회: 2162   
  M128-NIC KIT 2.0의 펌웨어를 이더넷으로 굽기.
이 응용은 ATmega 128을 위해 어떻게 BOOTP/TFTP 기반의 부트로더를 생성하는지 보여준다.
이더넷으로 연결되는 부트로더를 설치하는 설명이 여기에 있다.
 
Ethernut의 프로그램 메모리의 상단(부트코드 영역) 4K 바이트 안에 이더넷 부트로더를 고정하고
(먼저 Mega128칩의 부트영역에 2K 바이트의 부트로더 eboot.rom을 AVR ISP로 굽는다)
이더넷을 통해 DHCP와 TFPT를 사용하여 응용코드를 ATmega128의 플래시 롬에 내려받는다.
이것이 의도하는 것은 ISP 장치를 위한 대치이다.
그리고 14 MHz ATmega128을 약 4초 혹은 짧은 시간에 업데이트한다.
.
M128-NIC KIT v2.0 기판에 eboot를 구워 넣으면 AVR ISP없이
이더넷으로 연결한 M128-NIC KIT v2.0 기판을, PC에서 TFTPD32.EXE를 실행해 놓으면,
이더넷이 연결된 상태이면 몇번이고 M128-NIC KIT v2.0 펌웨어를 구울수 잇습니다.
단 펌웨어 파일은 HEX나 COF는 안되며, 굽기전에 HEX2BIN을 가지고 BIN으로 변환해 주어야 합니다.
.
이것은 2개의 종류로 된다, 하나는 eboot라고 불리우는 것과 Ethernut 1.3 혹은
RTL8019AS를 포함한 어떤 다른기판(M128-NIC V2.0 이더넷 연결기판)에서 작동한다.
2번째는 appload라고 불리우고  Ethernut 2.0 기판에서 사용된 LAN91C111를 지원한다.
.
주의사항
1. 데이터 시트에 따르면, ATmega128 플래시 메모리는 1,000 회의 쓰기/읽기 주기의 내구를 가진다.
  부트로더를 무분별하게 사용하면 플래시 메모리가 빨리 닳을 것이다.
  치명적인 프로그래밍 오류는 CPU를 리셋시킬 수 있다.
  나쁜 코드를 계속해서 재 적재하면 마지막으로 몇 분만에 플래시 롬이 손실된다.
.
2. 휴즈비트를 가지고 놀면 당신의 CPU를 무효화 시킬 것이다
  어떻게 되는지 아는 비트외에, 어떤 비트라도 바꾸지 마시요
  휴즈는 셋트, 리셋, 허가 혹은 금지로 설정을 하는지, 안하는지 조금 혼란스럽다.
  데이터 시트에 주어진 것에 의해서 설정은 0,  비 설정은 1을 사용할 것이다.
  (고전적인 모든 메모리의 지우거나 쓰지 않은 초기상태는 1 이다, 바이트 값으로는 0xFF이다)
.
3. 부트로더는 비보안으로 알려진 TFTP 프로토콜을 사용한다,
  (부트로더는 제어장치에 설치하여 TFTP 서버로 부터 파일을 전송받는 클라이언트이다)
  제한된 호출 이외에 당신의 컴퓨터를 공중 통신망(인터넷)에 연결했을 때,
  TFTP 쓰기 호출을 허가하지 마시오. (읽기 전용으로 설정한다.)
  부트로더를 위해서 TFTP 읽기 접근을 단일 폴더로 제한 할 수 있다.  
  경고가 두렵습니까? 좋습니다. 그래서 당신은 손해를 감지하고 피해를 예방할 것입니다.
.
■ 이더넷 설정
처음에 당신은 부트로더 Hex 파일을 이더넷 기판에 AVR ISP를 써서 1차 펌웨어로 굽는다.
공교롭게 모든 프로그램 툴이 플래시롬의 윗쪽 반에 업로드 되지 않으면
플래시 내용을 반대로 읽어서 업로드를 성공시켜, 알맞게 고친다.
(AVR ISP와 AVR STUDIO를 사용하면 이런 오류는 전혀 발생하지 않습니다)
.
부트로더 코드는 바이트 주소 0x1F000 에서 시작되어야 한다, 워드 주소로는 0xF800과 같다.
(다른 굽기 소프트를 쓸 때의 주의사항이며, AVR Studio의 휴즈설정은 words를 사용하고 있다)
만일 어떤 윈도우즈 PC에서 직렬포트로 STK500 호환 ISP 장치를 사용한다면 AVR Studio는 좋은 선택이다.
.
부트로더 코드를 Mega128에 업로드 한 다음, ATmega128 휴즈를 고칠 수 있다.
다음과 같이 ATmega128 휴즈 상위바이트의 휴즈 비트 3개는 특정한 값으로 셋트 되어야 한다.
(시작번지를 F800으로, 리셋시 부트로더 작동을 허가, 리셋은 4V, JTAG은 허가, 발진은 EXT_XTAL)
.
비트 휴즈명칭      설명
2    BOOTSZ1    Program to 0 to select the bootloader size of 4 kByte
1    BOOTSZ0    Unprogram to 1 to select the bootloader size of 4 kByte
0    BOOTRST    Program to 0 to force the CPU to jump to the boot loader upon reset
.
■ AVR Studio에서는 이 선택을 사용한다.
  

■ 윈도우즈 PC 설정
이 항목은 Philippe Jounin의 TFTPD32를 제공한다. (TFTP는 PC에 설치하는 파일전송 서버이다)
만일 당신의 위치에 이미 DHCP와 TFTP가 있다면 이 항목을 건너뛸 수 있다.
TFTPD32.EXE 사이트 바로가기는 http://tftpd32.jounin.net/
16 Feb 2006 v2.84 tftpd32.284.zip (196kB) 내려받기
http://perso.wanadoo.fr/philippe.jounin/download/tftpd32.284.zip
.
설치하고 TFTPD32를 시작한 다음, 설정이라고 써진 단추를 누르면, 새로운 대화창이 열릴 것이다.
 
 
아래의 항목에 보여준 옵션을 선택한다. 탐색(browse) 단추를 누르고
Nut/OS가 설치된 하위폴더 bin/atmega128을 선택한다.  
(부트로더로 전송할 BIN 파일이 있는 곳을 선택해야 한다)
마지막으로 OK를 누르면 TFTPD32가 환경을 저장하고 재시작 된다.
(입력한 환경변수를 저장한다는 창이 표시된다)
.
이제 DHCP 서버의 설정이 필요하다. DHCP 서버 탭을 선택한다.
  

만일 당신의 컴퓨터에 1개 이상의 네트웍 카드가 설치되어 있다면,
당신은 연결하려는 당신의 이더넷 기판의 서버 인터페이스를 선택할 수 있다.
(PC에 사용한 LAN 카드가 1개 이상이며, TFTP 서버로 사용할 LAN 카드를 선택한다)
.
이더넷 부트로더는 DHCP 마당에서 IP 주소를 요청할 것이다.
IP 마당의 시작주소와 마당에 있는 주소의 숫자를 입력한다.
(공유기와 같은 값을 설정한다, 공유기의 DHCP 기능과 충돌하지 않는다)
그림은 192.168.192.100 부터 192.168.192.109 안에서 IP 주소를 요청할 것이다.
.
부트 파일은 당신이 이더넷 기판에 업로드 하려는 원시 2진 이미지의 이름이다.  
WinAVR (AVRGCC)를 사용할 때, 당신은 command line에서 설치명령을 간단히 입력한다.
이것은 당신의 코드를 자동적으로 컴파일하고 링크한다.
그리고 결과인 Hex 파일과 2진 파일을 하위 폴더 bin/atmega128에 복사한다.
.
ICCAVR은 원시 2진 파일을 생성하지 못할 것이다.
나중에 설명하려는 robi 라고 명명된 도구를 만들었다.
거기에는 특정한 WINS/DNS 서버 주소 혹은 초기 라우팅은 필요하지 않다.
그렇지는 않지만, 당신의 이더넷 응용은 인터넷 직접 호출을 요구한다.
이 경우에 그렇게 하려면, 당신은 어떤 입력을 원하는지 미리 알아야 한다.
.
당신의 지역 통신망 설정에 고정할 넷트웍 마스크와 IP 마당 주소를 알맞게 만든다.
마지막으로 "Save" 를 누르면 TFTPD32는 윈도우즈 registry에 값을 저장한다.
그리고 "Tftp Server" 탭을 선택하여 초기 창으로 돌아간다.
.
이제  이더넷 기판의 리셋 단추를 누른다.
  

이더넷 기판은 넷트웍으로 DHCP의 요청을 뿌리려,  직접적으로 부트로더로 점프할 것이다,  
TFTPD32는 첫번째로 부트 이미지의 파일이름을 포함하여,
IP 마당과 추가 네트웍 설정에서 제공된 IP 주소를 요청할 것이다.
.
IP 주소가 리턴되면, 이더넷 기판은 플래시 롬으로 구울 파일을 TFTP 서버로 요청한다,
마지막으로,  새롭게 적재된 응용 프로그램을 실행하는 메모리 주소 0x0000으로 점프한다.
만일 새로운 펌웨어를 굽고 싶다면, TFTPD32를 열고 펌웨어 파일 이름을 xxxxx,bin으로 지정해 주고 저장을 누릅니다.
그리고 ebbot.hex와 인터넷 웹페이지 펌웨어가 올라가 있는 기판의 리셋스위치를 누르면
새로운 다운로드 파일이 검출되면 eboot는 자동으로 펌웨어를 tftpd로 다운받아 작동시킵니다.
(만일 새로운 이름이 아닌, 이미 저장된 펌웨어라면, eboot는 리셋이 되어도 이미 구워져 있는 펌웨어를 작동시킵니다)
.
■ ImageCraft사의 ICCAVR 설정
아래와 같이 시작되면, ImageCraft사의 컴파일러는 부트로더용 원시 2진 파일을 직접 생성하지 못한다.
다행히, robi라고 이름진 간단한 도구는, 이 상태를 끝내기 위해 ICCAVR IDE 안으로 직접될 수 있다.
.
robi 내려받기, 풀기를 하고 robi.exe를 당신이 선택한 폴더로 이동한다.
오히려 당신의 ICCAVR은 PATH 환경변수 안에 bin 폴더 혹은 어떤 폴더를 포함한다.
  

ImageCraft IDE의 시작, 주 매뉴의 컴파일 옵션 대화창을 열고, 응용 프로젝트와 옵션을 읽는다.
성공적인 build 후에 실행되는 컴파일 옵션과 명령의 입력을 보여준다.
 
 
한번에 당신의 프로젝트를 구축한다. 출력에 따라서 IDE 상태창에서 추가적으로 출현한다.  
robi C:projsrcsthernet
utappicchttpdhttpd.exe ....inatmega128httpserv.bin
.
robi 보조도구(utility)는 응용 코드에 실어진 Hex 파일을 원시(raw) 이미지로 변환한다,
그리고 TFTPD의 기본 폴더안으로 저장한다.
.
(역자 주*)
이런 추가 기능을 컴파일러에 설정하기 어렵다면, Hex2Bin.exe를 입수하여,
매번  컴파일러가 생성한 Hex 파일을 Bin로 변환해도 된다.
.
■ 주의 사항
- 부트로더는 Nut/OS EEPROM 설정이 업데이트 되고 사용되어야 한다.
- 플래시 내용은 구운 뒤에 비교되어야 한다.
- PPP 지원을 추가.
- 업로드가 성공적으로 완료된 후, 수신된 이미지를 램에 임시 저장하고 플래시 굽기를 시작한다.
.
■ 바로가기
BOOTP과 DHCP에 대한 더 많은 정보는 http://www.dhcp.org/ 에 있습니다.
원저자 : http://www.ethernut.de/en/eboot/index.html

 AVRTOOLS™
   
윗글 AVR 8 RC-서보 뱀로봇 소스
아래글 AVR Studio SP498 사용 설명서
    N         제목    글쓴이 작성일 조회 추천
22 AVRISP-mkII-CL 사용방법(고급) avrtools™ 2011/07/30 (토) 2532 0
21 M328-mini V2.0 사용 설명서 avrtools™ 2011/08/29 (월) 1636 0
20 USB2serial V2.0 사용설명서 avrtools™ 2011/07/30 (토) 1538 0
19 AVR Studio에서 Jtagice-mkII로 펌웨어 굽기 leeky 2011/08/05 (금) 2350 0
18 USB2serial V1.0 사용설명서 avrtools™ 2011/07/30 (토) 1473 0
17 USBISP-mkII V2.0 사용설명서 leeky 2011/07/15 (금) 1597 0
16 USBISP-mkII V1.0 사용설명서 avrtools™ 2011/07/19 (화) 1585 0
15 AVRISP-mkII-CL 사용설명서 leeky 2011/07/15 (금) 1554 0
14 AVR JTAGICE MKII CL 설명서 avrtools™ 2009/09/25 (금) 2078 0
13 JTAGICE-mkII의 Debug WIRE 사용방법 avrtools™ 2009/10/15 (목) 1546 10
12 AVR STUDIO V4.12 SP498 설치파일 leeky 2007/11/10 (토) 2701 0
11 FT232 가상직렬포트 드라이버 leeky 2007/11/10 (토) 2224 0
10 MEGA128-MPU KIT 사용설명서 avrtools™ 2007/11/14 (수) 2330 0
9 MEGA128-NIC KIT V2.0 (인터넷 제어장치) leeky 2006/03/08 (수) 3417 2
8 AVR OSP II 사용 설명서 leeky 2007/11/10 (토) 2567 0
7 AVR 910-ISP V3.0 사용설명서 leeky 2007/11/10 (토) 2888 0
6 USB AVR-ISP 사용설명서 avrtools™ 2007/11/16 (금) 3499 0
5 AVR 8 RC-서보 뱀로봇 소스 leeky 2007/07/10 (화) 3421 0
4 M128-NIC KIT 2.0의 펌웨어를 이더넷으로 굽기. leeky 2006/04/15 (토) 2162 0
3 AVR Studio SP498 사용 설명서 leeky 2007/11/11 (일) 2887 0
2 AVR JTAGICE+AVRISP 사용설명서 leeky 2007/11/10 (토) 2692 0
1 USB-JTAGICE V2.0 사용 설명서 leeky 2007/11/10 (토) 2330 0
1

바구니 : 0
 보관함 : 0
오늘뷰 : 0
HOME   |   회사소개   |   제휴안내   |   회사위치   |   서비스이용 약관   |   개인정보 보호정책   |   사이트맵
17015 경기도 용인시 기흥구 동백중앙로16번길 16-25, 508호. 전화 : 031-282-3310
사업자 등록번호 : 697-47-00075 / 대표 : 이건영 / 업태 : 제조업 / 종목 : LED조명, LED전원, 제어장치.
개인정보 관리책임자 : 홈페이지 관리자 . Copyright ⓒ2016 아크레즈 (ACLEDS INC.)
HOME TOP PREVNEXT 0 0 0