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

 
 
> WinAVR: Организация смешенного чтения байтов, слов из таблицы во flash-памяти программ, Есть ли такая возможность ?
MaxiMuz
сообщение Mar 21 2012, 07:53
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 253
Регистрация: 15-04-10
Из: Волгоград
Пользователь №: 56 658



Таблица представляет из себя чтото типа:
Код
uint8_t tabl[] PROGMEM={0x00,0x12ff,0x02,0x0100,0x40,0x0020,0x3f,0x1000};

чередование целых байтов и слов.
Задается указатель на начало таблицы и затем с помощью команды pgm_read_byte (Ptabl) или pgm_read_word (Ptabl) по порядку читается байты и слова. Но проблема в том, как в записи таблицы корректно указать размер ее содержимого.
Возможно ли вообще такое обращение ?

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MaxiMuz
сообщение Mar 22 2012, 06:15
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 253
Регистрация: 15-04-10
Из: Волгоград
Пользователь №: 56 658



цель такой таблицы это простота ее заполнения , а при написании структуры , там писанины получиться много
Go to the top of the page
 
+Quote Post
Палыч
сообщение Mar 22 2012, 08:37
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(MaxiMuz @ Mar 22 2012, 10:15) *
писанины получиться много

Тогда, как вариант - два массива:
1. Массив данных. Типа того, что вы представили, но с типом элементов массива максимально возможного размера (если, как у Вас - байты и слова, то массив слов).
2. Массив типов данных. Каждый элемент этого массива некое число, характеризующее тип соответствующего элемента первого массива. Например: 0 - байт, 1 - слово...

Т.е., из первого массива считываем элемент (для Вашего примера - всегда слово); считываем из второго массива признак типа элемента первого массива; при необходимости производим преобразование типа; что-то с преобразованными данными делаем (Вы не привели информацию об использовании этих данных).
Go to the top of the page
 
+Quote Post



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

 


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


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