|
GCC: Как подключить файл-таблицу в ПЗУ |
|
|
|
 |
Ответов
|
Sep 24 2012, 18:58
|
Гуру
     
Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322

|
Цитата(MaxiMuz @ Sep 24 2012, 21:08)  Имеется обьемная таблица , ну к примеру в 16тиричных кодах. Как не вписывая ее в листинг , вживить в код программы. "В листинг" - это в текст? Зашейте её программатором во flash. Цитата(MaxiMuz @ Sep 24 2012, 21:08)  И каким образом получать к ней доступ? Есть ли такая возможность ? Возможность есть. В ИАР-е жто было бы так (примерно): Код unsigned char _flash * ptr=(unsigned char _flash * )0x1234; unsigned char A=*ptr; В AVRGCC для чтения можно использовать pgm_read_byte и тп функции (avr/pgmspace.h).
|
|
|
|
|
Sep 25 2012, 16:56
|

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

|
Цитата(_Артём_ @ Sep 24 2012, 21:58)  "В листинг" - это в текст? Да, чтобы данные не переводить в текст и не писать потом много цифорок в Си программу, хотелось бы подключить, какимто образом, таблицу в виде отдельного файл (неважен формат). Так что бы можно было данные с этой таблицы считывать в программе. С библ-й (avr/pgmspace.h) и функцией pgm_read_byte я знаком. Там ничего полезного не нашел. ReAl с бинарником более менее понятно, но потом как я понял, данные перемещаются в секцию .data которая копируется в ОЗУ , или я чтото не так понял ?
|
|
|
|
|
Sep 25 2012, 17:12
|

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

|
Цитата(_Артём_ @ Sep 25 2012, 20:00)  Разве функция чтения байта-слова по адресу не то, что нужно в вашем случае? Еще раз. Т.о. Код uint8_t tabl[] PROGMEM={0,1,2,3,4,20,30,100,250}; обычно вставляются в программу какиелибо данные , если данных много , то такая запись будет не удобна для читаемости программы или просто громоздко.
|
|
|
|
Сообщений в этой теме
MaxiMuz GCC: Как подключить файл-таблицу в ПЗУ Sep 24 2012, 18:08 DRUID3 ...в код!? А что оно? Потом программа к нему о... Sep 24 2012, 18:39    _Артём_ Цитата(MaxiMuz @ Sep 25 2012, 20:12) Т.о.... Sep 25 2012, 17:18     MaxiMuz Цитата(_Артём_ @ Sep 25 2012, 20:18) Можн... Sep 25 2012, 17:22      _Артём_ Цитата(MaxiMuz @ Sep 25 2012, 20:22) Как ... Sep 25 2012, 17:31     Владивольт Цитата(_Артём_ @ Sep 25 2012, 20:18) Данн... Oct 17 2012, 21:38      SyncLair Цитата(Владивольт @ Oct 18 2012, 01:38) э... Oct 17 2012, 22:00  XVR Цитата(MaxiMuz @ Sep 25 2012, 20:56) ReAl... Sep 26 2012, 07:28  ReAl Цитата(MaxiMuz @ Sep 25 2012, 19:56) ReAl... Sep 26 2012, 08:58 ReAl Цитата(MaxiMuz @ Sep 24 2012, 21:08) к пр... Sep 24 2012, 19:03 MaxiMuz ReAl, да Спасибо за подсказку
в FAQ к GCC нашел ещ... Sep 27 2012, 12:15 MaxiMuz с помощью команды Кодavr-objcopy --rename-section ... Sep 29 2012, 12:10 ReAl Не знаю. Это надо смотреть Makefile, что где лежит... Sep 29 2012, 14:02 MaxiMuz Показываю:
Код# MCU name
MCU = attiny13
# Process... Sep 29 2012, 14:20 ReAl Ну так Glue.o нигде не прописан как нужный в проек... Sep 29 2012, 21:44 MaxiMuz Цитата(ReAl @ Sep 30 2012, 00:44) Ну так ... Sep 30 2012, 07:47  XVR Цитата(MaxiMuz @ Sep 30 2012, 11:47) Да, ... Sep 30 2012, 10:20   MaxiMuz Цитата(XVR @ Sep 30 2012, 13:20) Для нача... Oct 17 2012, 11:50    XVR Цитата(MaxiMuz @ Oct 17 2012, 15:50) Нет ... Oct 17 2012, 15:43 MaxiMuz Со вставкой текста в PROGMEM все ясно. И всеже как... Oct 23 2012, 12:27 ReAl Цитата(MaxiMuz @ Oct 23 2012, 15:27) И вс... Oct 23 2012, 16:12
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|