Прерывания Arduino

Прерывания Arduino

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

схема

Зайдем из далека: Arduino uno построена на базе микроконтроллера atmel atmega 328 отсюда возникают ограничения в исполнении нашей программы. В отличие от компьютера микроконтроллер не может выполнять одновременно несколько функций, то есть наша прошивка для Arduino выполняется последовательно строчка за строчкой и поэтому мы можем столкнутся с проблемой, когда обработчик какого-либо действия не застанет событие во время своего выполнения. С этой проблемой мы столкнулись при в статье о создании меню для управления светодиодами. Проблема заключалась в том, что иногда короткое нажатие на кнопку не приводило к изменениям переменных. Это происходило из-за того, что наша программа в момент нажатия на кнопку была занята чем-то другим и просто не знала, что кнопка нажата, для решения этой проблемы и были придуманы прерывания.

Continue reading

Почему многие выбирают Arduino

Эта статья будет посвящена вопросу: А почему люди выбирают Arduino а не другие платформы?
Ардуино популярна! А популярность вызвана большим количеством готовых компонентов, которые без проблем можно подключить к плате и написать прошивку для контроллера, ничего не зная о том, что происходит внутри контроллера на самом деле. Это привлекает большое количество людей, которые хотят что-то сделать своими руками.

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

Не малый вклад в развитие платформы которая является открытой внесли Китайские производства, предлагая тоже самое, но за меньшие деньги, в последствии китайцы стали продавать и свои версии плат совместимых с Arduino. Это стало возможным из-за того, что весь проект является полностью открытым, что позволяет даже в домашних условиях изготовить готовую плату.

Кто использует Arduino?

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

Вся платформа Arduino как бы убирает барьеры в освоении микроэлектроники.

Применение Arduino в готовых устройствах

Лично я не вижу смысла применять целые платы Arduino в готовых проектах из-за того, что они скорей всего будут избыточными. Очень многие электронные компоненты, размещенные на плате, не будут использоваться, да и выбор контроллера может оказаться избыточным, что приведет к лишним затратам.

Я всегда собираю прототип на различных шильдах и добившись работы устройства так как нужно мне я предпочитаю изготовить плату с нуля.

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

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

ArduinoMini04-240

Continue reading

Arduino многоуровневое меню

Реализация многоуровнего меню.

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

Приступим!

Для начала надо подумать какое меню я хочу видеть в результате, ведь вариантов огромное множество и часть из них я не смогу реализовать из-за ограниченных возможностей дисплея.

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

1)Общая информация

1.1)Диод1 характеристики

1.2)Диод2 характеристики

Такой тип меню мне кажется всем сразу приходит на ум, он легок в реализации и хорошо расширяем в дальнейшем.

Давайте более подробно продумаем как это меню будет выглядеть на 2 строчном 16 значном lcd дисплее и сколько кнопок нам понадобится для удобной навигации из 5 представленных на lcd shield .

Общая информация будет выглядеть так:

Led1 On/Off 0-255

Led2 On/Off 0-255

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

Continue reading

Arduino + LCD шильд, первые шаги

Всем привет! Пару дней ничего не писал в блог из-за того, что заболел, сегодня температура спала и можно написать следующею статью, которая будет посвящена Lcd шильду с 5 кнопками на борту. Посмотреть на него и купить можно здесь.

display шильд

Continue reading

Arduino Uno подробное знакомство

что такое arduino 3Arduino Uno – плата для быстрого прототипирования и создания готовых устройств построенная на базе микроконтроллера ATmega328. Плата имеет имеет 14 цифровых вход/выходов (6 из которых могут использоваться как выходы с ШИМ), 6 аналоговых входов, кварцевый генератор 16 МГц, разъем USB, разъем внешнего питания, разъем ICSP, кнопку перезагрузки и 4 светодиода (1 доступен для управления). Для работы необходимо подключить Arduino uno к компьютеру простым кабелем USB, либо подать питание через разъем от 7 до 12 вольт (рекомендованные значения). В отличие от всех предыдущих плат, использовавших usb-uart мост на базе микросхемы ft232, новая Ардуино Uno использует микроконтроллер ATmega8U2.

Характеристики

Continue reading

Arduino технические подробности

Ардуино придумали в Италии, поэтому в начале рассмотрим оригинальные платы, выпускаемые самой компанией Arduino:

Ardino – стандартная плата (самая распространенная), 20 входов-выходов, полная совместимость со всеми шилдами.

ArduinoUnoFront240

ArdinoMega – больше по размерам чем просто ардуина из-за чего совместима не со всеми шильдами, 70 входов-выходов.

ArduinoMega Continue reading