Оглавление:

UDuino: очень недорогая плата для разработки, совместимая с Arduino: 7 шагов (с изображениями)
UDuino: очень недорогая плата для разработки, совместимая с Arduino: 7 шагов (с изображениями)

Видео: UDuino: очень недорогая плата для разработки, совместимая с Arduino: 7 шагов (с изображениями)

Видео: UDuino: очень недорогая плата для разработки, совместимая с Arduino: 7 шагов (с изображениями)
Видео: Полезные плагины 1#: Device simulator 2024, Ноябрь
Anonim
UDuino: очень дешевая плата для разработки, совместимая с Arduino
UDuino: очень дешевая плата для разработки, совместимая с Arduino

Платы Arduino отлично подходят для прототипирования. Однако они становятся довольно дорогими, если у вас есть несколько параллельных проектов или вам нужно много плат контроллеров для более крупного проекта. Есть несколько отличных и более дешевых альтернатив (Boarduino, Freeduino), но затраты все равно возрастают, когда вам нужно много из них. Это способ, после начальных инвестиций примерно от 25 до 30 долларов, построить Arduino-совместимые платы стоимостью менее 10 долларов с очень небольшими затратами. дополнительное время на каждую. Обратите внимание, что основная идея здесь (Arduino на макете) была реализована довольно давно (например, инструкции ITP Arduino Breadboard); однако приведенные здесь инструкции по сборке и использованию кабельного адаптера помогают полностью минимизировать количество деталей для каждого ядра. Этот проект требует знаний в области пайки и базовой электроники, и у вас уже должен быть хотя бы некоторый опыт разработки Arduino. Я не предлагаю это в качестве первого проекта в области электроники. Примечание: я произносю uDuino "moo DWEE noh" Добавлено 02.05.08: (для довольно продвинутых людей) Один из инструментов, которые я создал с помощью этого, - это инструмент логического захвата - своего рода базовый логический анализатор. Я разработал это для устранения неполадок в каналах связи. Требуется графический интерфейс, но я сомневаюсь, что скоро до него дойду. Все еще чертовски полезно в умелых руках. Добавлено 23.06.09: Я хотел бы указать на RBBB от Modern Device для всех, кто хочет что-то с припоем, но при этом супер недорого - особенно если вы получите голые платы и купите запчасти оптом. Также их USB-BUB - более дешевая альтернатива кабелю FT232.

Шаг 1. Соберите детали для кабельного адаптера

Соберите детали для переходника кабеля
Соберите детали для переходника кабеля

Я предлагаю покупать запчасти от Mouser, Radio Shack и Ada Fruit Industries; см. последний шаг для получения информации об источниках запчастей. Не стесняйтесь заменять детали из вашего мусорного ящика, и с помощью резистора / конденсаторов вы можете отклониться от значений, и все будет работать хорошо (резистор я бы предложил между 3,3 кОм и 20 кОм; конденсаторы я обычно не выбирайте меньшие значения, но больше, примерно до 0,47 мкФ, должно быть хорошо).

Для адаптера кабеля вам понадобятся: - небольшая часть печатной платы (8 отверстий на 2 отверстия) - конденсатор емкостью 0,1 мкФ - заглушка 1x8,1 дюйма, прямая - заглушка 1x8,1 дюйма, под прямым углом - некоторые соединительные провод

Шаг 2: Сделайте адаптер кабеля для программирования

Сделайте адаптер кабеля для программирования
Сделайте адаптер кабеля для программирования
Сделайте адаптер кабеля для программирования
Сделайте адаптер кабеля для программирования
Сделайте адаптер кабеля для программирования
Сделайте адаптер кабеля для программирования

В основном адаптер кабеля для программирования должен только направлять сигналы от USB-кабеля FTDI к нужным контактам на микросхемах ATmega168; однако конденсатор добавлен к одному набору контактов, чтобы позволить программному обеспечению Arduino сбросить микросхемы (конденсатор позволяет короткому импульсу пройти к сбросу микросхемы, когда программное обеспечение Arduino переключает вывод RTS).

