Как связать микроконтроллер AVR c планшетом на Android, с помощью bluetooth модуля HC-05.
В конце прошлой статьи писал о том, что получилось создать интерфейс для Android и в этой статье попробую описать этот процесс. Почему попробую, потому что опыта в создании приложений под Android у меня практически нет и на самом деле, мало что смогу доступно объяснить. Ну всё довольно отмазываться пора переходить к делу. Для начала качаем и устанавливаем Android Studio, о том как это сделать в...
Подключение bluetooth модуля HC-05 к микроконтроллеру.
Где-то около года назад заказал на ali bluetooth module HC-05. На тот момент ещё не знал для чего он мне может понадобиться, но беспроводные технологии манили меня своим таинством. На момент заказа на рынке была представлена целая линейка bluetooth модулей от HC-03 до HC-09, но некоторые из них могут работать либо в режиме master(HC-04-M), либо в режиме slave (HC-06-S), а HC-05 может работать в...
Рисование геометрических фигур на TFT дисплее, на примере ILI9341.
Алгоритмы, которые позволяют рисовать геометрические фигуры на TFT дисплее были рассмотрены ранее тут, поэтому в этой стать лишь приведу реализацию функций для ILI9341. Для того чтобы закрасить экран нужным цветом в прошлой статье мы использовали функцию TFT_Fill_Screen(), с помощью этой же функции можно закрасить прямоугольник или квадрат нужного размера, правильно задав координаты рабочей...
Вывод символов и строк на TFT дисплей, на примере ILI9341.
В прошлой статье мы рассмотрели как инициализировать TFT дисплей, под управлением драйвера ILI9341, в этой будем учиться выводить символы и строки. Но для начала надо разобраться с одним моментом, если у SSD1289 для вывода точки на дисплей необходимо указать две её координаты и цвет точки, то у ILI9341 указывается 4 координаты, которые ограничивают рабочую область, затем указывается цвет вновь...
Инициализация TFT дисплея на примере ILI9341 для AVR.
Около года тому назад на сайте появилась статья о том как инициализировать TFT дисплей, под управлением SSD1289, а где-то около месяца назад мне написал один из посетителей сайта. Суть письма была в том, что он заказал дисплей по указанной в статье ссылке, но запустить его не получалось и он предложил этот дисплей и ещё несколько других выслать мне, а я, в свою очередь, должен буду выложить код...
Модульное программирование.
После того как начинающий embedder наморгается светодиодом, он непременно решит написать нечто более серьезное и у него как у любого начинающего будет только одно желание «чтобы всё быстрее заработало!!!». В такой попытке самоутвердиться он будет писать всё в один файл, не задумываясь о структуре программы, но через некоторое время, когда часть задуманного будет реализована, станет понятно, что...
Запись звука с помощью микроконтроллера на SD карту.
В одной из прошлых статей мы научились работать с sd карточкой и, конечно, хорошо было применить полученные знания на практике. Так родилась идея записывать звук на sd карточку, чтобы потом слушать его на компьютере. Что-то стоящее сделать не получится по той причине, что мы не можем создавать новые файлы и увеличивать их размер, эти ограничения накладывает библиотека. Но заложенные в этой статье...
Пара слов про указатели в Си.
При изучении Си у начинающих часто возникают вопросы связанные с указателями, думаю вопросы у всех возникают примерно одинаковые поэтому опишу те, которые возникли у меня. Для чего нужен указатель? Почему всегда пишут “указатель типа” и чем указатель типа uint16_t отличается от указателя типа uint8_t? И кто вообще выдумал указатель? Перед тем как ответить на эти вопросы, давайте вспомним, что...
Подключение sd карты к микроконтроллеру.
В одной из прошлых статей, мы выводили картинку на дисплей с sd карточки, но в ней были упущены некоторые моменты, первый — подключение самой карточки, второй — была рассмотрена лишь часть функций библиотеки Petit FatFs, давайте остановимся на этих моментах подробнее. Общение с карточкой возможно по одному из двух интерфейсов, SPI или SD. Надо сказать, что SD интерфейс может работать в...
Обработка нажатий тактовой кнопки.
Обычно первая программа программиста — выводит на экран строку “Hello word”, а эмбеддер мигает светодиодом, может ещё и кнопку прикрутить и с её помощью изменять состояние светодиода. Вот как раз про кнопку и хотел рассказать, обычно кнопку, которая что-либо переключает, называют тактовой кнопкой. Обычно её подключают по одной из схем, изображённых ниже. Но гораздо более интересный вопрос...
Программатор не видит микроконтроллер.
Думаю многие читали в сети, о том что если неправильно установить фьюзы, то стандартными средствами прошить МК уже не получится. Какие фьюзы можно неправильно установить? У микроконтроллера Atmega16 таких фьюзов несколько: SPIEN и JTAGEN — разрешающие программирование микроконтроллера по SPI и JTAG; RSTDISBL — разрешающий использование ножки сброса как дополнительной линии ввода-вывода; Также...
Подключение шагового двигателя FL86STH65-2808A к микроконтроллеру.
Попал ко мне в руки на днях шаговый двигатель FL86STH65-2808A с драйвером SMD-4.2, задача была научиться управлять ним, используя микроконтроллер. Первым делом надо подключить двигатель к драйверу, из двигателя выходит 8 проводов и их можно соединить двумя способами, как показано на картинке ниже. При последовательном соединении обмоток максимального момента можно добиться только на низких...
Управление шаговым двигателем с помощью микроконтроллера.
Всё началось с того, что в одном из устройств надо было поворачивать вал электродвигателя на определённое количество оборотов, большая точность не требовалась плюс-минус четверть оборота, поэтому было принято решение реализовать это с помощью электродвигателя постоянного тока. В качестве управляющего элемента был выбран микроконтроллер — Atmega16, но так как выходное напряжение выводов Atmega16...
Прошивка AVR через бутлоудер.
Так как USB программатор у меня появился не сразу, а шить через com порт было медленно и неудобно, пришлось искать выход из сложившейся ситуации и заключался он в использовании бутлоудера. В одной из прошлых статей описывалось как прошить STM32 с помощью бутлоудера, но у STM32 бутлоудер зашивают в чип ещё при его изготовлении на заводе, нам же предстоит зашить его самим. Вот как это выглядит в...
Цифровой программируемый генератор, подключение ltc6903 к STM32.
В одной из конструкций понадобилось изменять тактовую частоту в большом диапазоне и из названия становится понятно, что выбор пал на LTC6903. LTC6903 и LTC6904 — цифровые программируемые генераторы с диапазоном частот от 1KHz до 68MHz, отличаются они лишь тем, что LTC6903 управляется по SPI, а LTC6904 по I2C. Они достаточно просты в подключении и требуют лишь блокировочные конденсаторы по питанию....
Весы на микроконтроллере, подключение HX711 к Atmega16.
Уже давно стоят без дела вот таки весы.В один из дней они просто перестали включаться, попытка ремонта успехом не увенчалась, поэтому было принято решение восстановить их и заодно разобраться с принципом работы. Для этого на али была заказана плата с HX711. Эта микросхема содержит в себе усилитель, с программируемым коэффициентом усиления и сигма-дельта АЦП, она была специально разработана для...
Рисуем свой символ на LCD дисплее 1602А.
В прошлых статьях мы рассмотрели как инициализировать и выводить символы на LCD дисплей, пользуясь таблицей знакогенератора(CGROM). Также в прошлых статьях упоминалось про такой вид памяти, как CGRAM, в которой можно хранить собственные символы. Надо сказать, что размер её ограничен и может вмещать до 8 символов. Один из символов, который может пригодиться и которого нет в стандартной таблице...
Вывод символов и строк на LCD дисплей 1602A, с управляющим контроллером KS0066U.
В прошлой статье мы рассмотрели как произвести инициализацию LCD дисплея по 4-битной шине, но вместо проверки флага занятости, мы использовали задержку. Давайте с его реализации и начнём....
Инициализация LCD дисплея 1602A, с управляющим контроллером  ks0066U.
Некоторое время лежал без дела вот такой дисплей. И вот появилось желание прикрутить его к одному из проектов на, можно, конечно, постараться найти библиотеку с готовыми функциями, но в таком случае картина, о том как работает дисплей, будет неполная, а нас это не устраивает. Один раз, разобравшись с принципом работы LCD дисплея, не составит большого труда написать свою библиотеку под нужный...
Как прошить и чем отлаживать микроконтроллеры AVR.
Первый вопрос, который встаёт перед начинающим эмбеддером — это как прошить микроконтроллер? Для того чтобы прошить микроконтроллер необходимы три составляющие: чип, который хотим прошить программатор специальная программа управляющая программатором, установленная на компьютере Любой микроконтроллер имеет режим программирования, в этом режиме некоторые выводы микроконтроллера изменяют свои...