Pull to refresh

Comments 71

Очень интересно. Как насчет IDE для этих 10ти евровых контроллеров? В чем и на чем писать?
всегда писал в Eclipse
правда надо было сильно помучится, чтобы все заработало… но зато потом и прошивка одной кнопочкой и отладка мышкой из гуя с брейкпойнтами… )
Осваиваю keil. Аналогичная отладка, радует меня безмерно. Просмотр всех регистров, переменных, изменение их прямо на лету и прочие вкусности.
keil и iar хорошие среды, особенно если купить фирменный программатор за (500-1000+$$$)
вот только все это денег стоит немалых… но зато включил — работает )
А в чем его (программатора) преимущество перед jtag?
В keil есть бесплатная версия с ограничением размера кода в 32 кб.
JTAG это отладочный интерфейс а не отладчик,
преимущество дорогих отладчиков этот как правило скорость, большой буфер и возможность делать Trace.

На всех перечисленных отладках есть встроенные бесплатный отладчик, с ними Keil работает, так же как и с любым отладчиком, который работает в Eclipse.
Наверное доллары с рублями перепутали? На самом деле красная цена для полноценного JTAG ARM-отладчика (который отлично работает и в Keil, и в IAR, и в Eclipse) — $15, доставка в Россию бесплатно. Ключевые слова для поиска — J-Link dealextreme или J-Link aliexpress.
JTAGICE2 — очень мне нравился — 15600р в терре
ULINK2 — 13100р в терре
а если занятьcя программированием крутых DSP какихнить, то там и по 100к есть отладчики, например, BH-USB-56 — 120000р в терре, с ними можно графики красивые рисовать )
JTAGICE mkII это слишком дорогой отладчик для AVR, его может отлично заменить AVR Dragon, который в 10 раз дешевле. ULINK2 — зачем его покупать за 13000, если можно купить за тысячу?
JTAGICE2 у нас был один + парочка недорогих
и были стожности, сторонние отладчики иногда не хотели работать с некоторыми процами, частенько отваливались и тормозили… а JTAGICE2 всегда ко всему коннектился, все летало и работало идеально.

не отрицаю что за 2 года с тех пор как я перестал возиться с железом, многое изменилось и возможно появилась чудесная недорогая модель )

это как ноутбук за 80к и за 30к сравнивать, за 30к тоже неплохо работает и иногда не стоит переплачивать )
IAR сейчас интегрируется с Eclipse.
Если слегка прогуляться по ссылкам, для Infineon'ов есть DAVE.
Ещё проскакивала ссылка на CodeBender.
Pro Mini это как то жестоко.
Надо хотя бы Arduino Nano
Я брал для начала Arduino Uno ATmega328P-PU
Борда очень странная, скорее для рекламы этого MSP430. На ней ещё два чипа, один из которых явно имеет и ног и возможностей не меньше, чем сам MSP430, как то USB.
По USB только прошивка и подача питания.
В последнее время с dx одни проблемы — то заказ месяц собрать не могут, то прислали посылки без указания квартиры (строчку адреса обрезали при печати стикеров). Как-то они деградируют, если раньше нормальным было ожидать получить заказ через месяц, то теперь иногда заказ все еще на сборке (и это при 3-4 позиции).
Дело не в dx как таковом, просто человек жалуется на цены Arduino, в то время как существует множество способов покупать их не за 30 евро плюс шиппинг, или сколько оно там, а за 10-15 долларов.
Это понятно, просто люди закажут, а потом будут думать, что из Китая два месяца посылки идут, поэтому предупредил.
А они два месяца и идут (а иной раз и больше). Покупаю всякую дребедень на ибее. Уже привык, что после того, как продавец отпишется, что выслал товар, надо полтора месяца подождать, а потом можно начинать наведываться на почту.

// подозреваю, что не меньше месяца посылки валяются где-нибудь на сортировочном складе в Москве.
UFO just landed and posted this here
> Посылка оказалась наглым образом вскрытой
На всех моих посылках из Китая крупными буквами написано, что удивляться, если посылка будет вскрыта, не надо: таможня имеет на это право.
У конкретно этой модели нет USB.
Ко всем прелестям процессоров на Cortex M0/M4 можно отнести то, что их делают не только в корпусах, которые никак не поддаются пайке вручную, есть даже в корпусе DIP8.

