цифровая электроника
вычислительная техника
встраиваемые системы

 

EMW3165 – новый дешевый WiFi модуль, который может стать убийцей ESP8266

Автор: Mike(admin) от 15-07-2015, 11:06

Примерно год назад сообщество радиолюбителей начало обсуждать появление на рынке ныне популярного WiFi модуля ESP8266. Это замечательный недорогой модуль для Интернета вещей, который позволяет быстро организовать беспроводную связь по каналу WiFi и открыть дверь в мир подключаемых устройств Интернета вещей. ESP8266 обладает множеством неоспоримых преимуществ перед конкурентами. Это и малая стоимость модуля, и богатый набор функций, и компактные размеры, а также относительная легкость работы с ним. Но, похоже, ESP8266 придется потесниться на этой нише рынка, поскольку Seeed Studio объявила о начале продаж нового модуля – EMW3165 от MXCHIP.


EMW3165 – новый дешевый WiFi модуль, который может стать убийцей ESP8266

Модуль EMW3165 примечателен тем, что на нем установлен микроконтроллер STM32F4 ARM Coretex M4. Это значит, что EMW3165 можно применять отдельно от каких-либо хост-устройств, например, Arduino. Благодаря такой вычислительной мощности и автономии область применения модуля значительно расширяется. С помощью него можно собрать простую веб-камеру, состоящую только из камеры и самого модуля EMW3165.

Модификация загрузчика Arduino для записи пользовательских данных в flash-память

Автор: Mike(admin) от 5-07-2015, 18:15

Для хранения каких-либо пользовательских данных в Arduino и вообще в микроконтроллерах AVR используют память EEPROM (Electrically Erasable Programmable Read-Only Memory или по-русски электрически стираемое перепрограммируемое постоянное запоминающее устройство). Но, к сожалению, она имеет малый объем и небольшое количество циклов чтения записи в отличие от flash-памяти. Например, в Arduino Uno на основе микроконтроллера ATmega328 у пользователя имеется в роспоряжении всего лишь 1024 байта для записи и последующего хранения данных. У версий Arduino с чипом ATmega168 этого пространства вообще в два раза меньше - всего 512 КБ.


Модификация загрузчика Arduino для записи пользовательских данных в flash-память

Но во флэш-память нельзя в процессе работы записывать данные, поскольку в нормальном режиме это память программ, и только загрузчик в процессе программирования может записывать туда информацию. К счастью, решение найдено! Загрузчик (bootloader) для Arduino под названием Optiboot был успешно модифицирован.

Используем Arduino Mega 2560 в качестве внутрисхемного программатора (ISP)

Автор: Mike(admin) от 31-05-2015, 17:08

Если вы самостоятельно изготавливаете Arduino, и для программирования микроконтроллера у вас нет под рукой внутрисхемного программатора или другой платы Arduino, кроме Arduino Mega 2560, то можно без проблем задействовать и ее для прошивки чипа.


Используем Arduino Mega 2560 в качестве внутрисхемного программатора (ISP)

Делаем плату Arduino автономной с питанием от солнечной батареи

Автор: Mike(admin) от 25-04-2015, 13:08

Чтобы использовать плату Arduino в своих проектах где-нибудь за городом, например, на даче, желательно сделать ее автономной от сетевого питания и питания от батареек, которые часто приходится менять. В данном случае самым простым способом будет использование солнечной батареи и резервной батареи напряжением 9 В.


Делаем плату Arduino автономной с питанием от солнечной батареи

Соединяем Raspberry Pi с Arduino через Serial GPIO

Автор: Mike(admin) от 20-04-2015, 09:42

Одним из способов соединения Raspberry Pi и Arduino является их связь по линиям GPIO с функцией последовательного порта.


Соединяем Raspberry Pi с Arduino через Serial GPIO

Выводы миникомпьютера Raspberry Pi и платы Arduino имеют разное напряжение, поэтому при их связи таким образом необходимо использовать преобразователь логических уровней или хотя бы делитель напряжения.

Экономим выводы микроконтроллера

Автор: Mike(admin) от 3-04-2015, 11:51

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


Зачастую недорогие и миниатюрные микроконтроллеры имеют небольшое по сравнению со своими старшими собратьями количество портов ввода/вывода. И, как правило, этих портов не всегда хватает. Например, для управления большим количеством миниатюрных коллекторных двигателей или для опроса клавиатур с большим числом кнопок. Тогда для решения задачи расширения возможностей используют различные аппаратные ухищрения, например, добавляют в свой проект различные микросхемы мультиплексирования сигналов, что, конечно же, приводит к некоторому удорожанию проекта.


Экономим выводы микроконтроллера

Но можно, не применяя сложных схем мультиплексирования, из одного вывода сделать два. Это реализуется довольно просто благодаря использованию третьего высокоимпедансного состояния (Z-состояния).

Arduino и TLC5940: управляем большим количеством сервомоторов

Автор: Mike(admin) от 27-03-2015, 06:00

Плата Arduino, очень популярная среди радиолюбителей и энтузиастов в области электроники, имеет достаточно широкие возможности в плане управления различными исполнительными механизмами и контроля их состояния. Arduino довольно часто применяют в проектах, связанных с робототехникой, где этой плате помимо контроля состояния датчиков и обработки логики действия объекта поручается управление различными электроприводами, сервомоторами, коллекторными двигателями и т.п. Но у большинства вариаций Arduino (Arduino UNO, Arduino Nano, Arduino Micro, Arduino Pro Mini) имеется одна небольшая проблемка. Они не располагают большим числом линий ввода/вывода, например, как у Arduino Mega, поэтому количество подключаемых к ним управляемых устройств весьма ограничено. Но если необходимо подключить к Arduino больше устройств, чем это позволяют линии ввода/вывода, то можно воспользоваться специальной микросхемой TLC5940, расширяющей возможности управления широтно-модулируемым сигналом (ШИМ).


Микросхема TLC5940 представляет собой 16-канальный драйвер ШИМ, предназначенный главным образом для работы с большим количеством светодиодов, светодиодными лентами и светодиодными матрицами.


Arduino и TLC5940: управляем большим количеством сервомоторов

Но, поскольку Tlc5940 просто ШИМ-драйвер, то без проблем можно задействовать эту микросхему для управления серводвигателями в количестве до 16 штук. Это может быть полезно, например, при создании робота-гексапода или любого другого механизма, где требуется большое количество приводов, управляемых от одной платы.

3 способа использования Arduino в качестве адаптера USB-UART

Автор: Mike(admin) от 18-03-2015, 10:55

Arduino использует чип FTDI для организации последовательного соединения между компьютером и микроконтроллером. Потому-то мы и можем программировать Arduino без применения какого-либо внешнего программатора.


использование Arduino в качестве адаптера USB-UART

Если мы посмотрим на схему Arduino, то увидим, что выводы RX и TX (выводы 0 и 1 платы), как и ожидалось, подключены к чипу FTDI. Это значит, что мы можем задействовать сами выводы FTDI для своих целей (не только для программирования микроконтроллеров).

Программируем Arduino на Raspberry Pi

Автор: Mike(admin) от 12-03-2015, 05:33

Плата Arduino и миникомпьютер Raspberry Pi являются, пожалуй, одними из самых популярных средств разработки у энтузиастов в области электроники и радиолюбителей всех мастей. Они стоят недорого и достаточно просты в использовании, причем настолько, что даже самый зеленый новичок сможет разобраться с принципами их работы, не затратив на это слишком много времени. Все это обеспечивается не только простотой применения, но и большим количеством документации и примеров, которые можно найти на просторах сети интернет. Плюс к этому имеется очень мощная поддержка со стороны радиолюбительского сообщества, которое постоянно расширяется. Одним из первых вопросов, который появляется у новичка, является вопрос о программировании аппаратного средства. Среда разработки Arduino IDE предоставляет очень простые возможности для программирования плат Arduino. Но Arduino можно программировать не только через персональный компьютер с установленной Arduino IDE, но и с помощью Raspberry Pi. Ведь Raspberry Pi это же тоже компьютер, и на него тоже можно поставить среду Arduino IDE. И это будет полезно не только новичкам, но и заядлым электронщикам.


Итак, как мы выяснили, программировать платы Arduino можно не только с помощью компьютера или ноутбука, но и с помощью Raspberry Pi. И в данном материале будет показано, как это сделать.


Программируем Arduino на Raspberry Pi

Учтите, у вас должно быть настроено интернет-соединение.

Вышла плата Arduino Zero Pro

Автор: Mike(admin) от 5-03-2015, 11:22

Недавно семейство плат Arduino пополнилось еще одним экземпляром, что не может не радовать. Впрочем, в этом семействе уже и так немало плат практически на все случаи жизни, исполненные в разных форм-факторах, с разной производительностью и ценой. Большинство плат основаны на популярных микроконтроллерах ATmega компании Atmel. К таким платам можно отнести Arduino UNO, Arduino Nano, Arduino Leonardo, Arduino Micro, Arduino Pro Mini и ряд других. Но пока еще не было плат с микроконтроллером, имеющего в своем составе ядро ARM Cortex. И вот наконец-то такая плата появилась.


Итак, вышла новая плата Arduino, получившая обозначение Zero Pro. Ее прототип, Arduino Zero, прорабатывался почти год, и теперь в компании решили выпустить окончательную версию на рынок.


Arduino Zero Pro

Сердцем Zero Pro является микроконтроллер ARM Cortex-M0+ SAMD21 фирмы Atmel с тактовой частотой 48 МГц, ОЗУ 32 КБ, флеш-памятью 256 КБ и напряжением питания 3.3 В. Для более комфортной отладки в плату встроен чип Atmel Embedded Debugger. Плата задумана для создания устройств Интернета вещей, носимой электроники, довольно сложной автоматики и роботов.