Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: WinAVR - опыт использования
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
serg_am
Всем привет!

Пользую довольно давно ломаный IAR-овский компилятор, хочу попробовать перейти на бесплатный компилятор WinAVR, тем более он сейчас интегрирован в AVRStudio4.12...

Поделитесь плиз, опытом использования AVRStudio4.12+WinAVR - удобство использования, количество глюков, может оптимальность генерируемого кода кто-то оценивал...
beer_warrior
http://electronix.ru/forum/index.php?showtopic=6786

Добавлю, что со студией интегрировать не советую, никак они не могут
нормально прикрутить.Используйте просто внешний редактор.
serg_am
Спасибо, не заметил долгоиграющую тему .. за время вашего обсуждения вышел очередной билд студио и даже сервиспак к нему
wink.gif
Под AVRStudio 4.12 SP2 тоже интеграция глючит?
Мур
Привет!
Дуй на книжный рынок, там в продаже книга "Программирование на языке С для AVR и PIC микроконтроллеров" автор Ю.А.Шпак изд "Випол" г.Киев тираж 2500! Там как раз об этом всё написано!
cranky.gif Для Pic-ов там описан CCS-PICC PCW 3.17!
haker_fox
Проблема с WinAVR20060421: объявляю массив
PROGMEM char boot_start_message[] = "Text";
На строка "Text" кладется в SRAM. Пробывал различные макроопределения из pgmspace.h - результат ноль. Чтение avr-libc результата не дало(( Что я делаю не так? Мне нужно объявить строку символов во FLASH памяти, без копирования первой в память данных.
Заранее спасибо!

P.S. Конечно можно и так "извращаться", но хочется не извращаться, а работать)
print_flash_string(PSTR("Board"));
beer_warrior
Цитата
Проблема с WinAVR20060421: объявляю массив
PROGMEM char boot_start_message[] = "Text";

Код
MenuItem_s        ParMItems[]
PROGMEM = {
{"Календарь", mh_Calendar, NULL, &ParMItems[1]},
.....

Для одиночной строки
Код
prog_char str_ok[]  = "<ok>";
zaman
Цитата
Привет!
Дуй на книжный рынок, там в продаже книга "Программирование на языке С для AVR и PIC микроконтроллеров" автор Ю.А.Шпак изд "Випол" г.Киев тираж 2500! Там как раз об этом всё написано!
Для Pic-ов там описан CCS-PICC PCW 3.17!


Да эта книга уже в нете лежит зачем ее покупать ? Да и местами там описание не очень
IgorKossak
Цитата(beer_warrior @ Jun 7 2006, 14:17) *
http://electronix.ru/forum/index.php?showtopic=6786

Добавлю, что со студией интегрировать не советую, никак они не могут
нормально прикрутить.Используйте просто внешний редактор.

Поддерживаю.
Здесь очень подробно всё обсуждалось.
IgorKossak
Здесь ещё одно более общее обсуждение.
Shurmas
Севетую интегрировать с VMLAB - работает безглючно.
Пример в VMLAB есть.
haker_fox
Цитата(Shurmas @ Sep 9 2006, 09:47) *
Севетую интегрировать с VMLAB - работает безглючно.
Пример в VMLAB есть.

bb-offtopic.gif ррррр)
haker_fox
Цитата(beer_warrior @ Sep 7 2006, 20:09) *
Цитата
Проблема с WinAVR20060421: объявляю массив
PROGMEM char boot_start_message[] = "Text";

Код
MenuItem_s        ParMItems[]
PROGMEM = {
{"Календарь", mh_Calendar, NULL, &ParMItems[1]},
.....

Для одиночной строки
Код
prog_char str_ok[]  = "<ok>";


Большое Вам спасибо, все работает. Оказывается все работает и по-моему примеру, приведенному выше. Я ориентировался по "показаниям" AVRStudio в окне Watch. Против переменной стояло место ее расположение в SRAM. Правда формат объектного файла, сгенерированного GCC, был ELF. При генерации файла в формате COFF все вствло на свои места.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.