LQFP нормально паяется даже дубовым советским паяльником, достаточно только шлак с жала счистить, и флюс номальный взять.
Ну, насчет пайки меня на форумах заверили, что, например, мои STM32F103VBT6 вполне себе паяются. Сам, правда, пока не пробовал: еще не отладил полностью все узлы схемы на макетке. Ну, ничего: в следующем году буду осваивать ЛУТ и пайку этой мелочи.
Паяются отлично! Чуток терпения и много флюса
паяются то нормально, а вот вытравить под них площадки тот ещё гемор, только для джедаев ЛУТа, ну или фоторезист
не поддаются пайке вручную, есть даже в корпусе DIP8.
Да, начали выпускать ARM 32битники в корпусах TSOP и даже DIP, пока только у NXP видел, но думаю STM тоже может выпустить, в общем прощайте 8 битники.
У восьмибитников есть свои ниши — прежде всего это энергопотребление в статике, 8 вольтовые приложения и ЕЕПРОМ.
упс, 5-ти вольтовые, конечно.
дык EEPROM уже не айс, сейчас во флеш всё записывается. У того же STM32 нет еепром, не потому что они не сделали, а потому-то запись во флеш хорошо организована. Даже 5В в итоге их не спасёт, ихмо
Да нет, EEPROM нет не потому, что сейчас все во флеш хорошо записывается.
А потому, что ARMы в отличие от 8-ми биток делают сейчас по 90нм и EEPROM сделать огромная технологическая проблема вот и делают эмуляцию EEPROM.

Причем есть и нюансы, например у некоторых производителей Falsh разделена на 2 банка физически и одновременно мы можем читать прошивку из одного банка и писать в другой, а у большинства банк один(если не ошибаюсь то и у ST тоже) и у нас возникают затыки на шине.

У некоторых производителей есть контроллер эмуляции EEPROM, а у некоторых его нет и все трюки с постраничным стиранием, размазываением записей и тп делает ядро, тратя на это время=энергию.

Все это правда не от того, что придумали какой-то крутой метод, это обусловлено технологией изготовления, так же как и большое потребление в STOP режимах.
А, понятно, ну затыков пока я не видел никаких, а потребление относительно большое в СТОП, примерно ~25uA. Но это критично не в большом числе приложений, это пульты разного рода в основном. За раз конечно 8битники не вытеснятся, но процесс пошёл, помнится кто-то прогнозировал подобное.
Да, с этим и спорить глупо,
также когда-то были вытеснены 4-х битники :)
Большой плюс AVR (за другие восьмибитники не скажу) — очень простая и понятная архитектура, система команд и периферия. Там, где у АВР надо поставить один бит в одном конфигурационном регистре, у STM32 надо написать простыню кода с #ifdef для разных множителей PLL и пр. Помигать светодиодом или сделать лампу настроения проще на AVR, гонять данные по Ethernet или USB — на ARM, выдавать видео по HDMI — Linux-boards. Не надо мешать их сферы применения и все будет хорошо
ну, NXP с вами не согласились и выпустили 32битный арм в dip8 =) Не знаю убьют ли они AVR, но потеснят вполне
Чтобы убить AVR надо написать аналогичное кол-во библиотек и и кода для различной периферии, что ни NXP ни даже ST пока не светит. Несложные проекты до сих пор гораздо быстрее и проще реализовать на AVR, а разница в цене на пару баксов на мелкосерийных проектах роли не играет.
вовсе нет, нужно завоевать «сердца» разработчиков )
гм, ну, а если серьёзно, то не знаю как там у nxp, но у stm отличная поддержка, куча просто готового кода почти на все случаи жизни. Нужно подключить sd карту по sdio? Как нефиг делать у них есть исходники которые вставляются в прогу и работают отлично. Нужно организовать виртуальный com порт с установкой драйвера? Как нефиг делать, у них есть проект где всё отлично работает на дискавери, FS, HS, HID, всё что нужно ) Я уж не говорю про такие тривиальные вещи как таймеры, DMA, ЦАП, АЦП и тому подобное.
Речь не о базовых вещах, вроде реализации USB-Serial, HID и т.п. На кучу внешней периферии для которой находится несколько вариантов кода на AVR за пару кликов да еще и обсуждением тонкостей, на ARM не находится ничего готового. В итоге то что на AVR можно собрать и проверить на коленке за полчаса, на ARM приходится писать самому.
Да ладно!
Общая библиотека для работы с периферией (АЦП, CAN, SPI, ШИМ, GPIO, USART, прерывания и т.д., и т.п.) есть.
Библиотека для работы с SD-картой есть.
USB-библиотека есть.
1-wire есть.
LED-библиотеки есть.

Чего еще не хватает-то?

P.S. И работать с ARM'ами просто: подключаешь ST-Link2, make && make load — вуаля!
>>1-wire есть.
ссылку можно? а то я сам от безысходности пилю
Не могу сказать точно, откуда спер, помню лишь, что с easyelectronics.ru. Посмотри у меня в ЖЖшке рабочий код (там, правда, еще уйма чего понамешана, но для 1-wire функции почти все в кучу собраны).
Там не программный, а «почти» аппаратный 1-wire (через USART).
Я же написал, что речь не о базовых вещах. У периферии обычно свои команды более высокого уровня поверх транспортных протоколов SPI, I2C и т.п.
Команд могут быть десятки и для AVR вы с большой вероятностью имеете уже готовую удобную обертку и нужные вызовы функции инициализации и чтения/записи/преобразования в нужный формат и т.п, как и кусок рабочего кода. Если готовой обертки нет, то нужно её хотя бы частично писать самому перелопачивая даташиты, наступая на различные грабли, на что и уходит львиная доля времени.
Кроме того, частенько бывает, что и транспортный протокол не совсем стандартный, и стандартные библиотеки не подходят.
Смотря что за периферия. Для управления объективом Canon мне пришлось эдаким реверс-инжинирингом заниматься…
ну такого нет и не у кого, на всю возможную переферию вам никто не напишет код готовый, но у стм тем не менее, есть на акселерометр, микрофон, звук с цапа и прочие вещи, которые стоят на их дискавери, кстати недавно вышла новая дискавери F3 за 15$ =)
Может вы подробный пост напишете с картинками и примерами, как стартануть с дискавери под линух? А то дискавери лежит, я глянул как там под линем… Всплакнул, и пока lpc2103 да AVR
Если на выходных меня ничем не нагрузят, могу перелопатить свои ЖЖшные темы и написать статейку, как работать в линуксе с STM32.
Только у меня не дискавери, а STM32P103. В принципе, разницы особой нет: просто шьется через отдельный JTAG (у меня ST-LINK/V2).

А насчет дискавери у меня тоже мысль была: взять дешевенький дискавери без USB и перепрошить f103, который там используется в качестве JTAG-адаптера, на двойной режим работы (как прошивалки, так и переходника USB<->RS2332). Но пока это из разряда мечт.
Дискавери какая? F10x заводятся с полпинка на С и с полутора пинков на С++. Я правда под виндой работаю, но все используемые тулзы кроссплатформенны (gcc-none-eabi, make, Sublime Text 2). Отладку правда пока не заводил, т.к. не было собственно отладчика, на выходных буду адаптировать проект под F3 и заводить отладку с нее же
Судя по найденному мной в интернете, все виды этих «дискавери» спокойно шьются в линуксе при помощи st-flash. А компилировать — да, gcc-none-eabi. Главное — один раз написать «болванку» Makefile'а.

А из IDE мне больше всего Geany нравится: на одном мониторе окно с кодом, на другом — terminal в текущей директории («горячими клавишами» Geany пользоваться не люблю, в терминале удобнее смотреть выхлоп make'а). Подрихтовал код, набрал make — если все ОК и надо заливать, набрал make load. Все.
Когда в своё время разбирался с lpc2103 (7-й ARM от NXP), то плакал горючими слезами от полутора примеров на весь интернет
Демо платы продают зачастую дешевле себестоимости, как пример LaunchPad от TI продают за символическую цену в $4.30 (вместе с быстрой FedEx доставкой) по номеру серии MSP430. А вот когда дело дойдет до реального устройства, цена явно будет гораздо выше.

На днях прошил в AVR at90usb162, с аппаратной реализацией USB, демо клавиатуру LUFA, 4 кбайт заняло, еще 4 кбайт bootloader в памяти занимает (прошивать проще, прямо через тот же USB, программатор не нужен), а всего 16 кбайт доступно, еще достаточно остается для своей программы, а если не хватит, то загрузчик можно и стереть. Готовая спаянная макетная плата продается за 500 рублей у Microsin, и это не демка крупного производителя, а вполне себе коммерческий продукт.
Отличная вещь, хотя по габаритам и цене чуть больше получается, чем Teensy. Приятно, что у нас тоже что-то делают на продажу. Не понимаю, зачем at90, когда всё-таки можно было бы atmega32u2, там разница 20-60 центов.
У Microsin и маленькая платка есть, где макетные площадки по бокам (их можно отрезать), и с чуть большим корпусом, и вообще на Tiny45 на малюсенькой плате, меньше уж некуда.

Teensy интересная плата, правда софт какой-то самопальный, и с чего Вы взяли, что они дешевле, гугл показывает цены в 16-20$ + доставка еще, или вот за рубли с бесплатной доставкой на Пикселькит за 890 рублей.
Хотя я впечатлился количеством готовых проектов на Teensy: pjrc.com/teensy/projects.html
Нашел и себе готовый проект, под at90usb.
Не знаю, что уж там в пиксельките, но свои 25% они явно решили заработать. Дешевле, потому как $6.71 за доставку (до двух нескольких плат), и $16 за саму плату, итого 700р. Если брать две, получаются по 590р.

За ссылки на другие микросиновские изделия был бы признателен. С поиском на сайте у них трудно.
Так ведь дороже получается, а не дешевле :) И ждать еще доставки из-за границы.

На главной странице они все представлены и в разделе «Другие макетные платы». На сайте вообще много чего полезного, хоть и тяжело искать, но вполне можно.
Микросин с учётом стоимости пересылки (+180 р) и почтового перевода (+60 р), получается 740 р. Можно сэкономить 60 р, оплатив каким-то образом заранее, получается 680 р. Разница в 20 р меня вполне устраивает, учитывая 32U4 и в 2.5 раза меньший размер (относительно микросина с оторванной макетной площадкой).
Даже LPC-P1343 от Olimex с доставкой получается 850р, это дешевле, чем Teensy с «бесплатной» доставкой от пипселькита за 890 р.
По поводу почты рф, ещё неизвестно, откуда придёт быстрее. Мне с farnell'а за 4 дня доставили. И сэкономил в 3 раза относително ряда местных поставщиков, даже с учётом стоимости доставки в 20 евро, и это при том, что местные поставщики обещали 4-5 недель.
У TI есть еще Stellaris LaunchPad по $13 (еще недавно был по $5) — www.ti.com/tool/ek-lm4f120xl
С двумя процессорами LM4F120H5QR — ARM® Cortex™-M4F, 80 мегагерц, 256 кб флеша, 32 кб памяти, с кучей переферии в т.ч. и usb
Всё равно цена символическая, стимулируют разработчиков использовать их платформу. Красивые у них платы конечно, красные.
Кстати о Stellaris. Заказывал сразу, как только он появился по $5.
Походу, заказов было много больше, чем плат на складе. То что было — разослали по заказчикам внутри США (по крайней мере, вскоре появилось несколько обзоров оттуда).
Остальным — сосать лапу до ноября.
21 ноября свершилось, вроде как — на почту упало сообщение «TI eStore: Your Order Items have been Shipped.»
Но на самом деле ничего не отправлено. Чуть погодя, зайдя в eStore, я обнаружил, что цену подняли задним числом и заказ на самом деле заблокировали до погашения разницы.

TI — редиски. Не то чтобы мне денег жалко, но так дела не делаются.
Ради интереса зашёл в аккаунт магаза TI, заказывал Stellaris 9 сентября, посылка была доставлена федексом 23 ноября, а в статусе заказа стоит payment pending:

Ship Date: 11/19/2012
Order Date: 9/10/2012 3:35 PM
Order Total: $4.99
Balance: $0.00
Status: Payment Pending
Payments: $0.00
Unprocessed Payments: $9.98

Какой-то бред они там пишут :)
До меня, кажется, дошло, почему в моём случае ничего не отправили. Платёж в самом деле не прошёл, потому как авторизация для проведения платежа через PayPal истекла в октябре. Это можно в Transaction Details на сайте PayPal посмотреть.

Unprocessed Payments — это, возможно, сумма средств по неудавшимся/незавершённым платежам.
Это два раза по $4.99, и столько же записей с Status: Pending висит у меня в Payment information.

Попробовал повторить платёж. Посмотрим, что в этот раз выйдет. Благо цену всё-таки не изменили.
кстати, помимо того что мне прислали — я тоже платил через paypal И если мне память не изменяет мне даже капнули обратно эти 5 баксов
Развязка:
Посылка в самом деле была отправлена вовремя. Оплата при этом не играла роли. Плюс в карму TI за это. Но жирный минус за запутаность и не очевидность интерфейса их eStore.
Посылку я так и не получил. Её уничтожил FedEx в Москве, не сумев вручить.

Путь к провалу:
1. На странице заказа в eStore не отобразился номер трекинга. Не велика беда — подумал я сначала… Из общения с тех.поддержкой TI теперь-то я номер узнал, но уже поздно (найти форму обращения на сайте — тоже целый квест, кстати).
2. Я допустил ошибку в адресе доставки.
3. Курьер FedEx не мог со мной связаться для уточнения адреса, поскольку в этот раз почему-то отправитель не указал мой номер телефона на посылке и на запрос от FedEx тоже не ответил (со слов службы поддержки FedEx).
4. При стоимости платы в $5, пересылка обходится во все $30. Поэтому «неудачные» посылки по истечении определённого срока просто уничтожаются.

В итоге деньги мне вернут, но повторно заказать уже только по новой цене. А это я всегда успею, и не только TI :(
Мне летом часы так и не отправили, сначала мурыжили что на складе нет, потом сказали что в Россию часы не доставляют, что-то там связанное с уровнем шифрования в чипе, деньги вернули (разморозили), хотя по другим источникам вполне себе отправляют. В общем так и не понял, временный глюк это у них был, или они и правда больше не отправляют в Россию установленный в часах чип. Купил уже другие обычные часы, а с этими связываться больше не хочу.
А мне на этой неделе пришло за те самые 5 долларов, правда теперь не знаю что с ней делать, тк пока я стоял в очереди мне пришла куда более интересная платка.
Sign up to leave a comment.

Articles