Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Какую среду разработки Вы используете?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2
defunct
Давно мечтал услушать все "за" и "против", о популярных средах программирования для AVR uC.
Всех сред разработки я знать не могу smile.gif
поэтому если в списке Вы не нашли того с чем работаете, указывайте ее в сообщениях smile.gif

Сам я использую в основном AVR-Studio в комбинации с gcc, из-за наиболее, на мой взляд, удобного отладчика, который отображает значения переменных/регистров в всплывающих подсказках прямо в тексте отлаживаемых модулей, а также из-за эмулятора, предоставляемого разработчиком uC, доверее к которому много выше чем к эмуляторам сторонних разработчиков.

В IAR-е помоему отсутствует такая возможность, сколько не ковырялся в настройках так и не нашел где можно включить отображение значений переменных в режиме отладки, или я не прав?
Хотя код сгенерированный IAR'ом и получается меньшего объема, но удобная отладка как для меня важнее..
haker_fox
Использую IAR EWAVR 4.11A + AVRStudio: код, как вы говорили, компактнее, а отладка в AVRStudio по исходному "сишному" тексту - одно удовольствие. Правда аппаратно-независимые алгоритмы иногда моделирую в том же Borland C++ Builder или в др. Потом переношу на МК.

В прекрасном будущем smile.gif хочу забодать JTAG...
defunct
Цитата(haker_fox @ Feb 2 2006, 02:18) *
Использую IAR EWAVR 4.11A + AVRStudio...


А можно приручить IDE AVR-Studio чтобы ввод и редактирование исходников делать в AVR-Studio и по нажатию F7 проект компилировался IAR'овским компилятором?


Цитата
В прекрасном будущем smile.gif хочу забодать JTAG...


А чего ж так долго тянете? JTAG собирается на монтажке за полчаса ;>
Схема упрощается до (mega16+max+5 конденсаторов+ 4 резистора и 1 светодиод)
Proton
Счмтаю что нужно добавить IAR EWAVR + AVRStudio так как на чистом асме писать сложные алгоритмы долго, а отлаживать сишный код удобно в AVRStudio. А вообще в основном пользуюсь связкой IAR EWAVR + AVRStudio + Proteus.
haker_fox
Цитата(defunct @ Feb 2 2006, 12:44) *
Цитата(haker_fox @ Feb 2 2006, 02:18) *

Использую IAR EWAVR 4.11A + AVRStudio...


А можно приручить IDE AVR-Studio чтобы ввод и редактирование исходников делать в AVR-Studio и по нажатию F7 проект компилировался IAR'овским компилятором?


Цитата
В прекрасном будущем smile.gif хочу забодать JTAG...


А чего ж так долго тянете? JTAG собирается на монтажке за полчаса ;>
Схема упрощается до (mega16+max+5 конденсаторов+ 4 резистора и 1 светодиод)


1. Думаю, что да, ведь компилятор IAR это консольное приложение, которому параметры передаются из командной строки. Как это сделать, подсказать не берусь, не делал, копать надо в меню Tools AVRStudio. Но вот хочу найти какой-нибудь подходящий редактор (UltraEdit например) и к нему прикрутить и IAR и др. компиляторы. Чтобы писать программы для МК, компьютера в одном редакторе.

2. Да, JTAG несложно собрать, но как всегда время... работа, учеба, домашние заботы... отговорки конечно, но это так...
Извиняюсь за OFFTOPIC
Георгий
IAR EWAVR + AVRStudio
dxp
Проекты смешанные C++/Asm с подавляющей по объему долей С++ - асм только где-то во обработчиках прерываний и очень, очень редко, уже и не помню, когда в последний раз пользовался в рабочем проекте.

В качестве инструментария: пакет EWAVR + мощный сторонний программерский редактор SlickEdit. Сборка под управлением gnu make, от самого EWAVR используеются компилятор, асм, линкер, библы, ессно, ну, словом, все то, что необходимо для компиляции. Саму оболочку использую только для запуска C-SPY.

По поводу симулятора. Симулятор как таковой в системах на МК вещь весьма бесполезная. Поясню. Симулятор - система симулирующая (или, как это происходит на практике, пытающаяся это делать) работу программы в реальных условиях. Поскольку условия реальные воссоздать крайне сложно, если вообще возможно, то и результаты симуляции получаются соответствующими. Но все это не означает, что то, что называют симуляторами есть бесполезные вещи. Если использовать симулятор для моделирования, то в этом случае есть приличный смысл в таких программах. Что понимается под моделированием? Под моделированием понимается прогон какого-то фрагмента кода (или части программы) при искусственном создании условий и наблюдение за поведением программы в этих условиях.

Например, мне надо отладить прием пакетов по UART. При этом меня интересует именно правильность приема байтов, проверка заголовка пакета, контрольной суммы и т.д. И для этого мне надо, чтобы на вход применика, а точнее в регистр данных приемника UART поступали эти самые байты.

