avr

Сдвиговые регистры 75HC595 в ардуино

Сдвиговые регистры в Arduino (74hc595)

Сдвиговые регистры — очень нужная и популярная вещь во многих проектах. Они позволяют размножить выходы вашего контроллера, что очень полезно, когда в реальном проекте вы нагрузите mega328 экраном, клавиатурой и другой периферией. Немного изучим теорию работы этого элемента, соберём простой скетч, а потом по графикам будет понятен алгоритм работы. Взглянем на выводы нашей микросхемы.

передача данных по i2c arduino

i2c передача данных между двумя arduino. Передаём числа float и int

Часто по разным причинам не хватает одного контроллера в проекте, особенно в процессе прототипирования. Допустим, подключили вы на одну плату дисплей и тачпад, и он занял почти все выводы, аппаратную шину SPI, а какой-нибудь датчик отнимает всё время для вычислений. Нужно временно расшириться, ставим рядом ещё одну плату, но возникает логический вопрос — как передавать …

i2c передача данных между двумя arduino. Передаём числа float и int Читать полностью »

игральный кубик arduino mega328 своими руками

Переход от прототипа Arduino к устройству на примере игрального кубика

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

Переход от прототипа Arduino к устройству на примере игрального кубика Читать полностью »

от arduino к голому микроконтроллеру

Как перейти от Arduino к серийному образцу. Минимальная обвязка AtMega 328

Вот вы написали программу, и залили её в свой UNO. Всё великолепно работает, но такую громадную железку не запихнуть в миниатюрный корпус. Да и вдруг, вы хотите сделать 100 таких устройств, а зачем вам увеличение себестоимости, ведь на платах Arduino куча ненужного барахла.

Динамическая индикация на arduino

Динамическая индикация в Arduino, на примере led-матрицы 8х8 + uln2803

Нашёл я недавно пример игральной кости, на матрице 8х8, но много чего там мне не понравилось. Захотелось поместить это в маленький корпус, но размер периферии arduino не позволяет это сделать. Поэтому делаем программу на arduino, а потом переходим на обычную плату с запаянным atmega328. Обычно используется индикатор 8х8 пикселей уже со сдвиговыми регистрами, мы будем …

Динамическая индикация в Arduino, на примере led-матрицы 8х8 + uln2803 Читать полностью »

Computer motherboard circuit. Jumper BIOS config in the center

Контроль доступа, часть 5. Алгоритм сброса и первого старта программы через джампер в Arduino.

В прошлый раз, мы сравнивали введённый пароль с паролем, который был записан во flash память контроллера. Но ведь известно, что эту область памяти нельзя изменить в процессе работы устройства, и для хранения таких данных нужно бы использовать EEPROM. Сегодня разберём, как можно делать аппаратный сброс, где и как хранить эти данные, как реализовать первичный запуск …

Контроль доступа, часть 5. Алгоритм сброса и первого старта программы через джампер в Arduino. Читать полностью »

урок ардуино eeprom

Знакомимся с EEPROM AVR в Arduino IDE.

Самое время вспомнить, что при перезагрузке arduino теряет сохранённые данные. Конечно, мы можем вписать пароль, который будет верифицирован, в тело программы, но если потом пользователь захочет поменяеть его? Для этого в arduino есть ячейки энергонезависимой памяти eeprom. Расшифровывается, как Electrically Erasable Programmable Read-Only Memory, т.е. дословно, энергонезависимая память. Отличается от ПЗУ, в которой хранится программа …

Знакомимся с EEPROM AVR в Arduino IDE. Читать полностью »

Считывание кода с клавиатуры arduino

Контроль доступа. Часть 4 — алгоритм ввода чисел с клавиатуры.

В прошлой статье мы научились работать с кнопкой и управлять замком и светодиодом. Чтобы не мешать этому коду, сканирование клавиатуры мы временно закомментировали. Сегодня мы немного доработаем код, чтобы всё это не конфликтовало друг с другом, а самое главное, реализуем программу считывания цифрового кода в 4 значную переменную. Если она совпадёт, с числом-кодом, что записан …

Контроль доступа. Часть 4 — алгоритм ввода чисел с клавиатуры. Читать полностью »

arduino и контроль доступа diy

Считываем кнопку в Arduino и управляем замком

В предыдущей статье, мы рассмотрели, как уйти от простой команды delay();. Предлагаю убрать дребезг кнопки открытия двери нашим новым кодом, с использованием millis. Просто будем опрашивать кнопку раз в 70 мс, чаще смысла нет, потому что физически нажать кнопку на более короткое время, учитывая дребезг контактов практически невозможно. Но сначала зададим переменные, которые мы будем …

Считываем кнопку в Arduino и управляем замком Читать полностью »

задержки в ардуино без delay

Работаем с задержками без delay() на arduino.

В прошлом уроке мы поняли принцип считывания значения с матричной клавиатуры и написали простой код, который реализует данное действие. Прежде чем переходить к более сложной задаче — сохранению введённого значения с клавиатуры, попробуем реализовать функцию работы с замком разного типа, и открытию его по кнопке с обратной стороны двери, а также сделаем звуковую и световую …

Работаем с задержками без delay() на arduino. Читать полностью »