char xdata *ptr ;
char xdata s;
/*****/
/* main */
ptr=0;
while (1) {
/*1*/
cbyte=0x55;
*ptr=cbyte;
byte=*ptr;
printf ("Error adr=%x write: 0x55 read : %x\n",(int)ptr,byte); //Тут всегда выдает 0
ptr++;
/* 2*/
cbyte=0x55;
s=cbyte;
cbyte=c;
printf ("Error adr=%x write: 0x55 read : %x\n",(int)ptr,byte); //тут все правильно
};
В дебагере все работает без проблем. На реальном устройстве работает только /* 2 */ , /* 1 */ не работает в чем может быть проблема ?
Keil McS-51 Доступ к внешней памяти xdata
- Реклама