Как добиться этого от симулятора, который честно, якобы, симулирует периферию МК? Я должен в этом случае создать довольно длинный и сложный стимул на соответствующюю ножку МК. Этот стимул руками писать замучаешься, да еще и ошибок наделаешь. Надо какую-нито утилитку для этого соорудить. И отладить. Возни, короче, выше ушей.

А вот как эта задача решается на "моделяторе" C-SPY. Там для этого существуют специальные макросы, позволяющие смоделировать требуемую ситуацию. Например, для упомянутого случая пишем такой код:

Код
__var T_C0_period;
__var UART_Rx_period;
__var UDR;
__var fid;

RxIn()
{
    UDR = __readFile(fid);
    __writeMemoryByte (UDR, 0x0c, "I/O-SPACE");
}


execUserSetup()
{
    T_C0_period    = 10000;
    UART_Rx_period = 8000;

    __cancelAllInterrupts();        

    __orderInterrupt("TIMER0 OVF", 1000000, T_C0_period, 0, 0, 100); // set T_C0 overflow interrupt
    __orderInterrupt("USART RXC",  1151690, UART_Rx_period, 0, 0, 100); //

    __setSimBreak("0x0c", "I/O-SPACE", 1, 1,"", "TRUE", "I", "RxIn()");

      
    fid = __openFile("uart.dat", "r");
    __message "fid = ", fid, "\n";      // debug
    __message "err = ", err, "\n";    // debug
}

execUserExit()
{
    __cancelAllInterrupts();

    if(fid)
    {
        __closeFile(fid);
    }  
}


Как это работает. В системном макросе execUserSetup() происходит настройка моделятора - задаются прерывания, макросы, открывается на чтение файл "uart.dat".

Далее каждые 10000 тактов происходит прерывание от Т/С0. Каждые 8000 тактов происходит прерывание от приемника UART. При этом точно перед обращением к регистру UDR в программе (в обработчике прерывания) C-SPY генерирует так называемый immediate break при котором вызывается пользовательская функция-макрос RxIn(), в которой происходит считывание из файла очередного значения и запись его по указанному адресу, который является как раз адресом регистра UDR, после этого работа функции заканчивается и исполнение программы продолжается, но МК считывает из UDR то самое значение из файла. При следующем входе будет считано следующее значение. И т.д. Если в файле "uart.dat" было записано ff 13 0 0 1 12, то при первом прерывании будет считано ff, при втором 13, далее 0, 0, 1, 12, после этого все пойдет по кругу, но нас это уже не интересует - мы смогли спокойно посмотреть, как обработчик прерывания, получая байты от приемника UART, их обработал, весь пакет.

Далее, например, мы хотим смоделировать ситуацию, когда возникает наложение прерываний (в случае разрешения вложенных прерываний). Для этого достаточно просто указать нужные значения моментов времени (в тактах) активации прерываний и их периодов. Например, я знаю, что программа находится в прерывании от UART'а на 12530-м такте и выходит из него на 12555-м такте. Тогда задаю время активации прерывания от таймера, скажем, на 12540-м такте и спокойно наблюдаю, как обработчик прерывания прерван другим прерыванием, как работает сохранение контекста, как расходуется стек в этой более требовательной к размеру стека ситуации. Попробуйте это сделать на симуляторе, который честно симулирует периферию. smile.gif

Или, скажем, надо мне смоделировать обработку потока данных от АЦП. Все аналогично, записываю во внейшний файл значения отсчетов, задаю __setSimBreak, макрос-функцию считывания данных из файла и вуаля. Полная гибкость и управляемостьь процессом моделирования. А симулятор честный годится только на то, чтобы посмотреть, как периферия инициализировалась (хотя это и в моделяторе можно посмотреть) да как, к примеру, таймер щелкает. Т.е. при начальном освоении МК эти вещи полезны, но в дальнейшем при серьезной работе от них толку почти никакого, когда есть такой инструмент, как C-SPY.

Исходя из вышесказанного, AVR Studio как средство отладки в режиме симулятора не представляется достойным инструментом по сравнению с тем же C-SPY. В режиме эмулятора (при использовании аппаратного эмулятора), конечно, ситуация другая. Но и тут C-SPY на высоте, ничем не уступает (в последней версии 4.12 научился наконец работать через USB). И по факту удобнее. В студии, к примеру, до сих пор нету окошка Locals. Вроде вещь элементарная и нужная, а до сих пор не сделали. У студии одно безоговорочное преимущество - она бесплатная. smile.gif

Никого задеть и обидеть ни в коем случае не хотел, просто, как показывает опыт, народ в массе не знаком с возможностями моделятора C-SPY и нередко плюется от него. А зря. smile.gif
BVU
Однозначно IAR-EWAVR ( C ), но для полноты списка в опроснике по моемому недостает некоторых комбинаций, например:
IAR-EWAVR ( C ) + AVR-Studio
unichorn
WinAVR + AVR-Studio + Cpp Builder smile.gif
muravei
Использую Алгоритм билдер, устраивает симулятор.
IgorKossak
Поскольку использую IAR EWAVR + JTAG эмулятор, то в AVR Studio нет никакой необходимости (равно как и в Протеусе).
К тому же IAR выдаёт отладочный файл в форматах новее, чем ubrof8 (пишу на С++ с применением шаблонов), поэтому использовать AVR Studio не всегда и возможно.
Polaris
Использую CodeVision + AVRStudio.
Да, есть глюки в нем, но в плане оптимальности и скорости разработки он прекрасен. Возможно, что для больших приложений лучше IAR, спорить не буду.
Но вот GCC однозначно отстой. Отлаживал одно приложение (работа с SD-картами и поддержка FAT), так одна и та же программа на GCC валилась по причине переполнения стека, а увеличивать его уже не давала - не хватало памяти. CodeVision же справлялся
Rash
Использую IAR EWAVR + JTAG mk2 эмулятор, а AVR Studio для лучшей наглядности регистров и памяти, и если сам в программе не на бочил, то всё работает на УРА.
defunct
Цитата(IgorKossak @ Feb 2 2006, 10:08) *
Поскольку использую IAR EWAVR + JTAG эмулятор, то в AVR Studio нет никакой необходимости (равно как и в Протеусе).


Скажите, а в EWAVR имеется возможность изменения узлов MK в процессе отладки? (изменение значения порта или таймера, возможность возбуждения прерывания.) И насколько стабильно он себя ведет? Просто у меня EWAVR 4.10B равно как и 4.11A неоднократно наглухо подвисал в процессе отладки, и подвешивал JTAGICE. С Avr-Studio такого ни разу не наблюдалось.

Цитата(dxp @ Feb 2 2006, 09:17) *
C-Spy
...
Как это работает.
...


Большое спасибо, за то, что познакомили с ценным инструментом и приведенный пример.


Цитата(BVU @ Feb 2 2006, 09:36) *
в опроснике по моемому недостает некоторых комбинаций, например:
IAR-EWAVR ( C ) + AVR-Studio


Ну, я как бы не ставил целью определить умение наших специалистов работать в нескольких средах. smile.gif
Пункт AVR-Studio + gcc обусловлен только тем, что gcc это все же не IDE, а просто компилятор и линкер C.
Хотелось бы услышать как можно больше мнений о разных IDE для AVR.

Цитата(Polaris @ Feb 2 2006, 10:27) *
Но вот GCC однозначно отстой.


"Вам не нравятся кошки? Да Вы просто не умеете их готовить!"
IgorKossak
Цитата(defunct @ Feb 2 2006, 11:21) *
... в EWAVR имеется возможность изменения узлов MK в процессе отладки? (изменение значения порта или таймера, возможность возбуждения прерывания.) И насколько стабильно он себя ведет? Просто у меня EWAVR 4.10B равно как и 4.11A неоднократно наглухо подвисал в процессе отладки, и подвешивал JTAGICE...

У меня всё нормально (v3.20D - v4.12A). Попробуйте изменить скорость JTAG.
Цитата(Polaris @ Feb 2 2006, 10:27) *
Но вот GCC однозначно отстой.

Если и эта тема перерастёт в религиозную ругню, буду понижать рейтинг без предупреждения, а тему закрою. twak.gif excl.gif
ALexx
Изначально пошел по пути CodeVision+VMLab, о чем еще ни разу не пожалел.

Кстати, для приверженцев VMLab: на сайте производителя доступна полная последняя бесплатная версия.
http://www.amctools.com/
MakSV
Использую IAR EWAVR 4.11A + AVRStudio, удобно и наглядно
zltigo
Цитата(dxp @ Feb 2 2006, 09:17) *
В качестве инструментария: пакет EWAVR + мощный сторонний программерский редактор SlickEdit. Сборка под управлением gnu make, от самого EWAVR используеются компилятор, асм, линкер, библы, ессно, ну, словом, все то, что необходимо для компиляции. Саму оболочку использую только для запуска C-SPY.

Абсолютно такой-же подход и набор, только редактор MultiEdit заметно переписанный за долгие годы
использования "под себя".
artStinger
Для написания использую MED - programmer's text editor , компилирую avrasm-ом, а отлаживаю в AVRStudio 4.11 + макетные платы....
beer_warrior
gcc адназначна.
1.полный тулчейн под avr msp arm win32 *nix etc.
2.нет привязки к системе/реестру - живет все на флэше.
3.Гарантированная лицензионная чистота
---
Special to Polaris - с тулзами юниксовского происхождения -
"Тяжело в учении - легко в бою"
Old1
Использую EWAVR 4.12 (evaluation) от IAR (компилятор + отладчик) + Proteus+JTAGICE(планирую использовать, сам девайс находится в стадии изготовления).
1)EWAVR: про сам компилятор уже говорено достаточно; отладчик C-SPY ИМХО практически ни чем не уступает студии (если не считать того, что не симулируются внутренняя периферия, но я это большим недостатком не считаю), радует то, что можно моделировать внешние воздействия при помощи системных макросов C-SPY, студия такой возможности не дает...
2)Proteus: использую его (несмотря на многочисленные глюки) для экономии времени; пока макет разрабатываемого девайса находится в стадии изготовления (а поскольку я его делаю обычно сам, процесс это длительный...), создаю модель этого девайса в proteuse и прогоняю код на ней, когда появляется девайс работаю уже с ним...
3)JTAGICE: пока еще не явлюсь счастливым обладателем этого эмулятора, но когда закончу его изготовление, планирую использовать его совместно с С-SPY, надеюсь, что все получится...
Замечание по использованию симуляторов. Мое ИМХО: иногда существуют ситуации когда когда при отладке больше толка от симулятора. Пример такой ситуации - разработка и отладка последовательного протокола обмена данными. Использование симулятора при отладке протокола позволяет, например прогнать процедуру приема(предачи) данных пошагово и побитно, что ИМХО проблематично сделать на "живом" девайсе даже с внутрисхемным эмулятором...
defunct
Цитата(Old1 @ Feb 3 2006, 10:29) *
Пример такой ситуации - разработка и отладка последовательного протокола обмена данными. Использование симулятора при отладке протокола позволяет, например прогнать процедуру приема(предачи) данных пошагово и побитно, что ИМХО проблематично сделать на "живом" девайсе даже с внутрисхемным эмулятором...


Мне наоборот кажется, что здесь никаких проблем с внутрисхемной эмуляцией нет.
Внешняя периферия (UART/SPI и т.п.) работает на реальных скоростях, т.о. данные будут доставлены на целевое устройство даже если ведется пошаговая отладка. А если программная эмуляция протокола, тогда еще проще, можно даже уровни порта менять вручную.

Цитата(IgorKossak @ Feb 2 2006, 11:30) *
У меня всё нормально (v3.20D - v4.12A). Попробуйте изменить скорость JTAG.


4.12A пока скачать не представилась возможность. Пробовал на 4.11A.
Понизил скорость JTAG до 28kHz, подвисать перестало, но теперь другая проблема, если девайс оставить на прогонку (под отладкой на 20-30 минут работы), то потом наблюдаются проблемы с остановом, JTAGICE теряет отлаживаемый девайс...
Old1
Цитата(defunct @ Feb 3 2006, 22:36) *
Цитата(Old1 @ Feb 3 2006, 10:29) *

Пример такой ситуации - разработка и отладка последовательного протокола обмена данными. Использование симулятора при отладке протокола позволяет, например прогнать процедуру приема(предачи) данных пошагово и побитно, что ИМХО проблематично сделать на "живом" девайсе даже с внутрисхемным эмулятором...


Мне наоборот кажется, что здесь никаких проблем с внутрисхемной эмуляцией нет.
Внешняя периферия (UART/SPI и т.п.) работает на реальных скоростях, т.о. данные будут доставлены на целевое устройство даже если ведется пошаговая отладка. А если программная эмуляция протокола, тогда еще проще, можно даже уровни порта менять вручную.

Представьте ситуацию: вы написали процедуру приема/отправки байта в последовательном режиме (аппаратный УАРТ или другие уст-ва не используется), с внешнего устройства на отлаживаемый девайс приходит байт в последовательном коде (например по RS232, скорость 9600), задача пошагово пройти процедуру приема/отправки этого байта, т.е проверить как принимается/отправляется каждый бит принимаемого/отправляемого байта. Приемопередатчик внешнего устройства выкинет вам 10 бит, которые проскочат за ~1 мс, и что вы увидите в пошаговой отладке?... ИМХО если использовать точку останова, то можно проконтролировать 1 бит, остальные пролетят мимо, потому что передающую сторону остановить невозможно... А в симуляторе по крайней мере с этим проблем нет (но только с этим smile.gif)... Описанная ситуация редкая и примитивная, но иногда встречается.
dxp
Цитата(Old1 @ Feb 4 2006, 19:24) *
Представьте ситуацию: вы написали процедуру приема/отправки байта в последовательном режиме (аппаратный УАРТ или другие уст-ва не используется), с внешнего устройства на отлаживаемый девайс приходит байт в последовательном коде (например по RS232, скорость 9600), задача пошагово пройти процедуру приема/отправки этого байта, т.е проверить как принимается/отправляется каждый бит принимаемого/отправляемого байта. Приемопередатчик внешнего устройства выкинет вам 10 бит, которые проскочат за ~1 мс, и что вы увидите в пошаговой отладке?... ИМХО если использовать точку останова, то можно проконтролировать 1 бит, остальные пролетят мимо, потому что передающую сторону остановить невозможно... А в симуляторе по крайней мере с этим проблем нет (но только с этим smile.gif)... Описанная ситуация редкая и примитивная, но иногда встречается.

Зачем это еще каждый бит смотреть? Байт приняли и смотрим, что там пришло. И сразу видно, правильно или нет. И если неправильно, то видно. что неправильно. Надуманная ситуация. А реально гораздо чаще бывает так, что отладили на симуляторе, все замечательно работает. А зашили в железо, и перестало работать. И все потому, что там еще другие части проекта шевелятся, отнимают процессороное время, вызывают свои прерывания, которые лочат наше отлаженное. И это проблема и задача гораздо серьезнее и жизненее. Требует системного подхода.
Old1
Цитата(dxp @ Feb 6 2006, 14:04) *
Зачем это еще каждый бит смотреть? Байт приняли и смотрим, что там пришло. И сразу видно, правильно или нет. И если неправильно, то видно. что неправильно.Надуманная ситуация.

Ну принял байт неправильно, а вот где неправильно бывает сразу невидно, причины почему не видно могут быть разные... (скажем "глаз замылился" smile.gif), тогда взял и в симуляторе прогнал "больное" место...
Цитата
А реально гораздо чаще бывает так, что отладили на симуляторе, все замечательно работает. А зашили в железо, и перестало работать. И все потому, что там еще другие части проекта шевелятся, отнимают процессороное время, вызывают свои прерывания, которые лочат наше отлаженное. И это проблема и задача гораздо серьезнее и жизненее. Требует системного подхода.

Бывает и так. Я не предлагаю повсеместно использовать симуляторы, а только лишь в исключительных случаях...
sseett
Начинал с AVR-Studio (atmel-avr-asm), но случайно наткнулся на Algorithm Builder
http://home.tula.net/algrom/russian.html.
Первое впечатление - забавная игрушка.
Освоение шло туго, мешали сложившиеся стереотипы при использовании классического ассемблера.
Но заставил себя и не жалею. Выигрыш во времени потраченного на разработку проекта, как и обещал автор, составляет от 3 до 5 раз. Среда имеет удобный, приятный симулятор,
Позволяющий отловить большинство ошибок. Внутрикристальный отладчик, программатор с простейшим железом (несколько резюков и диодов)
Динамичное развитие (до нескольких обновлений в месяц), хорошая поддержка (исправление ошибок, учет пожеланий пользователей).
К сожалению, среда заточена только под AVR. И соответственно запросто (по утверждениям любителей С) перенести проект на другой камень невозможно.
Развитие, модернизация, появление новых семейств MCU происходит бурными темпами,
и чтобы иметь богатство выбора, придется заставить себя осваивать С.
IgorKossak
Цитата(sseett @ Feb 7 2006, 10:52) *
... К сожалению, среда заточена только под AVR. И соответственно запросто (по утверждениям любителей С) перенести проект на другой камень невозможно.
Развитие, модернизация, появление новых семейств MCU происходит бурными темпами,
и чтобы иметь богатство выбора, придется заставить себя осваивать С.

cool.gif
Как только освоите С, обнаружите, что время на разработку проекта ещё более сократится и тон безысходности пропадёт точно также, как и напряг от преодоление стереотипов в случае с Algorithm Builder.
SasaVitebsk
Цитата(haker_fox @ Feb 2 2006, 04:18) *
В прекрасном будущем smile.gif хочу забодать JTAG...


Кстати на счёт Jtag2. Преобрёл. smile.gif Деньги не малые. Но всё не так безоблачно, хотя в некоторых случаях спасает. Так радовался, что ввели останов по условию, - опять промашка "для 88 не работает". Если симулятором нормально пользоваться, впрочем как и др. инструментами, то очень помагает. Есть у меня примочка ещё одна аппаратная. Для отладки протоколов. Весь протокол сбрасываю в файл на живую. А потом прога у меня есть, - просматриваю типа осцил. запоминающего. Очень помогает! Прогой могу поделится, она моя.
NightCat
Можно глупый вопрос?
Есть какие-то еще "ну очень сильные стороны" IAR, из-за чего его так любят?
(Я новичек.)
Спасибо.
defunct
Цитата(NightCat @ Feb 18 2006, 20:17) *
Есть какие-то еще "ну очень сильные стороны" IAR, из-за чего его так любят?

Cамая сильная сторона, как я понял поигравшись с IAR, - это лучший из имеющихся под AVR компилятор С. Кроме того к сильным сторонам можно причислить то, что это практически единственный компилятор с поддержкой 64-bit арифметики с плавающей точкой для AVR. Ну и дополнительный плюс - IAR'ом поддерживаются почти все популярные на сегодня семейства МК.
ArtemK
После опробывания в качестве компилятора win-avr, ImageCraft, CrossWorks C и IAR, остановился на IARе. В качестве редактора использую SlickEdit. Пишу на c++. Для мелких контроллеров - на c. Тестирую все на STK500/501. JTAG никак не соберу. Все времени не хватает.
гигипотамм
Code Vision
zltigo
Цитата(A_Bolshev @ May 23 2006, 11:08) *
я тоже эту парочку полюбил.

Милый друг, а чего это это свой старый ник забросили а под чистеньким ником с прежними номерами выступаете? Хоть-бы в своих 'выступлениях' 123 через три раза на четвертый поминали. НЕХОРОШО!
Proton
zltigo
Это точно он([banned]). После того как две его темы подряд прикрыли, заходит при помощи ботов с другой стороны, под видом благодарного ученика.
Andy Great
Crossworks from Rowley
Сергей Борщ
ИАР через JTAG, еслои JTAG нет - мигание светодиодом + вывод диагностики через UART (иногда форт-подобный интерпретатор команд в МК через UART). Если UART занят - через программный на свободной ножке. Не могу понять чего народу так нравится AVRStudio - в нем же вся периферия в виде дерева в одном окне. В ИАРе могу открыть несколько окон, в каждом своя периферия, в AVRStudio полистал это окно с периферией минут 10, плюнул и вернулся к железу и выводу диагоностики через UART.
ilya514
я тоже эту парочку полюбил.

а узнал о ней из курса http://electronix.ru/redirect.php?http://[banned]

и ведь вместе обе программы меньше 7 Мб размером! и дополнительно только "5 проводков" нужны для работы с живым МК.

жаль что нет возможности по нескольким пунктам голосовать -
я доаолнительно мастер в ICC использую.
[/quote]

Разрешите тоже внести свои пять копеек.....
В свое время тоже начинал заниматься с микроконтроллерами и именно с сайта [banned].....
Прошерстил этот курс ни один раз от и до......для новичков (на мой взгляд) там есть чему поучиться, так сказать АЗАМ работы с микроконтроллерами......, но прошло полгода( для меня).....нужно двигаться дальше.....а дальше возникают более профессиональные вопросы.....
Для чего создан форум на electronix.ru? Чтобы можно было получить совет по решению конкретной проблемы, возникающей при создании или воспроизведении какого-либо устройства.....
А все вопросы для "начинающего" на мой взгляд здесь уже давным-давно обсуждены....достаточно воспользоваться поиском по форуму......
Так что рекламой своего сайта, а именно [banned] создателю нужно заниматься другим способом, а не втыкая свои сообщения с рекламой во все вновь создаваемые темы......тем более что стиль изложения и рекламы один в один совпадает со стилем сайта и двумя "разными" авторами на этом форуме.....
Извиняюсь за оффтоп, просто достало за последние несколько дней......
defunct
Цитата(Сергей Борщ @ May 23 2006, 19:49) *
Не могу понять чего народу так нравится AVRStudio - в нем же вся периферия в виде дерева в одном окне. В ИАРе могу открыть несколько окон, в каждом своя периферия, в AVRStudio полистал это окно с периферией минут 10, плюнул и вернулся к железу и выводу диагоностики через UART.

В AVR-Studio есть свои прелести. Особливо если дерево использовать в сочетании с JTAGом. Любой клик в дереве влияет непосредственно на МК. К примеру можно мышкой задавать на портах требуемые последовательности. В ИАРе такое проделывать сложнее (если вообще возможно)
Я так в свое время с протоколом LCD разобрался за 5 минут. Взял M162 распаял абы как LCD, в МК даже программу не грузил, тупо подключился через JTAG и мышкой покликал последовательности из ДШ на портах в дереве AVR-Studio. smile.gif
после чего уже начал делать разводку платы, а потом и программой заниматься.


ilya514
Цитата
Так что рекламой своего сайта, а именно ...123....

с ним бесполезно разговаривать, оставьте эту тему модератору, надеюсь бан по IP в этом форуме возможен.
ilya514
Цитата(defunct @ May 23 2006, 20:06) *
Цитата(Сергей Борщ @ May 23 2006, 19:49) *

Не могу понять чего народу так нравится AVRStudio - в нем же вся периферия в виде дерева в одном окне. В ИАРе могу открыть несколько окон, в каждом своя периферия, в AVRStudio полистал это окно с периферией минут 10, плюнул и вернулся к железу и выводу диагоностики через UART.

В AVR-Studio есть свои прелести. Особливо если дерево использовать в сочетании с JTAGом. Любой клик в дереве влияет непосредственно на МК. К примеру можно мышкой задавать на портах требуемые последовательности. В ИАРе такое проделывать сложнее (если вообще возможно)
Я так в свое время с протоколом LCD разобрался за 5 минут. Взял M162 распаял абы как LCD, в МК даже программу не грузил, тупо подключился через JTAG и мышкой покликал последовательности из ДШ на портах в дереве AVR-Studio. smile.gif
после чего уже начал делать разводку платы, а потом и программой заниматься

Просьба......огромная......тоже хочу начать работать с AVR-Studio...на данном этапе собираю JTAG по материалом этого форума на Atmega16. Soft уже скачал....визуально понравилось......не сделаешь какой- нибудь мануал, чтобу побыстрее в нем разобратьсь.....уж больно способ отладки нравится......
Сергей Борщ
Цитата(defunct @ May 23 2006, 20:06) *
Цитата(Сергей Борщ @ May 23 2006, 19:49) *

Не могу понять чего народу так нравится AVRStudio - в нем же вся периферия в виде дерева в одном окне. В ИАРе могу открыть несколько окон, в каждом своя периферия, в AVRStudio полистал это окно с периферией минут 10, плюнул и вернулся к железу и выводу диагоностики через UART.

В AVR-Studio есть свои прелести. Особливо если дерево использовать в сочетании с JTAGом. Любой клик в дереве влияет непосредственно на МК. К примеру можно мышкой задавать на портах требуемые последовательности. В ИАРе такое проделывать сложнее (если вообще возможно)
Для АВРов не пользуюсь, а для MSP430, ARM - то же самое, только не мышкой а циферки вбивать. Можно сразу на весь порт, можно в каждый бит (0/1). В AVRStudio напрягает именно листать дерево. Меня интересуют, скажем, регистры ядра и UART. В ИАРе поставил рядом два окошка, в AVRStudio - жимкать на окно и колесом или полосу прокрутки туда-сюда. "Раздражает!" :-)
defunct
Цитата(ilya514 @ May 23 2006, 20:16) *
Просьба......огромная......тоже хочу начать работать с AVR-Studio...на данном этапе собираю JTAG по материалом этого форума на Atmega16. Soft уже скачал....визуально понравилось......не сделаешь какой- нибудь мануал, чтобу побыстрее в нем разобратьсь.....уж больно способ отладки нравится......

к сожалению я не силен в написании мануалов для этого надо быть A_Bolshev smile.gif
да и времени маловато.. Но если у вас возникнут вопросы - обращайтесь (только не в этой ветке smile.gif ) помогу чем смогу.

А пока что могу сказать, что правильно собранный JTAG-ICE начинает работать сразу и какой-то отдельной наладки не требует. В AVR-Studio просто при создании проекта выбрать JTAG-ICE + MK из списка, запустить отладку и пользоваться точно также как и в симуляторе, разница только в том, что одновременно можно ставить не более 4х точек останова и все ваши действия будут влиять непосредственно на узлы МК.
У МК должны быть запрограммированы Fuses JTAGEN и OCDEN
После завершения отладки программы OCDEN обязательно нужно снять, а JTAGEN на ваше усмотрение.


Цитата
Меня интересуют, скажем, регистры ядра и UART. В ИАРе поставил рядом два окошка, в AVRStudio - жимкать на окно и колесом или полосу прокрутки туда-сюда. "Раздражает!" :-)

Ну если вам больше нравятся окна, в AVR-Studio они тоже есть.
Меню View (в режиме отладки), а там уже то что надо, регистры/память/watch...
bodja74
А я AVR-Studio из за дизасемблера люблю,можно "пошпионить" что там без меня напридумывали. smile.gif
Хотя скорость работы мне не очень нравится,у меня комп слабенький.
Сергей Борщ
Цитата(defunct @ May 23 2006, 20:33) *
Цитата
Меня интересуют, скажем, регистры ядра и UART. В ИАРе поставил рядом два окошка, в AVRStudio - жимкать на окно и колесом или полосу прокрутки туда-сюда. "Раздражает!" :-)

Ну если вам больше нравятся окна, в AVR-Studio они тоже есть.
Меню View (в режиме отладки), а там уже то что надо, регистры/память/watch...
Ну если есть - хорошо, не знал. Теперь буду знать. Спасибо, сняли психологический барьер. Теперь если понадобится - поставлю студию без предубеждения.
ilya514
[quote name='defunct' date='May 23 2006, 20:33' post='116272']
[quote name='ilya514' post='116265' date='May 23 2006, 20:16']
Просьба......огромная......тоже хочу начать работать с AVR-Studio...на данном этапе собираю JTAG по материалом этого форума на Atmega16. Soft уже скачал....визуально понравилось......не сделаешь какой- нибудь мануал, чтобу побыстрее в нем разобратьсь.....уж больно способ отладки нравится......
[/quote]
к сожалению я не силен в написании мануалов для этого надо быть A_Bolshev smile.gif
да и времени маловато.. Но если у вас возникнут вопросы - обращайтесь (только не в этой ветке smile.gif ) помогу чем смогу.

А пока что могу сказать, что правильно собранный JTAG-ICE начинает работать сразу и какой-то отдельной наладки не требует. В AVR-Studio просто при создании проекта выбрать JTAG-ICE + MK из списка, запустить отладку и пользоваться точно также как и в симуляторе, разница только в том, что одновременно можно ставить не более 4х точек останова и все ваши действия будут влиять непосредственно на узлы МК.
У МК должны быть запрограммированы Fuses JTAGEN и OCDEN
После завершения отладки программы OCDEN обязательно нужно снять, а JTAGEN на ваше усмотрение.

Это я уже понял из ранее сказанного в форуме, но все равно СПАСИБО......
Буду знать к кому "обращаться"........
А по поводу мануалов.......оч жаль.......хотелось бы по больше информации детальной и подробной по работе с МК не только для начинающих, но и для начинающих среди начинающих......
Как только соберу JTAG появятся вопрсы , а они обязательно появятся, буду задавать в форуме.........
Заранее спасибо......ВСЕМ......
Proton
Цитата
A_Bolshev Дата Сегодня, 07:49

все тоже + еще много полезного есть в 4 Мб -ном VMLAB.


Кончайте рекламировать VMLab, Proteus на порядок лучше по своим возможностям и удобству. В своё время первым из симуляторов использовал VMLab, но когда увидел Proteus, VMLab кажется игрушечной поделкой.
А вообще эти все эти симуляторы больше подходят для любительских самоделок. В действительно серьёзных(коммерческих) проектах нет альтернативы JTAG'у.
Petka
Цитата([banned] @ May 24 2006, 11:23) *
ну есть проклятые пираты которые вложили PROTEUS 6.9.03 с лекарством

я нашел в google.com и опубликовал линки

в самом низу страницы - http://electronix.ru/redirect.php?http://[banned]

вот как он стыкуется с компиояторами

http://www.labcenter.co.uk/products/compilers.htm


....РРРРР.... angry.gif Ваша реклама слала СЛИШКОМ надоедливой. Навязчивость ресурса уже напоминает спам центра американского английского.

по теме: использую CV, жаль он не поддерживает C++. Отлаживаю только в железе.
EugeNNe
Опрос показывает, что наиболее популярными являются среды IAR и СodeVision.
Интересно а какой процент народу пользуют лицензированные, легальные, а не крякнутые
данные среды разработки. И как относится заказчики к ПО для AVRов написанном в
ломанных IARах и CodeVisionах. Наши очень отвратительно, поэтому мы пользуем GCC.
Пусть похуже IAR, но не ломанное.
Serg79
О чем разговор!!!
Для сборки прошивки лучше чем WinAvr(gcc) вы не найдете.
Для написания кода и отладки, связка AVR-Studio + gcc-plugins да плюс JTAG это все что нужно.
А кто знает что такое Linux, так ему и объяснять не надо что такое 'gcc' и как он может код оптемизировать хоть по размеру, хоть по быстродействию.

CodeVision просто отстой, то что он делает с указателями не поддается описанию, один ужас. Он даже не знает, что такая каманда у AVR есть как ( ICALL ). А как он код раздувает, просто ужас, и быстродействие его просто ужасное.

IAR-EWAVR на счет того что он быстрее и компактнее тоже заблуждение.

У 'gcc' один минус, он тяжелый для новичков, особенно когда надо вставку на 'asm' сделать, их это вводит просто в ступор :-). Но что либо гибче чем gcc просто не сушествует.

Кто мне не верит, пускай посмотрит как каждый компилятор пишет на 'asm' тогда убедиться, что лучше 'gcc' ему ни чего не найти.
Serg79
Цитата
BigBolt временно не имеет доступ к форому, он меня попросил ответить:
Цитата([banned] @ May 24 2006, 12:27) *

и что же у вас за заказчики такие - они есть а 150 баксов на CVAVR у вас нет ?
CodeVision использовали достаточно долго, но особо он не нравился и по это платить за него даже 1руб не хочется, начав использовать WinAVR пришли к выводу, что IAR за 1500$ покупать не стоит. GCC это оптимальное соотношение цены( 0$ ) и качества.

От себя хочу добавить, что CodeVision действительно самый простой в использовании и всю черновую работу (такую как: доступ к flash, доступ к eeprom и т.д.) делает за за кадром. Чем очень помогает начинающим разработчикам.
dxp
Цитата(Serg79 @ May 24 2006, 15:42) *
IAR-EWAVR на счет того что он быстрее и компактнее тоже заблуждение.

IAR EWAVR дает более компактный и быстрый код! Спорить не надо, это проверено неоднократно. Для компактности кода AVR-GCC должен для начала научиться почаще пользоваться косвенной адресацией, а не лепить везде lds/sts, а для скорости - ввести все же раздельные стеки для данных и адресов возвратов, чтобы не геморроиться с подготовкой стекового кадра в каждой функции. Этот же момент напрямую влияет и на размер кода. Если и еще вопросы, но эти два - основные.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.