Для начала вырежьте кусок печатной платы с 9 отверстиями на 2 отверстия. Затем отломите набор из 8 штифтов от полосы заголовка с прямым штифтом и набор из 8 контактов с полосы под прямым углом (при условии, что вы приобрели более длинные полосы). Посмотрите на изображение деталей, чтобы увидеть, как они должны выглядеть. Следуя приведенным ниже инструкциям, просмотрите прилагаемые фотографии и схемы для подключения контактов. Диаграммы намного лучше показывают, где должны идти соединения, но фотографии помогают прояснить ориентацию платы и т. Д. Если у вас есть вопросы, напишите мне, и я постараюсь уточнить все, что не имеет смысла. Переверните печатную плату вверх дном, чтобы вы могли видеть медь вокруг отверстий одной из длинных сторон к себе. Если, как я сделал здесь, вы использовали кусок печатной платы с края оригинала, я предлагаю поместить сторону с дополнительным материалом платы к вам. Проденьте нижнюю часть (короткую сторону) прямого заголовка через самые дальние от вас отверстия, оставив одно отверстие пустым слева от вас, и припаяйте штыри на место (см. Рисунок). Затем протолкните нижнюю часть (сторону с изгибом) прямоугольного коллектора через ближайшие к вам отверстия, снова оставив отверстие слева пустым, и припаяйте штыри на место. Проденьте выводы конденсатора 0,1 мкФ через пустые отверстия слева и припаяйте конденсатор на место. Обрежьте провода. Затем припаяйте каждый из 2 выводов к ближайшему к нему контакту заголовка; один будет соединяться с крайним левым контактом прямой жатки, другой - с крайним левым контактом правого углового жатки. Самый простой, вероятно, - просто создать перемычку из припоя (расплавить достаточно припоя, чтобы он протек между контактом конденсатора и контактом рядом с ним, как на картинке). При необходимости можно использовать короткий провод и припаять его к каждому контакту. Создайте еще один паяный мост или соединение между ближайшими к вам 6-м и 7-м контактами (третий и четвертый справа). Это необходимо для подключения контакта «CTS» кабеля к земле. И создайте еще один паяный мост / соединение между двумя разъемами на втором контакте справа (соедините контакт, ближайший к вам, с тем, который находится дальше, только на один контакт справа). Это соединяет то, что будет перемычкой питания USB VCC с выводом VCC микросхемы. Это подключение к источнику питания будет активным, только если установлена перемычка. Используйте короткий провод, чтобы соединить самый правый ближайший к вам контакт с пятым ближайшим к вам контактом (он пятый, если считать справа или слева). Это подключит +5 В от кабеля USB к другому контакту разъема перемычки. Теперь соедините еще один короткий отрезок проволоки между крайним правым контактом в самом дальнем от вас ряду и 3-м от правого контакта в ближайшем к вам ряду. Это соединяет заземление кабеля с землей микросхемы. Еще два коротких провода, которые нужно добавить: один от второго слева контакта на правом угловом разъеме до третьего слева контакта на прямом разъеме (примечание: поскольку в крайних левых отверстиях установлен конденсатор, это будет третье слева отверстие, ближайшее к вам, и четвертое слева отверстие в самом дальнем от вас ряду). Второй короткий провод будет пересекать первый: от третьего слева штифта на правом угловом жатке до второго слева штифта на прямом жатке (четвертое слева отверстие к третьему -из-левого отверстия). Эти провода соединяют контакты TX и RX кабеля с контактами микросхемы. К сожалению, на кабеле от микросхемы обратный порядок, поэтому нам нужно иметь перекрещенные провода. Теперь вам просто нужно подключить кабель FTDI FT232RL, при этом зеленый провод должен быть подключен к контакту в крайнем левом углу (черный провод подключится к третьему контакту справа). Два оставшихся контакта справа предназначены для перемычки; если перемычка установлена, плата будет питаться от USB-кабеля, что устраняет необходимость в батареях или источнике питания. Эта перемычка НЕ ДОЛЖНА подключаться, когда к плате подключено другое питание или возможно повреждение чего-либо (платы, кабеля, компьютера). Вот и все! Вы готовы сделать несколько ядер uDuino для программирования с помощью кабеля. (При использовании адаптера программирования контакт рядом с конденсатором подключается к контакту 1 микросхемы)

Шаг 3. Решите, делать ли платы с абсолютно минимальным размером или с платами на основе внешнего генератора

Решите, делать ли платы абсолютно минимальными или на основе внешних генераторов
Решите, делать ли платы абсолютно минимальными или на основе внешних генераторов

Решение о создании платы на основе осциллятора основывается на нескольких моментах. Во-первых, есть ли у вас доступ к программатору AVR и время, чтобы запрограммировать специальный загрузчик на свои микросхемы ATmega168? во-вторых, можно ли обойтись без точной последовательной связи с чипом? в-третьих, достаточно ли низкое влияние вашего приложения, чтобы плата могла работать вдвое медленнее, и все по-прежнему будет работать нормально?

Микросхемы ATmega168 имеют встроенный генератор, который можно включить; он работает на частоте около 8 МГц, что вдвое меньше скорости большинства плат Arduino (за исключением Lilypads). Внутренний генератор гарантированно откалиброван с точностью до 10% (что недостаточно для гарантированной хорошей последовательной связи). По моему опыту, заводская калибровка при 5В всегда подходила для загрузки программ, но YMMV. Однако я бы не стал использовать внутренний осциллятор для важных вещей, которые нужно говорить по последовательному каналу. Хотя для мигалок это должно быть нормально. Чипы Arduino с предварительно загруженным загрузчиком, которые, как я обнаружил, всегда работают на частоте 16 МГц, и для них потребуется внешний осциллятор. Если у вас нет доступа к программатору AVR, вы, вероятно, захотите купить предварительно загруженный чип Arduino. Я настоятельно рекомендую Ada Fruit Industries в качестве источника. Обратите внимание, что генераторы на самом деле не такие уж и дорогие (обычно от 0,50 до 75 долларов в Mouser); они просто еще одна часть, которая часто не нужна, и расположение выводов отстойно для действительно чистых макетов Arduino.

Шаг 4: Сборка платы на основе внешнего осциллятора

Сборка платы на основе внешнего осциллятора
Сборка платы на основе внешнего осциллятора

Соберите необходимые детали: - Макетная плата (вы, конечно, можете построить ее прямо на предварительно просверленной печатной плате) - Чип ATmega168 с предварительно загруженным загрузчиком - конденсатор 0,1 мкФ (керамический, полиэфирный и т. Д. Не имеет значения, так что много; значение 0,047 мкФ-0,47 мкФ должно быть в порядке) - резистор 10 кОм (значения ~ 3,3-20 кОм должны работать нормально) - 3-контактный керамический осциллятор с частотой 16 МГц (желательно с длинными, например, 1/2 дюйма, выводами) - короткие отрезки Вставьте ATmega168 в макетную плату по обе стороны от центра. Для каждого из следующих подключений используйте отверстие на каждом выводе ATmega168, которое является ближайшим к открытому чипу; это оставит последнее отверстие в каждом из рядов 1-8 открытым для подключения кабеля программирования. Соедините контакты 7 и 20 с отрезком провода (VCC к AVCC). Соедините контакты 8 и 22 отрезком провода (GND). к AGND) Подключите резистор 10K от контакта 1 к контакту 7 (RES к VCC) Подключите конденсатор 0,1 мкФ от контакта 7 к контакту 8 Подключите внешние контакты генератора к контактам 9 (XTAL1) и 10 (XTAL2) ATmega168. Не имеет значения, какой из контактов подключается к какому контакту ATmega. Подключите центральный контакт генератора к контакту 8 (GND). Если у вас есть линии шины питания на макетной плате, я предлагаю подключить шину + (красный) к контакту 20 и - рейка (синяя) к контакту 22. Это несколько плохой вариант (подключение к аналоговой стороне для подключения питания для других вещей), но если ваша макетная плата такого же размера, как и моя, вы уже заполнили все доступные отверстия для контакта 7. Если вы планируете использовать USB-питание, теперь вы можете просто подключить кабель для программирования и загрузить эскизы на плату (обязательно подключите контакты выбора питания на адаптере кабеля с помощью перемычки для питания микросхемы от USB). В противном случае вам понадобится аккумулятор / регулятор напряжения и т. Д. для подачи питания.

Шаг 5: ИЛИ Сборка платы внутреннего генератора

ИЛИ Сборка платы внутреннего генератора
ИЛИ Сборка платы внутреннего генератора

