[an error occurred while processing this directive]
|
.
.
unsigned char code *pread;
pread = 0x3600;
us=*pread; // вот сюда обрати внимание
//C:0x00F3 8F82 MOV DPL(0x82),R7
//C:0x00F5 8E83 MOV DPH(0x83),R6
.
.
//cтирание памяти и т.д.
FLKEY=0xa5; //ввод ключей
FLKEY=0xf1; //flash разблокированна
PSCTL|= 0x03; //разрешаем flash запись
*pwrite = 0xff;
PSCTL = 0x00; //запрещаем flash запись
.
.
в таком виде не читает память, а если после строчки "us=*pread;" ставишь вызов, пустой функции или любой цикл то сразу меняется ассемблерный листинг
unsigned char code *pread;
pread = 0x3600;
us=*pread; // вот сюда обрати внимание
//C:0x00F5 850B82 MOV DPL(0x82),0x0B
//C:0x00F8 850A83 MOV DPH(0x83),0x0A
//C:0x00FB E4 CLR A
//C:0x00FC 93 MOVC A,@A+DPTR
//C:0x00FD FF MOV R7,A
del();
.
.
.
//cтирание памяти и т.д.
FLKEY=0xa5; //ввод ключей
FLKEY=0xf1; //flash разблокированна
PSCTL|= 0x03; //разрешаем flash запись
*pwrite = 0xff;
PSCTL = 0x00; //запрещаем flash запись
.
.
del ()
{
}
как так может быть?
E-mail: info@telesys.ru