реклама на сайте
подробности

 
 
> запись в eeprom
sergey sva
сообщение Sep 21 2008, 08:37
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923



Помогите разобраться с проблемой. Компилятор sdcc микроконтроллер at89c51ed2.
для записи в епром использую такую функцию:
Код
//--------------------------------------------------------------------------------------------------
void EEPROM_WRITE(unsigned int adress, unsigned char dan)
{
bit EATEMP=0;
while(EECON & 0x01){}
   EATEMP=EA;
   EA = 0;

EECON = 0x02;

*(( unsigned char __xdata*)adress) = dan;

EECON = 0x00;

EA    = EATEMP;
}// end void EEPROM_WRITE(unsigned char adress, unsigned char dan)
//--------------------------------------------------------------------------------------------------


в кейле это работает в sdcc не хочет. Вот сгенерированный sdcc асм .

Код
;    -----------------------------------------
_EEPROM_WRITE:
    mov    r2,dph
    mov    a,dpl
    mov    dptr,#_EEPROM_WRITE_adress_1_1
    movx    @dptr,a
    inc    dptr
    mov    a,r2
    movx    @dptr,a
;    DOP_FUNC.C:170: while(EECON & 0x01){}
00101$:
    mov    a,_EECON
    jb    acc.0,00101$
;    DOP_FUNC.C:171: EATEMP=EA;
    mov    c,_EA
    mov    _EEPROM_WRITE_EATEMP_1_1,c
;    DOP_FUNC.C:172: EA = 0;
    clr    _EA
;    DOP_FUNC.C:174: EECON = 0x02;
    mov    _EECON,#0x02
;    DOP_FUNC.C:176: *(( unsigned char __xdata*)adress) = dan;
    mov    dptr,#_EEPROM_WRITE_adress_1_1
    movx    a,@dptr
    mov    r2,a
    inc    dptr
    movx    a,@dptr
    mov    r3,a
    mov    dptr,#_EEPROM_WRITE_PARM_2
    movx    a,@dptr
    mov    dpl,r2
    mov    dph,r3
    movx    @dptr,a
;    DOP_FUNC.C:178: EECON = 0x00;
    mov    _EECON,#0x00
;    DOP_FUNC.C:180: EA    = EATEMP;
    mov    c,_EEPROM_WRITE_EATEMP_1_1
    mov    _EA,c
    ret
;------------------------------------------------------------
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 12:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01321 секунд с 7
ELECTRONIX ©2004-2016