Господа помогите пожалуйста разобраться с внешней памятью .Работаю так
Код:
|
//указатель на ячейки внешнего ОЗУ начало ox260
#define MEM(adr) ( * ( unsigned char * ) (0x260 +(adr) ) )
в main
do
{
if(Ready)
{
MEM(k)=freq; //запишем в ОЗУ байт
k++;
freq++;
if(freq==254) freq=0;
Ready=0; //Сбросили готовность
}
}
while(!(k==65535)); |
Пока работаю в нижней части памяти (до 3276
![Горд собой](images/smilies/icon_dovl.gif)
все замечательно. Выше начинаются ошибки.( разные в зависимости от адреса)
![Обижен](images/smilies/icon_beee.gif)
Где я неправ?
Вопрос закрыт.Проблема была в периодически протухающем стабилизаторе.( Отловил только с помощью хорошего осциллографа).Вторая ошибка: верхняя граница k должна быть (0xFFFF- 0x0260).