하드웨어2009. 3. 19. 15:52
이넘은 ISP는 ISP가 맞는데 내가 아는 AVR의 ISP가 아니다.
일단 AVR의 경우에는 칩에 포함되어서 별도의 프로그램을 내장 플래시에 저장하지 않는데,
Winbond의 칩은 ISP 사용시, 부트로더/펌웨어를 내장해야한다.

예를 들어
프로그램은 0x0000 에서 시작하고 (APROM APplication ROM?)
부트로더는 0x1000 에서 시작한다 (LDROM LoaDer ROM?)

[참고 : http://club.paran.com/club/home.do?clubid=dig-bbsView.do?menuno=13911-clubno=69-bbs_no=0NHIR]


The W78E516 microcontroller from Winbond is the manufacturer's first 8051 derivative device to offer In-System Programming (ISP). It is also the industry's first 8051based device to provide two separate on-board flash ROM's - 64k of application ROM (APROM), and a loader ROM (LDROM) of 4k. Either ROM can program the other without external programming voltages or hardware. And, because both ROMs are blank when the devices are manufactured, software developers are free to implement their own loader program rather than being tied to a specific serial type interface.
[출처 : http://www.8052.com/news?NEWSID=5]


간단하게 말하자면, 위의 64K 내장 플래시의 경우에, 이러한 ISP 기능을 이용하기 위해서는
4K의 공간을 Loader용으로 사용하고, 총 60K의 영역만을 프로그램으로 사용할 수 있다.
그리고 메인 프로그램에서 특정 조건일 경우에는 Loader를 실행하도록 프로그램을 짜주어야 한다.
예를 들어 부팅시에 점퍼에 의해서 풀업/풀다운을 확인하여 조건에 맞으면 바로 0x1000 번지를 실행하도록 구성을 하면된다.
Posted by 구차니