Форум РадиоКот https://radiokot.ru/forum/ |
|
Как выбрать среду разработки? Ардуино или AtmelStudio? https://radiokot.ru/forum/viewtopic.php?f=57&t=90440 |
Страница 1 из 2 |
Автор: | axillent [ Вт июн 04, 2013 12:50:36 ] |
Заголовок сообщения: | Как выбрать среду разработки? Ардуино или AtmelStudio? |
Горю желанием сделать проект для автоматизации дома. В основе проекта AVR микроконтроллеры с которыми есть некоторый опыт любителя, радиомодули NRF24L01+ (как весьма продвинутые по чипу и не дорогие) и связка с компьютерной сетью дома есть для меня дилема если выбрать ардуино, то такой расклад: + богатый выбор библиотек и множество примеров реализации для разных задач и для разной переферии (если искать примеры то легче найти для ардуино, нежели для AVR) + быстрее писать код - высокий уровень абстрагирования от железа и отсутствие необходимости залезать каждый раз в даташит для настройки железа + самая большая opensource наработка для NRF24l01+ это библиотека RF24 и RF24Network сделанная именно для ардуины - проблема с watchdog - меньший контроль ресурсов МК и больший генерируемый код - не возможность железной отладки - привязка к ограниченному набору МК если брать AVR и Atmel Studio, то: + железная отладка (специально обзавелся STK600 и JTAGICE3) + понятный доступ к ресурсам контролера + нет ограничений по выбору МК - почти полное отсутствие готовых к применению библиотек - ограниченное количество примеров - писать код как правило дольше из-за необходимости каждый раз решать ряд задач по инициализации и низкого уроавня абстрагирования от железа недавно вышел плагин для AtmelStudio позволяющий писать для ардуино. вроде как с ним ряд минусов ардуино (в частности отладка) снимаются проект долгоиграющий, если потом менять выбор - будет болезненно, хочется грамотно выбрать сейчас буду признателен за советы другие среды разработки не рассматриваю, так как отладка в железе есть только у AtmelStudio |
Автор: | Engineer_Keen [ Вт июн 04, 2013 13:08:44 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
axillent писал(а): - не возможность железной отладки + железная отладка (специально обзавелся STK600 и JTAGICE3) Специально обзавелись STK600 и JTAGICE3 чтобы выбирать между их использованием и не использованием ![]() axillent писал(а): - писать код как правило дольше из-за необходимости каждый раз решать ряд задач по инициализации и низкого уроавня абстрагирования от железа Подумаешь, один раз лишние полтора десятка строк в начале программы написать, зато: axillent писал(а): + понятный доступ к ресурсам контролера А вот это: axillent писал(а): - почти полное отсутствие готовых к применению библиотек - ограниченное количество примеров с чего такой вывод? И того, и другого, как раз для AVR в сети ИМХО больше всего... |
Автор: | axillent [ Вт июн 04, 2013 13:20:27 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
Engineer_Keen писал(а): Специально обзавелись STK600 и JTAGICE3 чтобы выбирать между их использованием и не использованием ![]() в документации на атмеле так запутано, что сложно было понять нужен ли stk600 для отладки или нет)) сейчас на практике мне понятно, что для отладки нужен только jtagice + atmelstudio если использовать плагин для ардуино - можно отлаживать ардуино в атмелстудио через jtagice тут как бы не проблема Цитата: с чего такой вывод? И того, и другого, как раз для AVR в сети ИМХО больше всего... вывод из моей практики. делал пару проектов и реально помучился пока нашел для себя работающий код для использования DS18B20 и nokia5110 для AVR в сети код или очень старый (с болячками) или сделан не под atmelstudio (требуется кропотливо повозится чтобы например код для codevision переделать под atmel) или как такового его вообще нет я например пока не нашел кода для софтверного SPI с ардуино же - берешь, кладешь в нужную папочку и оно работает сразу |
Автор: | brutal [ Вт июн 04, 2013 17:44:49 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
хм... я канешно буду пристрастен в своём ответе (т.к. я начинал с самого что ни на есть низкого уровня своё знакомство с микроконтроллерами), но всё же скажу: если вы делаете етот проект потому что хотите не только облегчить себе быт, но и набраться опыта программирования и работы с железом, то выбор в пользу AVR (и пусть вас не пугает отсутствие библиотек, даташиты на AVR самые удобочитаемые из всех какие я видел). А если вам достаточно поверхностное знание МК и той платформы под которую вы пишете, то берите ардуино. |
Автор: | axillent [ Вт июн 04, 2013 18:05:47 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
brutal писал(а): хм... я канешно буду пристрастен в своём ответе (т.к. я начинал с самого что ни на есть низкого уровня своё знакомство с микроконтроллерами), но всё же скажу: если вы делаете етот проект потому что хотите не только облегчить себе быт, но и набраться опыта программирования и работы с железом, то выбор в пользу AVR (и пусть вас не пугает отсутствие библиотек, даташиты на AVR самые удобочитаемые из всех какие я видел). А если вам достаточно поверхностное знание МК и той платформы под которую вы пишете, то берите ардуино. а вот если беспристрастно на это посмотреть? чем среда ардуино отличается от AVR? - абстрагирование по портам ввода вывода (вместо нескольких многобитных портов - однобитные нумерованные простыми цифрами порты) - Си++ вместо Си (скорее вопрос "что принято" - нет проблемы программировать на Си++ для AVR) - бутлоадер вместо программирование по ISP/HV. Ардуино тоже вроде как можно использовать без бутлоадера т.е. по большому счету разница не большая. Программируя в логике ардуино легко использовать всю мощь AVR общаясь с ним напрямую без абстрактного уровня правда опять же все это хорошо....когда есть запас ресурсов т.е. наверно если минимальный МК будет с 32кб то можно выбрать ардуин, а если меньше - ардуино сьест лишних несколько кб как минимум мне самому интереснее конечно делать все без ардуино, тем более, что я решил не привязываться к железу ардуино, а делать разработку с голого МК библиотеки все-таки очень смущают как вы ищите готовые решения? мне вот например нужна работа с wiznet5100. под ардуино нет проблем, а с AVR все сложнее и это при том, что на сайте производителя чипа есть готовый драйвер. Запустить ардуино можно за 5 минут открыв пример, а вот чтобы запустить AVR надо прочитать толстый документ application note |
Автор: | brutal [ Вт июн 04, 2013 18:31:26 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
axillent писал(а): а вот если беспристрастно на это посмотреть? чем среда ардуино отличается от AVR? Если рассматривать голую железку ардуино с микроконтроллером, то ничем. Смущает то, как описал один из форумчан выше: "положил в нужную папочку и работает" =) Много от такой разработки не вынесешь. Да, светодиод мигнёт и комп примет от платы по UART пару байтов. А дальше что? axillent писал(а): правда опять же все это хорошо....когда есть запас ресурсов т.е. наверно если минимальный МК будет с 32кб то можно выбрать ардуин, а если меньше - ардуино сьест лишних несколько кб как минимум минимум 32 кб... на 32 кбайтах люди программный usb реализуют, а вы разбрасываетесь такими ресурсами =) axillent писал(а): как вы ищите готовые решения? мне вот например нужна работа с wiznet5100. под ардуино нет проблем, а с AVR все сложнее и это при том, что на сайте производителя чипа есть готовый драйвер. Запустить ардуино можно за 5 минут открыв пример, а вот чтобы запустить AVR надо прочитать толстый документ application note волков бояться - в лес не ходить... готовые решения я ищу, читая документацию от производителя. Если совсем не работает и нет никаких мыцслей, то общаюсь на форумах. Вот недавно бился над задачей стыковки nand-флешки с отечественным армом... Неделю голова квадратная, зато поборол и потом на эти грабли уже не наступлю - раз! Два - написан драйвер работы с внешней памятью, в котором я знаю предназначение каждой запятой и впоследствии могу использовать дальше. А самое пожалуй серьезное - я не завишу от библиотек AVR, PIC, ардуино и т.д. Нужно - сел и написал. Но таким канешно тоже увлекаться не стОит. Всё хорошо в меру. |
Автор: | axillent [ Чт июн 06, 2013 00:23:16 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
в сомнениях я... вот к примеру чип NRF24L01+ поискал по нашему кошачему форуму - нет ни одного примера реализации на всех просторах интернет из реально работающего без оговорок можно найти только библиотеку RF24, но она 100% только под ардуино можно конечно посвятить себя изучению толстого даташита на nordic, но жаль время - его можно потратить на то устройство, которое собственно нужно а с отладкой кода ардуины в atmel studio на практике пока труба - попробовал, не работает |
Автор: | Engineer_Keen [ Чт июн 06, 2013 08:05:46 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
Весь толстый даташит читать необязательно, достаточно прочитать описание команд и регистров, чтобы правильно провести инициализацию и уметь принимать/передавать данные. И если где-то случится затык, никто не запрещает открыть тему по NRF24, возможно кто-то с ней работал, но у него не было с ней проблем, поэтому и тему не открывали... |
Автор: | dosikus [ Чт июн 06, 2013 14:01:54 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
axillent писал(а): в сомнениях я... .... на всех просторах интернет из реально работающего без оговорок можно найти только библиотеку RF24, но она 100% только под ардуино Собственно ничего удивительного. Посвятив себя аурдунье , вы всегда будете искать чужие наработки и без них ничего самостоятельно не сможете . Изучая же С и сам микроконтроллер , пусть и это будет трудно и дольше , сможете создавать свои либы или же перенести либы аурдуньи . Халява всегда чревата! |
Автор: | aleksandr-zh [ Вт июн 11, 2013 15:44:38 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
про абдурино: был тут товарищь, который у меня хотел под эту среду код получить (но пропал, как только я запросил предоплату (показав, что его железку я могу запустить за неделю) ну, скачал я почти 100 (!!!!) МБ установщик (уже офигительно!) потом нашел в примерах "мигалку" св.диода... Секунд 20-30 (!!!!) она компилировалась (я опять офигел!) и это чудо стало весить... 1880 байт!!! после этого я про эту среду забыл и вспоминать больше не хочу)))) ps мигалку можно на ассме (с инициализацией стеков и железа) написать в 30 байт, на основных средах - до 100 байт а тут в 18 раз больше!!! НАФИГ! |
Автор: | RomanT [ Сб июн 15, 2013 08:07:32 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
А я пишу в MikroC ... много библиотек, много примеров, море железа ... |
Автор: | axillent [ Сб июн 15, 2013 08:27:56 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
aleksandr-zh писал(а): про абдурино ну студия от атмела весит в 6 раз больше) кого это смутит? Согласен - кривоватое IDE, так можно же теперь програмировать ардуино в студии атмела если поставить плагин от visualmicro У меня вопрос скорее всего философский) по сути относится не к IDE, а к окружению - у ардуино свое окружение с большим уровнем абстрагирования от железа. Так же как Си абстрагирует от регистров, так же ардуино абстрагирует от регистров настройки всей переферии, но при этом как в Си можно напрямую обратиться к ассемблеру, так и из ардуино можно напрямую сконфигурить жедезо через контрольные регистры Цитата: мигалку можно на ассме (с инициализацией стеков и железа) написать в 30 байт, на основных средах - до 100 байт а тут в 18 раз больше!!! маленький код не можем быть самоцелью, тот же Си тоже требует больше места, но мало кого же смущает то, что это плата за больший уровень абстракции от железа RomanT писал(а): А я пишу в MikroC вы имеете в виду штатные библиотеки? Их там совсем не много. Я смотрел на МикроСи - приятная среда и позволяет легко стартовать некоторые проекты (например потому, что там есть готовые библиотеки для ds18b20 и для LCD 1602, но что-то более менее сложное (например я делал с дисплеем от нокии 3310 - библиотек под МикроСи я не видел) требует не меньше усилий чем с атмел студио, в то же время если делать железную отладку или симуляцию - без атмел студио не обойтись. Выходит проще все сразу делать в атмел студио. |
Автор: | RomanT [ Сб июн 15, 2013 08:34:03 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
К примеру, я вообще не программист, только базовые знания из школы, Но легко могу такое без всякой "железной" отладки: http://youtu.be/5PcXJIngj9c http://youtu.be/cwE1G5faBXc http://youtu.be/mCCeKzurVi4 http://youtu.be/-i6G-MUTc_c http://youtu.be/HoVQZLjlB_c http://youtu.be/5AU3qyJbaOU |
Автор: | axillent [ Сб июн 15, 2013 08:38:49 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
RomanT писал(а): Но легко могу такое без всякой "железной" отладки Рад за вас Дело не в том, чтобы смочь, а в том как это сделать наиболее эффективно и удобно |
Автор: | RomanT [ Сб июн 15, 2013 08:46:56 ] | ||
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? | ||
В МикроСи есть софтовый пошаговый отладчик
|
Автор: | axillent [ Сб июн 15, 2013 09:00:22 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
RomanT писал(а): В МикроСи есть софтовый отладчик Видимо я с CodevisionAVR спутал - там внутри ничего нет, да вижу - можно легко запустить отладку. Но что-то в отладчике я даже не могу найти регистры МК, они там есть? Симуляция мне как-то даже в атмел студио видится мало полезной - ну что толку гонять код без привязки к перефирии? Тогда уж лучше протеус. С протеусом все студии равны, что конечно плюс |
Автор: | RomanT [ Сб июн 15, 2013 09:14:31 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
Всё есть Вложение: подробнее тут http://www.mikroe.com/mikroc/avr/ide/ А для того чтоб увидеть изменения программы на периферии нужно несколько секунд (прошить флэш МК) |
Автор: | axillent [ Сб июн 15, 2013 09:28:32 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
RomanT писал(а): Всё есть описание смотрел, у вас просто значения регистров, а как например изменить значение бита PINB например, чтобы симулировать входной сигнал? что-то типа такого есть как в студии где все регистры можно структурировано посмотреть и если надо изменить? Вложение:
|
Автор: | RomanT [ Сб июн 15, 2013 09:42:06 ] | ||
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? | ||
Запихать в список что нужно кнопкой "Add" и наблюдай хоть пошагово, хоть в работе, при необходимости изменить ...
|
Автор: | axillent [ Сб июн 15, 2013 09:46:09 ] |
Заголовок сообщения: | Re: Как выбрать среду разработки? Ардуино или AtmelStudio? |
чтож отлично, может для pic-ов пригодится, наверняка в microc for pic все возможности такие же как в microc for avr я подсел на железную отладку ![]() так что мою тему в пору переименовывать - "Какое библиотечное окружение выбрать для Atmel Studio - стандартное или от Arduino?" |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |