arttab 0 26 октября, 2005 Опубликовано 26 октября, 2005 · Жалоба объявляю так #pragma location=0x0100 const __eeprom unsigned char Zone1 = 10; а как получить данные для прошивки eeproma? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Pat 0 26 октября, 2005 Опубликовано 26 октября, 2005 · Жалоба объявляю так #pragma location=0x0100 const __eeprom unsigned char Zone1 = 10; а как получить данные для прошивки eeproma? <{POST_SNAPBACK}> Посмтрите описание на прогу $\IAR\avr\bin\postlink.exe Сама дока лежит здесь $\IAR\avr\doc\postlink.htm Обратите еще внимание на $\IAR\avr\bin\postlink.bat Это вам поможет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arttab 0 27 октября, 2005 Опубликовано 27 октября, 2005 · Жалоба Хороший ответ для знающих инглиш на хорошем уровне, но не читавших доки по иару. Прошу объяснить для плохо знающего английский (для меня). Еще вопрос Пони и Аврил по разному работают с hex? Т.е. где они ожидают найти данные для еепрома? У аврила можно отдельно подключить прошивку еепрома, а единым файлом не поймет? Начел совет выставить интел расширеный и добавить в экстраопции -M(XDATA)0-_..X_EEPROM_END=(_..X_FLASH_END+1). Что то не получилось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 65 27 октября, 2005 Опубликовано 27 октября, 2005 · Жалоба объявляю так #pragma location=0x0100 const __eeprom unsigned char Zone1 = 10; а как получить данные для прошивки eeproma? <{POST_SNAPBACK}> Посмтрите описание на прогу $\IAR\avr\bin\postlink.exe Сама дока лежит здесь $\IAR\avr\doc\postlink.htm Обратите еще внимание на $\IAR\avr\bin\postlink.bat Это вам поможет <{POST_SNAPBACK}> Postlink уже давно obsolete. Все разруливается через опции линкера. Подробнее не скажу, копаться надо, давно было, все уже забыл. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arttab 0 28 октября, 2005 Опубликовано 28 октября, 2005 · Жалоба чего у меня получилось: если задать так #pragma location=0x0100 const __eeprom unsigned char Zone1 = 10; , то это константа по заданному сной адресу. а если так __eeprom unsigned char Zone1=100; , то это переменная с заданным значением где то в еепром. но сейчас ругается Error[e133]: The output format intel-extended cannot handle multiple address spaces. Use format variants (-y -O) to specify which address space is wanted пробовал в экстра опциях -Ointel-extended,(CODE)=%PROJ_NAME%.hex -Ointel-extended,(XDATA)=ee_%PROJ_NAME%.dat не помогает. или все правильно, а глючит иар на имеено этом проекте? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arttab 0 28 октября, 2005 Опубликовано 28 октября, 2005 · Жалоба выставил в debug info и все пошло А создать переменную по заданному адресу никак? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nml 0 28 октября, 2005 Опубликовано 28 октября, 2005 · Жалоба выставил в debug info и все пошло А создать переменную по заданному адресу никак? <{POST_SNAPBACK}> -we133=i -Ointel-extended,(CODE)=$PROJ_DIR$\rxd8535.hex -Ointel-extended,(XDATA)=$PROJ_DIR$\ee_rxd8535.hex Это по линковке... volatile __eeprom char e_stupVN @0x17 = 0x90; Это по адресу Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_artem_ 0 29 октября, 2005 Опубликовано 29 октября, 2005 · Жалоба ya vose ne ispolziyu iar dlya eeprom hex'a. Sdelal svoy initialayzer . On rabotayet s simvolami , mozno ukazivat adresa v eeprome stringi i vse tomu podobnoe - programma preobrazovivaet ix v intel format .A vixodnoy file ya potom zapisivayu programmatorom. Naverno bilo len razboratsya v IAR'e )). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Gematogen 0 31 октября, 2005 Опубликовано 31 октября, 2005 · Жалоба выставил в debug info и все пошло А создать переменную по заданному адресу никак? <{POST_SNAPBACK}> Я у себя в IAR(4.11A) поступаю следующим образом: #pragma location=0x00 __eeprom unsigned long BOOT_FLAG=0xХХХХХХХХ; #pragma location=0x04 __eeprom unsigned long APP_SECT_CRC1=0xХХХХХХХХ; ДЛЯ ЛИНКЕРА: выходной формат: debug information for C-SPY в экстра опшинсах линкера: -Ointel-extended,(CODE)=$PROJ_DIR$\Release\Exe\code.hex -Ointel-extended,(XDATA)=$PROJ_DIR$\Release\Exe\eeprom.eep В результате он нормально генерит код в code.hex и данные вида 0xXXXXXXXX в eeprom.eep. Дальше через Image Craft или CodeVision заливаю оба файла и все путем! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arttab 0 1 ноября, 2005 Опубликовано 1 ноября, 2005 · Жалоба делал так: #pragma location=0x10 __eeprom unsigned long S_nombe=0xFFFFFFFF;//íîìåð ïðèáîðà а он мне ошибку выходной формат: debug information в экстра опшинсах линкера прописал что нужно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Gematogen 0 3 ноября, 2005 Опубликовано 3 ноября, 2005 · Жалоба делал так: #pragma location=0x10 __eeprom unsigned long S_nombe=0xFFFFFFFF;//íîìåð ïðèáîðà а он мне ошибку выходной формат: debug information в экстра опшинсах линкера прописал что нужно <{POST_SNAPBACK}> Очень странно, т.к. такая ошибка возникает, если кроме Output файлов, указанных в Extra Otions, для Linker на вкладке Output выбран формат intel-extended, а не debug information for C-SPY. И тогда линкер не может в один файл записать код и данные eeprom -> (Error[e133]: The output format INTEL-EXTENDED cannot handle multiple address spaces). Если на вкладке линкера выбран debug information for C-SPY, а IAR выдает такую ошибку, то может быть компилятор и глючит, но я в таких ситуациях потом всегда находил где-то свой ляп и выяснял, что сам сглючил :smile3046: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться