7 ноября 2013 г.

LED матрица

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

30 октября 2013 г.

Как настроить Фьюзы на AVR и для чего они нужны

Фьюзы или fuse-биты, с их помощью можно настраивать некоторые параметры микроконтроллеров, как частота, зашита от копирования прошивки и т.д. Их 2 байта старший и младший.

Фьюзы различаются от МК к МК. Самое лучшее описание нужно всегда искать в даташите на определённый микроконтроллер.

В Atmel AVR принято что за состояние ВКЛЮЧЕНО отвечает 0 а ОТКЛЮЧЕНО 1. Что не много раздражает, т.к. привычнее наоборот. Это нужно учитывать при чтении документации и при записи фьюзов, так как разные прошивальщики используют разные нотации, у некоторых как в Atmel, у некоторых наоборот.

27 октября 2013 г.

Работа с сервомоторами, практика.

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



24 октября 2013 г.

Таймеры Счётчики AVR

У микроконтроллеров AVR есть несколько таймеров-счетчиков. Они могут быть 8 (2^8 = 256) или 16 (2^16 = 65536) разрядными.


  • Таймеры могут тикать с разной скоростью и подсчитывать количество тиков (также могут считать время).
  • Тикать от внешнего кварца.
  • формировать точные временные интервалы.
  • считать длительность и количество внешних импульсов.
  • Генерировать несколько видов ШИМ.
  • формировать прерывания.

20 октября 2013 г.

Как рассчитать транзисторный ключ. Для практики: как зажечь светодиод в темноте

Мне нужно было сделать схемку, чтобы светодиоды загорались в темноте. После того как я потратил кучу времени, но ничего не заработало я понял что совершенно не разбираюсь в операционных усилителях и даже в простейших схемах на транзисторах.
Но затем я наткнулся на это видео, где Ben Krasnow всё отлично объяснил.




18 октября 2013 г.

Что такое сервопривод (сервомотор, серва)

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



Как с ним работать

9 октября 2013 г.

LED driver. Драйвер питания светодиодов

Светодиоды работают на токе. Они съедают необходимое им напряжение не замечая его. Если на него подать 12 вольт он съест необходимые ему к примеру 2 вольта и остальное напряжение пойдёт дальше. Но с током всё по другому, именно от тока зависит яркость светодиода и превышение тока заканчивается смертью светодиода, но подаваемое напряжение не ограничено.

29 августа 2013 г.

altium designer un-routed net constraint

Начал пользоваться "Altium Designer" и потратил много времени разбираясь с ошибкой:
"un-routed net constraint".
Как оказалось она возникла у меня из-за того, что выводы или PIN любого не SMD элемента проходят плату насквозь и скорей всего Altium Designer хотел чтобы я провёл дорожки на всех слоях. (Хотя я пытался и это не помогало).
Вообщем решается это таким образом:
Нужно в настройках всех выводов поставить галочку напротив "plated", что обозначает металлизированное отверстие.
Чтобы выбрать все пины нужно кликнуть правой кнопкой на один и нажать "Find similar".

17 августа 2013 г.

Новый осциллограф

Купил через ebay у китайцев осциллограф Hantek DSO5102P, за 320$. Таможне пришлось отдать 30% цены.

26 июля 2013 г.

Как запрограммировать AVR микроконтроллер с помощью usbasp

Здесь я расскажу как запрограммировать микроконтроллер на примере ATmega32 с помощью "Khazama AVR Programmer",  "eXtreme Burner- AVR" и "usbasp".

usbasp - это программатор который можно собрать самому, либо купить (на ebay 3$). Драйвера и дополнительная информация на сайте создателя


Khazama AVR Programmer и "eXtreme Burner- AVR" это программы которые заливают прошивку в микроконтроллер, нужно использовать только 1 из них на выбор, ниже я расскажу как с ними работать.

16 мая 2013 г.

AVR готовая библиотека для HD44780


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

Если интересно как работает дисплей, то я расписал это здесь

27 апреля 2013 г.

Работа с инфракрасным датчиком Sharp

Я описал как работать с АЦП в этой статье.

Теперь расскажу как работает инфракрасный датчик.


( В самом простом случае ) У него есть 3 вывода: Vcc - питание GND - земля и Vo - с которого снимаем данные.
В зависимости от расстояния меняется напряжение на выводе Vo, всё что остаётся это перевести данные из аналога в цифру.





9 марта 2013 г.

AVR работа с АЦП

АЦП или Аналого Цифровое Преобразование. Как ни странно, преобразует аналоговое значение напряжения в цифровое, с которым удобнее работать микроконтроллеру. Он это делает на подобие компаратора, сравнивая напряжение на выходе с некоторым опорным напряжением.

От разрешения АЦП зависит его точность. к примеру если опорное напряжение 5 Вольт, АЦП 10 битный. то на каждый бит приходиться     5 / ( 2^10 - 1 )      = 0.00489 или 5 мВ. Точнее замерить нельзя.