Программирование

Печать

Подключение LCD HD44780 к AVR через регистр сдвига 74HC595. Делаем двухканальный вольтметр на Attiny13

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 20

Как известно ЖК дисплей на базе контроллера HD44780 требует для управления минимум 6 линий ввода/вывода микроконтроллера, поэтому подключить его к микроконтроллеру с малым числом портов, например Attiny13, в стандартном 8/4-битном режиме невозможно.

В этой статье мы рассмотрим технику управления ЖК дисплеем с использованием всего лишь трех линий ввода/вывода микроконтроллера. Команды управления и данные будут пересылаться последовательно в сдвиговый регистр 74HC595(8-разрядный сдвиговый регистр с защелкой на выходе), а параллельные выходные данные с регистра поступают на LCD.

Символьные ЖК дисплеи на базе контроллера HD44780 требуют 14 выводов для управления: 8 линий данных (D0…D7), 3 линии управления (RS, E, R/W), 3 линии питания (Vdd, Vss, Vo). Кроме того многие модели оснащены подсветкой.

Печать

Подключение семисегментных индикаторов с помощью сдвигового регистра 74HC595. Делаем простой термометр на Attiny13 и LM35

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 18

Сдвиговый регистр 74HC595 находит то же применение что и регистр 74HC164, но у первого больше функций и возможностей. У него есть так называемая "защелка", которая управляет выходами регистра, т.е. как только все биты поступят в регистр их надо "защелкнуть", зафиксировать, чтобы данные появились на его выходе, данные на выходах не изменятся пока мы вновь не "защёлкнем" их. Выходы регистра можно установить в высокоомное состояние(HI-Z), т. е. они будут висеть в воздухе, нагрузка полностью отключается. Также как и 74HC164, регистры 74HC595 можно соединять последовательно цепочками, это применяется например в матричных светодиодных индикаторах.

Печать

Подключение семисегментных индикаторов с помощью сдвигового регистра 74HC164. Делаем простой вольтметр на Attiny13.

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 14

Применение сдвиговых регистров таких как 74HC164 обусловлено возможностью управления большим количеством выходных линий с помощью 3-х линий управления, например эти регистры можно использовать для подключения гирлянд или матриц из светодиодов. Они широко используются в бытовой и промышленной аппаратуре для вывода данных на индикаторы или опросе матричной клавиатуры. Из управляющих входов в этой микросхеме есть: DATA, RESET, CLK и есть 8-выходов, получается эта микросхема преобразует последовательный код в параллельный. Вход RESET который сбрасывает установленные значения на выходе обычно не используется, так как занимает лишний вывод у микроконтроллера, он должен всегда быть поднятым к Vcc. Обнулять значения можно посылкой из 8бит логических единиц. Вход CLK продвигает значение по регистру. На вход DATA поступают данные в последовательном режиме.

Печать

Восстановление заводской конфигурации fuse-битов микроконтроллера Attiny13

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 7

Часто в моей практике при программировании  микроконтроллеров  ATtiny13, которые часто использую, возникали  ситуации, когда микроконтроллер то ли из-за программ или неправильных ошибочных действий при программировании «самоблокируется» и отказывается программироваться повторно в ISP-режиме. Насколько я понял, подобная проблема волновала не только меня. И  изучив статьи по ссылкам, я понял что надо попробовать собрать подобное устройство, которое бы возвращало залоченный микроконтроллер к жизни. Потому, как держать STK500 наготове и доставать его всякий раз для таких случаев не всегда удобно.

Выход из ситуации один, перепрограммировать его программатором, восстановив заводские настройки в режиме высоковольтного параллельного программирования, в так называемом H/V режиме. Данного режима нет у простых программаторов, которыми в большинстве пользуются начинающие радиолюбители осваивающие работу с микроконтроллерами AVR.

Какой выход? Купить новый программатор, где есть такой режим? - это дополнительные денежные затраты. Изготовить программатор с возможностью программирования в H/V режиме? - тоже можно, но это снова дополнительное время. Есть ещё один путь, - изготовить небольшое устройство на микроконтроллере, которое будет записывать в «заблокированный» микроконтроллер изначальные заводские настройки.

Печать

Программатор AVR на микросхеме FT232RL

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 7

В наши дни становиться всё меньше и меньше ПК с наличием в них COM и LPT портов.  В этом случае можно использовать USB программаторы, но большинство из них имеют в своём составе микроконтроллер, который тоже нужно чем-то прошить. Вот тут и начинается проблема “курицы и яйца” т.е чтобы собрать программатор нужен ещё один программатор. Но к счастью в интернете уже давно появилась схема высокоскоростного USB программатора, не требующего прошивки управляющего контроллера. Программатор называется USBBit. В составе этого программатора имеется распространённая микросхема FT232RL. Это аппаратный высокоскоростной переходник USB – RS232, который может не только эмулировать RS232, но и поддерживает прямой доступ к порту (это когда мы можем не только записать в порт число, но и выставить любой вывод порта в 0 или 1). Такой режим называется BitBang. Именно с помощью этого режима можно эмулировать интерфейс SPI, по которому программируются микроконтроллеры AVR. Недостатка у этой микросхемы два: она очень маленькая и запаять её бывает сложно, и она дорогая (у нас она стоит 210 рублей). Но это стоит того! Программатор получается отличный, а главное не требует прошивки управляющего контроллера! Схема (упрощённая):

Печать

Подключение матричной клавиатуры к микроконтроллерам AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 18

При необходимости использования в устройстве клавиатуры с большим количеством кнопок, например в кодовом замке, очень часто применяют матричную клавиатуру. Если подключить 12 кнопок обычным способом потребуется 12 выводов микроконтроллера плюс общий провод, в матрице же используется всего один порт контроллера, что способствует экономии выводов контроллера. Кнопки в такой клавиатуре подключаются к общим столбцам и к общим строкам, линии порта микроконтроллера разделяются на ввод PB7-PB4 и вывод PB3-PB0. В каждый момент времени сигнал низкого уровня (логический ноль) подается только на одну строку кнопок, на остальные должна подаваться логическая единица. Это исключит неоднозначность определения номера нажатой кнопки. Двоичные сигналы, присутствующие при этом на столбцах клавиатуры, считываются через порт ввода микроконтроллера.

Печать

Подключение акселерометра ADXL312 к микроконтроллерам AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 6

ADXL312 небольшой по размеру, с низким энергопотреблением 3-осевой акселерометр с высоким разрешением (13-бит) измерения до ± 12 гр. Цифровые данные передаются в формате 16-битных посылок либо через SPI (3-х или 4-х проводной), либо через интерфейс I2C.

ADXL312 хорошо подходит для автомобильной сигнализации или использования в "черных ящиках". Он измеряет статическое ускорение силы тяжести в наклон зондирования, а также динамическое ускорение в результате движения или удара. Ее высокое разрешение (2.9 mg/LSB) позволяет измерять наклоны с разрешением всего 0,25°. Встроенный FIFO(буфер обмена) облегчает использование передискретизационных методов, чтобы улучшить разрешение наклона до всего лишь 0,05°.

Печать

Альтернативные прошивки для AVR910 by PROTTOSS, AVR-Doper, USBasp

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 4

1. AVR-Doper

Довольно известный и популярный программатор, попытки портирования на форуме уже были, но к большому сожалению они затерялись в той большой ветке (было дело, искал целенаправленно, но не мог найти!). Но главное, что в тех прошивках так и не был исправлен глюк с таймаутами в avrdude и "работой через раз" в CodeVisionAVR.

Мой порт AVR-Doper для AVR910 сделан аккуратно, он не нарушает целостности исходников (т.е. там аккуратно добавлен AVR910, ничего не попорчено). Веселый баг с потерей USB-пакета также исправлен.

В целом прошивка работает так же, как и оригинальная: при подключении программатора появляется COM-порт, перемычка 'low sck' работает для понижения частоты, красный светодиод мигает при записи/стирании чипа, зеленый горит при "подключении к девайсу" (когда пины настраиваются как выходы), на выходе "LED" генерируется 1 МГц.

Печать

Подключение DS1307 к микроконтроллерам AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 21

DS1307 - микросхема часов реального времени с интерфейсом I2C(TWI). Часы / календарь хранят следующую информацию: секунды, минуты, часы, день, дату, месяц и год. Конец месяца автоматически подстраивается для месяцев, в которых менее 31 дня, включая поправку для високосного года. Часы работают в 24-часовом или 12-часовом формате с индикатором AM/PM. DS1307 имеет встроенную схему контроля питания, которая обнаруживает пропадание питания и автоматически переключает схему на питание от батареи.

Печать

Программатор PICKIT2 Clone

Опубликовано . Опубликовано в Программирование PIC

Рейтинг:   / 3
Программатор PICKIT2 Clone

PICkit 2 - недорогой программатор/отладчик предназначенный для отладки и прошивки Flash микроконтроллеров фирмы Microchip. Подключение к компьютеру осуществляется через USB-интерфейс. Поддерживается практически все семейство PIC-микроконтроллеров: PIC18, 8-бит, 16-бит и 32-бит микроконтроллеры. С помощью среды MPLAB IDE поддерживается внутрисхемная отладка кода. В данной статье представлен проект по изготовлению клона PICkit 2, с полным сохранением функционала оригинального программатора.

Характеристики программатора:
1. Данный программатор работает точно также, как и оригинальный PICkit 2
2. Работа как с 5В, так и с 3.3В микроконтроллерами
3. В схеме не используются мосфеты, только преобразователь на м/с LM358
4. Возможность прошивки МК без компьютера

Рекомендуем посмотреть

No result...