dimitryl
Участник-
Постов
17 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о dimitryl
-
Звание
Участник
- День рождения 22.04.1978
Контакты
-
Сайт
Array
-
ICQ
Array
-
Анализ протокола обмена
dimitryl ответил andyg тема в RS232/LPT/USB/PCMCIA/FireWire
можно попробовать HHD Software Serial Monitor Pro - позволяет воткнуться между двумя устройствами и проанализировать кто что передает. хм... если используется 2 ком порта чтоб снимать протокол - все просто: rx - прием, tx - передача если ком1 подключен на линию rx CD-ченджера - это прием от управляещего устройства, тогда ком2 - ответы ченджера -
http://www.google.ru/search?q=iarunicrk&am...art=10&sa=N 4 пункт сверху там можно заметить ссылочку на народ....
-
скачать с сайта иара, потом - iarunicrack. ewavr-ev-web-510A работает.
-
AVR32: AP7000: Image Sensor Interface (ISI)
dimitryl ответил Busel Roman тема в AVR32
Самый простой способ - статически выделить память под эти буфера. в случае динамического выделения памяти из кучи (как у вас, если я правильно понял) нужно будет переписывать фукции работающие с памятью (malloc/calloc/new....). Установить какие-либо определенные границы для указателя нельзя(. -
AVR32: AP7000: Image Sensor Interface (ISI)
dimitryl ответил Busel Roman тема в AVR32
Указатель это просто переменная, если нужно чтоб он не выходил за определенные границы - его надо контролировать. -
AVR32: AP7000: Image Sensor Interface (ISI)
dimitryl ответил Busel Roman тема в AVR32
char *buf; // указатель int adr=(unsigned int)buf; // получаем значение указателя int *pInt=(int*)buf; // приводим указатель к типу int* -
в МДК включен \ARM\BIN31\fromelf.exe который как раз и генерит hex-файл его можно отдельно запустить с ключем "--bin" - на выходе будет Plain Binary. только он конвертирует .elf(.axf) получаемый на выходе линковщика. если нужно именно из .hex - то утилитки hex2bin.
-
к сожалению миграция невозможна(
-
среда Keil RealView MDK ARM 3.11
-
Доброго времени суток)) Хотелось бы расположить структуру в самом конце используемого флеша flash_data.c: const int Fdata[3] = { 1, 2, 3}; использую для этого скаттер: LR_IROM1 0x40002000 0x0003E000 { ; load region size_region ER_IROM1 0x40002000 0x0003E000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) flash_data.o (*, +Last) } RW_IRAM1 0x20000040 0x0000FFC0 { ; RW data .ANY (+RW +ZI) } } почти получается - струтура ложиться самой последней из RO секций, но ...я так понял далее идет все то, что дожно при старте быть скопировано в РАМ (функции, ...), и никак не могу понять как положить структуру после них.
-
В этом конкретном примере не совсем правильная работа с регистровыми переменными, приводящая к появлению лишней команды копирования из регистра в регистр. Ну а в виде MOV R16, R24 MOV R24, R16 по моему заставляет улыбнуться.
-
IAR Atmel AVR C/C++ Compiler V4.21A/W32, Evaluation Version btTemp далее не используется. компилировалось с ключом -s2 (Best debug support) листинг: 1) 129 Uart1_context.bTxCount= btTemp + 1; \ 00000084 2F08 MOV R16, R24 \ 00000086 9503 INC R16 \ 00000088 9300.... STS (Uart1_context + 2), R16 2) 129 Uart1_context.bTxCount= ++btTemp; \ 00000084 9583 INC R24 \ 00000086 2F08 MOV R16, R24 \ 00000088 2F80 MOV R24, R16 \ 0000008A 9300.... STS (Uart1_context + 2), R16
-
в кейле вроде такого нет. а в VS есть nmake - написал мейкфайл и все компилиться)) и связка VS+VA очень удачная - особенно если в VA платформы прописать - под каждую платформу свой набор .h да, про минус забыл - отладчик не прикрутишь... приходиться пользовать AStudio и uVision)).
-
Программатор AVR
dimitryl ответил Silent Bob тема в AVR
Altera Byte-Blaster + Avreal ))) в CVAVR tools->configure->add добавляете коммандную строку или батник для прошивки. После компиляции проекта - shift-F6 (или кака там будет) и все - мк зашит. PS. прошу прощения, внимательно прочитал - нужен параллельный))) это для последовательного. Если поддерживает ком.строку - то идея та же. -
Добрый день, насколько я понял это проблема не ИАП а в какие адреса компилятор кладет скомпилированный код пользуюсь кейлом там в файле startup.s есть такое: // Starupt Code must be linked first at Address at which it expects to run. $IF (EXTMEM_MODE) CODE_BASE EQU 0x60000000 $ELSEIF (RAM_MODE) CODE_BASE EQU 0x20000000 $ELSE CODE_BASE EQU 0x40000000 $ENDIF если это дело решать "в лоб" то можно оставить только строку CODE_BASE EQU 0x40000000 если правильно то расположение кода можно выбрать в настройках компилятора. )) надеюсь поможет.