Современное радиолюбительство невозможно представить без микроконтроллеров, и это очевидно. В последние десятилетия микроконтроллеры различных производителей стали широко распространены в разных сферах деятельности человека. Нередко их можно встретить в самых неожиданных устройствах и конструкциях. Мы с вами являемся свидетелями компьютеризации и автоматизации окружающих нас процессов. Истина такова, что без знания основ программирования создавать современные конкурентоспособные устройства, стало практически невозможно…
Для радиолюбителей, которые до определенного времени не использовали микроконтроллеры в своих конструкциях, эти устройства остаются какими-то непонятными, или даже загадочными. Пелена “таинственности” начинает возникать с того момента, когда впервые открывается даташит (техническое описание) микроконтроллера, состоящего примерно из 300 страниц мелкого шрифта, вызывающий панический ужас лишь от мыслей, что запомнить это просто невозможно…
Когда-то сделал маленькую библиотеку для работы с графическим ЖКИ на ассемблере, немного порисовал в Proteus`e, а потом куда-то ее задевал и вот решил недавно подключить WG12864C и повыводить на него какие-нибудь данные и написать программу на С. Что из этого получилось опишу ниже. Итак, в этой статье можно найти как подключить, что куда подать и какими командами управлять WG12864C. Разрешение дисплея 128 на 64 точки. Управляет дисплеем два контроллера KS0108. Это связано с тем, что один контроллер может управлять дисплеем с разрешением 64 на 64 точки. Это конечно вносит дополнительные сложности в управление этим дисплеем, но мы сможем все это решить. Выглядит дисплей так
Понадобилось мне тут недавно подключить к МК внешнее АЦП на 12 бит по SPI. И в этой статье решил рассказать, что из этого получилось. В первую очередь, хотелось чтобы это АЦП можно было подключить к МК в Протеусе и получить результат там. Покапавшись по интернету и посмотрев цены, остановился на 12-и битном одноканальном АЦП фирмы Microchip MCP3201. Самого MCP3201 в Протеусе нет, но есть 10-и битный MCP3001. Отличается он от MCP3201 лишь тем, что он 10-ти битный и поэтому есть небольшое отличие в обработке уже полученных данных, а получать с него данные также как с 12-и битного. Но обо всем по порядку.
Понадобилась мне как-то простая менюшка. Посидел чуток и кое-чего получилось. Сейчас попробую рассказать как ее реализовать, если понадобится.
Идея такая:
На ЖКИ отображается какая то информация. И тут мы хотим что-нибудь подстроить и вызываем меню. На экране появляются пункты меню, которые мы можем пролистывать и устанавливать то что нам нужно. Когда все настройки закончились, нажимаем выход и на экране снова отображается нужные данные.
Схема подключения кнопок и ЖКИ приведена на рисунке.
Иногда возникает необходимость увеличить количество выходов микроконтроллера. Такая ситуация может возникнуть например при работе с микроконтроллерами серии tiny, например у attiny13 всего 8 ножек и в качестве выходов работают 5(6 если RESET с помощью фьюзов сделать входом/выходом ), и подключить к нему семисигментый индикатор не получится. Так вот используя одну дополнительную микросхему можно решить эту проблему и эта микросхема 74HC595.
Дисплеи на основе контроллера HD44780 хороши собой и очень удобны в использовании, но имеют один недостаток - ограниченный набор символов. Может возникнуть ситуация, когда нужного для нашего проекта символа в стандартном наборе просто не окажется и что же тогда делать. Выход из этой ситуации есть.
Дисплеи на основе контроллера HD44780 очень удобны в использовании, но имеют один недостаток — ограниченный набор символов. Может возникнуть ситуация, когда нужного для нашего проекта символа в стандартном наборе нету и что же тогда делать. Выход из этой ситуации мы и рассмотрим в нашей статье.
Производители контроллеров HD44780 предусмотрели возможность такой ситуации, поэтому в памяти контроллера есть специальные символы по адресам 0х00 — 0х07 — это переопределяеемые символы, графическое изображение которых может назначить сам пользователь. а значит что мы в контроллер можем записать до 8 необходимых нам символов.