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

 
 
> Вопрос по использованию внешней памяти на ATMega162
skvortsov
сообщение May 6 2006, 09:05
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 5-05-06
Пользователь №: 16 799



Если подключить к меге162 внешнюю SRAM (32 или 64 Кбайта например), то как указать Си-компилятору, что в его распоряжении не 1К а 64К памяти?

Второй вопрос - если мне при этом надо будет использовать периодически порты A и C для ввода-вывода данных, то смогу ли я выключив режим внешней SRAM прочитать данные из этих портов, сохранить их во внутренней SRAM, потом включить опять внешнюю SRAM и скопировать в нее нужные мне данные? То что включить/выключить внешнюю память можно, это ясно. А вот как указать, что в момент, когда внешняя память выключена, временный буфер данных надо хранить во внутренней SRAM?

Спасибо за хелп!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KRS
сообщение May 6 2006, 09:31
Сообщение #2


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Надо написать XCL файл и для внешней памяти указать другой сегмент данных для того что бы объявить 2 буффера один во внутренней памяти, другой во внешней и использовать их по мере необходимости примерно так
Код
char IntBuf[256]; // будет в сегменте по умолчанию NEAR_Z
__no_init char ExtBuf[4096]@"EXT_SRAM"; //а вот этот сегмент надо добавить в XCL файл


Есть еще вариат не заморачиваться с XCL файлом а прямо указать адрес буфера
Код
__no_init char ExtBuf[4096]@0x8000;
Go to the top of the page
 
+Quote Post



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

 


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


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