Соберите необходимые детали: - Макетная плата - Микросхема ATmega168 - Конденсатор 0,1 мкФ (керамический, полиэфирный и т. Д. Не имеет большого значения; подойдет значение 0,047 мкФ-0,47 мкФ) - резистор 10 кОм (значения ~ 3,3 кОм) 20k должно работать нормально) - Короткие длины проводов Запрограммируйте загрузчик с помощью программатора AVR: вы захотите использовать загрузчик lilypad (включен в выпуск Arduino-0010, в аппаратном обеспечении / загрузчиках / lilypad). Используя свой программатор AVR, прошейте загрузчик. Например, в моей системе OSX: cd / Applications / Arduino-0010 / hardware / bootloaders / lilypadPATH = $ {PATH}: / Applications / Arduino-0010 / hardware / tools / avr / binavrdude -C / Applications / Arduino-0010 / оборудование / инструменты / avr / etc / avrdude.conf -cusbtiny -pm168 -Pusb -e -u -Ulock: w: 0x3f: mavrdude -C /Applications/Arduino-0010/hardware/tools/avr/etc/avrdude.conf - c usbtiny -pm168 -Pusb -Uflash: w: LilyPadBOOT_168.hex -Ulock: w: 0x0f: mavrdude -C /Applications/Arduino-0010/hardware/tools/avr/etc/avrdude.conf -cusbtiny -pm168 -Pusb -e -u -Uefuse: w: 0x00: m -Uhfuse: w: 0xdd: m -Ulfuse: w: 0xf2: mУстановить макетную плату: установить ATmega168 в макетную плату, охватывая центр. Для каждого из следующих подключений используйте отверстие на каждом контакте ATmega168, ближайшем к открытому чипу; это оставит последнее отверстие в каждом из рядов 1-8 открытым для подключения кабеля программирования. Подключите контакты 7 и 20 с отрезком провода (VCC к AVCC). Соедините контакты 8 и 22 отрезком провода (GND). к AGND) Подключите резистор 10 кОм от контакта 1 к контакту 7 (RES к VCC) * Подключите конденсатор 0,1 мкФ от контакта 7 к контакту 8 Если у вас есть линии шины питания на макетной плате, я предлагаю подключить шину + (красный) к контакту 20 и - рейка (синяя) к контакту 22. Это несколько плохой вариант (подключение к аналоговой стороне для подключения питания для других вещей), но если ваша макетная плата такого же размера, как и моя, вы уже заполнили все отверстия доступно для контакта 7. Если вы планируете использовать питание от USB, теперь вы можете просто подключить кабель для программирования и загрузить эскизы на плату (обязательно подключите контакты выбора питания на адаптере кабеля с помощью перемычки для питания микросхемы. с USB). В противном случае вам понадобится аккумулятор / регулятор напряжения и т. д. для подачи питания. Обратите внимание, что вы всегда хотите использовать 5 В для программирования через программное обеспечение Arduino; другие напряжения приведут к значительному изменению тактовой частоты и, вероятно, вызовут сбой связи (и, следовательно, программирования). Когда вы загружаете эскизы на плату этого типа, которая использует внутренний генератор, выберите «Lilypad Arduino» в меню «Инструменты / Плата». меню.

2008 10-02 ИСПРАВЛЕНО - в оригинале неправильно ставился контакт 1 на контакт 10

Шаг 6: Подключения для разработки Arduino

Обратите внимание, что контакты ATmega168 явно не соответствуют именам Arduino.

atmega168 Arduino 2 Цифровой 0 3 Цифровой 1 4 Цифровой 2 5 Цифровой 3 6 Цифровой 4 11 Цифровой 5 12 Цифровой 6 13 Цифровой 7 14 Цифровой 8 15 Цифровой 9 16 Цифровой 10 17 Цифровой 11 18 Цифровой 12 19 Цифровой 13 23 Аналоговый 0 24 Аналоговый 1 25 Аналоговый 2 26 Аналоговый 3 27 Аналоговый 4 28 Аналоговый 5

Шаг 7. Источники некоторых деталей

Обратите внимание, что я не использовал определенные конденсаторы и разъемы, перечисленные ниже в этом руководстве, поэтому их внешний вид может незначительно отличаться от указанных здесь. Если у вас возникнут проблемы, дайте мне знать. - USB-кабель FT232RL - Mouser: разъемы с шагом 0,1 дюйма, 36 контактов, прямой - отломите 8 контактов для адаптера кабеля и используйте остальную часть для других проектов - Mouser: расстояние 0,1 дюйма разъемы, 36 контактов, под прямым углом - отломаны 8 контактов для адаптера кабеля - Печатная плата для адаптера кабеля - Mouser: резисторы 10 кОм - Mouser: конденсаторы 0,1 мкФ - макеты Pololu или Ada Fruit - микросхемы ATmega168 Mouser: незапрограммированный или Ada Fruit: предварительно запрограммированный - Mouser: Генераторы 16 МГц

Рекомендуемые: