티스토리 뷰
사람들에게 강의적인 정보를 제공하는 것도 아닌데 자꾸만 제목을 이상하게 뽑아서 죄송합니다.
제목과는 다르게 본문은 부트로더를 작성하며 부딪히는 저만의 문제를 다루고 있습니다.
부트로더를 만들면서 8KBytes(boot section flash) + 4KBytes(Internal RAM)안에 맛깔나는 코드를 집어넣기란 그렇게 쉽지 않은 문제입니다. 왜냐하면, 기본적인 환경설정용과 UART(고유패킷 처리)코드만 하더라도 3KBytes 를 넘기고 있습니다.
원래는 더 많은 크기를 자랑하였지만, 필수적인 코드들만 남기고 다 제거하였습니다.
통신패킷중 CRC 처리부분이 들어가 있어서 CRC Table 을 RAM 영역으로 옮기지 않게끔 하기 위해 __flash 란 IAR 컴파일러 지시자를 사용하였습니다.
그런데 이지시자가 어플노트가 제공한 .xcl 파일과는 맞지 않나봅니다.
링크과정시 아래와 같은 오류를 냅니다.
Fatal Error[e72]: Segment NEAR_F must be defined in a segment definition option (-Z, -b or -P)
세그먼트 NEAR_F 는 반드시 세그먼트 정의 옵션(-Z, -b or -P)으로 정의되어야 한다.
뭐 어쩌겠습니까? *.xcl 파일을 분석하느니, CRC Table 크기인 512Bytes 의 램영역을 포기하겠습니다.
자신감이 없으면, 뭐든지 피하고 보는것입니다.
'Hardware' 카테고리의 다른 글
“구운 CD의 수명은 기껏해야 5년에 불과” (0) | 2006.06.05 |
---|---|
AVR BootLoader 구성하기(3) (0) | 2006.06.03 |
AVR BootLoader 구성하기 (0) | 2006.06.03 |
PC용 리모콘 제작 (1) | 2006.06.03 |
ARM / PIC 관련 사이트 모음 (0) | 2006.06.02 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- diary
- Mabinogi
- Information Processor
- Assembly
- humor
- network
- Battle
- USB Lecture
- wallpaper
- BadCode
- win32
- Web Programming
- Embedded System
- 나비효과
- 막장로그
- medical
- C#
- cartoon
- Military
- WDB
- 짤방 및 아이콘
- 야마꼬툰
- console
- Tech News
- Linux
- Network Inspector
- Life News
- 프리랜서로 살아남는 법
- Reverse Engineering
- 3D Engine
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함