Простой проигрыватель мелодий на Attiny13

Для новогодней поделки сделал простой проигрыватель-пищалку.




Читать дальше

Новогодняя елка из светодиодов

До нового года осталось меньше двух недель, а новогоднего настроения все нет? Нужно срочно сделать что-то электронно-новогоднее, со светодиодами и ассемблером. Забегая вперед, вот что вышло:



Читать дальше

Ещё про чарлиплексинг

AVR
По мотивам этого поста решил сделать новогоднюю моргалку для елки. В итоге написал маленькую библиотеку для работы с 12 светодиодами, может кому пригодится.

Схема:
Изображение - savepic.su — сервис хранения изображений


Читать дальше

Контроллер пропорционального дозирования для очистки воды

Контроллер
Для удаление из воды повышенного содержания железа и марганца применяются разные схемы.
В моем случае это подача гипохлорита натрия (хлорка) в качестве окислителя.

Далее описан контроллер пропорционального дозирования для дозирующего насоса.
Мозги контроллера на ATMEL ATtiny 4313, плюс используется микросхема точного времени DS1307 с памятью и текстовый LCD индикатор 20х4.



Читать дальше
  • +4
  • 11 декабря 2015, 17:14
  • vad7
  • 1

Делегаты, сигналы и слоты.

Как известно, в C++ делегатов нет. А жаль.
Впринципе, в интернете много делегатов. И слотов много. Но, я зачем-то решил написать свои.

Благодаря механикам: официальной — variadic templates и неофициальной — horrible_cast реализация делегатов оказалось компактной, хотя, у нее, возможно и будут проблемы с переносимостью (не зря же у нормальных людей в реализациях трёхэтажная шаблонная магия и двухэтажная препроцессорная).


Читать дальше
  • +3
  • 09 декабря 2015, 11:48
  • Mirmik
  • 1

чарлиплексинг: 12 светодиодов на 4 ножки без регистрации и СМС

AVR
перепало мне задание сделать из подножного корма простенькое устройство, дающее на выходе определенную частоту, её выбирает пользователь (одну из десяти заранее заложенных) и соответственно как-то нужно показать какая частота сейчас выдаётся. Была найдена жменя светодиодов, кварц и мега48, ну и дабв не скучно было городить было принято решения придумать проблем на свою ж какое-то забавное техническое решение.
Для подключения 12 светодиодов нужно:
а) 12 ножек контроллера и 12 резисторов
б) соединить в группы по 4 лампочки катодами или анодами(в зависимости от религиозных убеждений)и потратить 7 ножек и 4 резистора
в) приколоться и соединить их как на рисунке ниже, потратив 4 ножки контроллера и 4 резистора номиналом в два раза меньше обычного(я брал по 500 ом, но должно работать и с меньшими)



Читать дальше

Новая Atmel Studio 7 импортирует код из Arduino IDE в один клик

AVR
Бывшая AVR Studio теперь позволяет разработчикам Arduino быстро преобразовывать свои скетчи созданные в среде Arduino в полноценные C++ проекты, например для отладки в симуляторе или в железе (вот только JTAG отладчик обойдется минимум в сто баксов).

Поддерживаются платформы AVR и ARM, а также ардуино платы. Причем все — даже те которые вы сами сделали и добавили в Arduino IDE (но только AVR-based).

Новая студия сделана на основе Visual Studio Isolated Shell 2015, поэтому она не устанавливается в Windows XP.
После установки студия занимает на диске 888Mb, причем из них 365Mb занимают примеры кода которые можно не устанавливать (Atmel Software Framework — библиотека свободного исходного кода с 1600 примерами проектов)
Также некоторое место займет .net framework 4.6, если он еще не был установлен.

Может быть со временем на Atmel Studio перейдет большая часть продвинутых ардуинщиков?
Дебажить логику в симуляторе седьмой студии — одно удовольствие.
Ардуинщиками теперь можно быстро увидеть в какие ассемблерные инструкции превращается код и что можно оптимизировать.

Стоит заметить что функция импорта проектов Arduino IDE только односторонняя и пока что сырая, скетч состоящий из нескольких файлов импортировать пока что не умеет.
Интеграция работает начиная с 1.6.5 версии Arduino IDE. Если у вас поля выбора платы и девайса пустые — значит нужно обновить версию Arduino IDE.
Как вариант обхода этого ограничения — можно написать консольную программу, чтоб она все ino файлы склеивала в один большой ino файл, предназначенный специально для импорта в студию. Заодно эту программу можно доработать, чтобы оно потом автоматически подтягивало изменения из С++ проекта назад в ардуиновский проект. Думаю написать такую утилиту.

Ссылка для скачивания: Atmel Studio 7

Код для водонагревателя. С 19-й попытки.

Итак мой первый быдлокод, который, как ни странно, работает.
Всё про эту портянку я написал в комментариях к коду.
Так как на небольших разрешениях мониторов на сайте не очень удобно читать, выкладываю отдельно файл .c в zip-папке.
«Эта мой первый проэкт, так что не ругайте сильно...» — это не про меня. Наоборот, хочу тонны критики, по структуре, по оформлению — по всему. Хочу делать хорошо, так что жду наставлений отцовским тоном.


Читать дальше

О размерности данных в программах для микроконтроллеров

Для начала предисловие. Я не программист, и все знания приобрел в процессе решения технических задач. Поэтому для меня до сих пор банальные для других вещи становятся как открытие. В институте изучал Fortran 77, после появления персонального компьютера начал осваивать Си для AVR. Сейчас осваиваю STM32. Программы под Windows пробовал писать( пару примитивных по нужде, подгрядывая в интернете как это делается). В результате я понял, что мне больше подходит низкоуровневое программирование (когда понимаешь процессы, которые происходят). Для большего утоления информационного голода не хватает знаний как работают компиляторы. В сети практически нет информации об этом (или я не правильно поисковый запрос формировал). Теперь про суть.

Читать дальше

Отладка программ для AVR через виртуальный COM порт Proteus

Всем привет. Заранее боясь прослыть некромантом, представляю краткую заметку о способе отладки программ для микроконтроллеров avr, использующих связь с компьютером или другим мк через uart. Предназначен для тех, кто о нем не знает, на революционность не претендую.


Читать дальше
  • +3
  • 06 июня 2015, 02:42
  • XOR