Здравствуйте!
Проблема примерно такая: нужно из основной(APROM) прошивки прочитать несколько байт в загрузчике (LDROM) - версия загрузчика. Почитал даташит, делаю примерно так:
CHPCON: equ 0bfh CHPENR: equ 0f6h SFRAL: equ 0c4h SFRAH: equ 0c5h SFRFD: equ 0c6h SFRCN: equ 0c7h
org 0 ljmp Reset
org 0bh clr tr0 clr tf0 reti
org 40h Reset: mov sp,#e0h mov pcon,#10000000b mov tmod,#00100001b mov ie,#00000000b setb et0 setb ea
mov CHPENR, #87h mov CHPENR, #59h mov CHPCON, #03h ; bank=4k,flash mode mov SFRCN, #01000000b ;ctrl0-3=0, CEN=0, OEN=0,WFWIN=1 ;затем, как я понял, нужно процессор увести в спящий режим, а после пробудить по таймеру mov tl0,#feh mov th0,#ffh setb tr0 orl pcon,#01h
mov SFRAH, #3 mov SFRAL, #0 mov r0, SFRFD ;первый байт inc SFRAL mov r1, SFRFD ;второй байт mov CHPENR, #0 ajmp PrintVer ;ухожу дальше по алгоритму
При выходе - в r0-r1 всегда нули. Что я делаю не так? )
|