2Nixon
Попробывал я обыграть макрос и в CodeVision прошел следующий вариант:
Код
#include "my_table.txt"
flash unsigned char my_array[] = in_table;
Включаемый файл при этом выглядел так:
Код
#define in_table {\
0x01, 0x02,\
0x03, 0x04 \
....
};\
Что еще приятно, работает sizeof
Код
a = sizeof(my_array);
2kOt
Вариант типа
Код
flash unsigned char my_array[]={#include "my_table.txt"};
в Code Vision не проходит?! Хотя все логично, тем более что в VDSP++ есть
подобная конструкция
2 Old1 & vet
По поводу конвертации бинарного файла я уже поднимал тему на форуме.
И программа BIN2ASC.exe показалась сперва чрезвычайно полезной, тем не менее мне пришлось
написать свою на Паскале, потому что я тогда работал на Ассемблере под AVR Studio
и программа не принимала сгенерированный ascii файл, по следующим причинам:
- она глючила на десятичные числа с нулями впереди, например 040 воспринимая их за операторы
- не понимала шестнадцатеричный формат без 0x - префикса (естественно)
- не признавала директиву db без точки впереди
- и к тому же, AVR Studio ругается на нечетное количество операндов в строке (наверное из-за
16 разрядной структуры памяти программ)
Код
.db 183, 001, 137, 255, 255, 134, 254, 255, 133, 255, 255, 255, 243, 041, 255,
а их то 11 то 15 штук в строке.
Любой после этого кинется писать свой конвертор.
2AndyBig и всем
Уже вижу что Си компиляторы все разные, может мне не стоит заморачиваться с Code Vision
, а сразу работать в IAR и т.п., что посоветуете.
Я то стартанул по известному курсу AVR123
http://electronix.ru/redirect.php?http://[banned]/. И могу сказать что Image Craft мне не нравится.
Он не генерит ассемблер, а самое главное ИМХО у него ограниченный Си.