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

 
 
> С++. Обмен с внешней памятью.
AlexOr
сообщение Jun 25 2005, 02:49
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 89
Регистрация: 30-12-04
Из: Санкт-Петербург
Пользователь №: 1 754



Возможности компилятора IAR:
uint8 __eeprom * p; //указатель на EEPROM
__eeprom uint8 a=1; //переменная в EEPROM
uint8 b=2; //переменная в RAM
Далее можно свободно творить такое:
*p = a + b;
Т.е. синтаксис как для обычных переменных без домыслов об их расположении.
Притом вместо uint8 может быть даже любой определенный typedef тип, например огромная структура.

ВОПРОС
Есть вот такие функции для взаимодействия с энергонезависимой памятью (FRAM):
void f24write(uint16 adr, void* p, uint8 num)
void f24read(void* p, uint16 adr, uint8 num)
где
adr – адрес в FRAM
p - указатель на RAM самого МК
num – количество байт.
Возможно ли реализовать с помощью C++ взаимодействие аналогичное по синтаксису с __eeprom?
Т.е. чтоб в итоге можно было писать, что типа того:
uint8 __fram * p; //указатель на FRAM
__fram uint8 a=1; //переменная в FRAM
uint8 b=2; //переменная в RAM
*p = a + b;
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:40
Рейтинг@Mail.ru


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