Development of temperature control and management systems

Visits: 39 Catcatcat Electronics Пошта для контакту e-mail: catcatcat.electronics@gmail.com Метки: Altium Designer, MPLAB® Code Configurator, Измерение температуры

Kitchen timer with contactless gesture control

Visits: 477    Кухонний таймер з безконтактним керуванням жестами дозволяє встановити необхідний період часу для приготування страв, не торкаючись пристрою. Дуже зручно під час приготування їжі, коли руки забрудниться. Усі налаштування тривалості, увімкнення та відключення таймера виконуються за допомогою жестів, не торкаючись пристрою, ви зможете відчути себе чарівником, якому підвладне управління предметами.    У кухонний …
Читать далее Kitchen timer with contactless gesture control

NeoPixel LED и PIC18

Visits: 1635   Еще раз об управлении светодиодами на драйвере WS2812 и ему подобных. Как известно эти светики управляются по однопроводной шине. Основная особенность, что программно можно описать передачу данных, но это будет поглощать значительную часть времени работы микроконтроллера, но в новых микроконтроллерах появилась возможность организовать этот интерфейс с применением периферии. Метки: MCC, MPLAB® Code …
Читать далее NeoPixel LED и PIC18

MCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМ

Visits: 1082 Во многих системах управления, для формирования управляющих сигналов требуется модуль ШИМ, он позволяет не только формировать импульсы заданной длительности, но и с применением обычного RC фильтра строить простые ЦАП. MCC -позволяет быстро и легко настроить модули OC в PIC24 для работы с ШИМ. Структурная схема модуля в режиме ШИМ: Процедура настройки модуля для …
Читать далее MCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМ

Тестирование модуля генератора

Visits: 807  Тестирование модуля генератора Настройка, запуск и проверка рабочей частоты на примере PIC18F26K40. PIC18F26K40 Чтобы понять из-за чего зависит производительность микроконтроллера просто надо понять как работает его задающий тактовый генератор. Для тестирования соберём небольшую схему на PIC18F26K40 (покупаем в Гамме). Для тестирования частоты нам потребуется выход RA6 настроить на вывод частоты синхронизации. Надо учесть, …
Читать далее Тестирование модуля генератора

MPLAB® Code Configurator and Encoder

Visits: 1389 Еще раз про энкодер… Для некоторых приложений очень удобно и экономически выгодно, для настройки и управления использовать энкодер. Такие энкодеры имеют строенную тактовую кнопку которую можно применить для выбора режимов работы устройства. В настоящей статье пойдет речь об энкодерах формирующих код “Грея”. Их формируемая последовательность несколько отличается от классической. Метки: MPLAB® Code Configurator

Проект с использованием MCC часть 16

Visits: 1033 Продолжим изучение EUSART. На этом этапе отработает передачи данных с ПК и получения эха. Для этого в основной цикл программы добавим код if(EUSART_DataReady) // проверим флаг готовности данных в буфере { data = EUSART_Read(); // прочитать данные EUSART_Write(data); // вернуть в ПК это } Суть его проста постоянно в главном цикле проверяется наличие …
Читать далее Проект с использованием MCC часть 16

Проект с использованием MCC часть 15

Visits: 1471 EUSART – Универсальный асинхронный приёмопередатчик (УАПП, англ. Universal Asynchronous Receiver-Transmitter, UART) — узел вычислительных устройств, предназначенный для организации связи с другими цифровыми устройствами. … читать на вики. Внесем изменения в нашу схему, добавим выход на USART. Для связи с ПК будем использовать любой мост в моем случае я буду использовать MCP2200 – USB – USB Bridge. Наша схема …
Читать далее Проект с использованием MCC часть 15

Проект с использованием MCC часть 14

Visits: 782 С выводом данных на дисплей мы справились (но могу сразу сказать библиотеку графики к этой статьи пришлось доработать, поэтому в этом проекте она обновлена). У нас на текущем этапе имеется двухканальный регулятор светодиодного освещения подключенный к ОЛЭД дисплею, воспользуемся этим для индикации состояния работы регулятора. Будем делать индикацию по мере продвижения по логики …
Читать далее Проект с использованием MCC часть 14

Проект с использованием MCC часть 13

Visits: 1001 Так как используя MCC мы можем его использовать со своими библиотеками, поэтому настало время и свое создать. Для начала откроем наш заголовочный файл в нем очень много букв: По этому. да простит нас майкрочип, почистим его, изменим и оставим только: /* * File: I2C.h * Author: Catcatcat eletrinics * Comments: библиотека для шина I2C …
Читать далее Проект с использованием MCC часть 13

Проект с использованием MCC часть 12-2

Visits: 984 Настало время для изучения шины I2C. Изучать будем на примере работы с индикатором RET012864E. Что изменили со старой схемы: В прошлой теме я затупил и не добавил подтягивающие резисторы которые необходимы для работы I2C интерфейса. Номинал резисторов может быть в пределах от 1,8к до 10к, в зависимости от скорости которую мы хотим использовать. Принцип …
Читать далее Проект с использованием MCC часть 12-2

Проект с использованием MCC часть 12-1

Visits: 892 В настоящее время без визуализации информации уже не интересно. Поэтому научимся выводить информацию на дисплей. Для это возьмет простенький OLED RET012864E/REX012864J я такой приобретал в фирме “Гамма-Украина”, описание можно почитать здесь http://catcatcat.d-lan.dp.ua/oled-ret012864e-rex012864j/ . Индикатор по умолчанию выпускается сконфигурированным на работу с параллельным интерфейсом, но драйвер может работать и I2C и SPI. Мы с конфигурируем …
Читать далее Проект с использованием MCC часть 12-1

Проект с использованием MCC часть 11

Visits: 800 Можно несколько облагородить программу вынести наши процедуры обработки нажатия кнопок в отдельные функции. Но вы должны понимать, что это хоть и не значительно, но будет тормозить общую скорость работы проекта, а если таких улучшений будет много, то это значительно может снизить скорость работы программного продукта, но у нас это единственные функции, так, что …
Читать далее Проект с использованием MCC часть 11

Проект с использованием MCC часть 10

Visits: 777 Алгоритм управления освещением от нажатия кнопки. Обработка удержания кнопки: Мы должны проверить кнопка в настоящий момент нажата и флаг удержания установлен, если да Проверить таймер удержания “отработал” – это значит, что кнопка нажата и удерживается, если да Включить модуль, естественно он включиться на ранее заданной яркости. После чего в зависимости от состояния флага NAP1 …
Читать далее Проект с использованием MCC часть 10

Проект с использованием MCC часть 09

Visits: 853   Эта часть будет посвящена созданию практического проекта управления освещение. Тех задание: Два выхода управления ШИМ – светодиодным освещением. Две кнопки управления, каждая кнопка управляет, своим каналом, логика самая простая, нажимаем и удерживаем кнопку включается режим (в зависимости от предыдущего состояния) нарастания яркости или уменьшения, если канал отключен он включается на предыдущей установленной яркости. …
Читать далее Проект с использованием MCC часть 09

Проект с использованием MCC часть 08

Visits: 986 И так создадим проект в котором при помощи двух кнопок мы сможем управлять яркостью светодиодов. При использовании МСС у нас лафа полная, добрые дяди с Microchipa подготовили функции, которыи позволяет изменять значения ШИМ, это PWM1_LoadDutyValue и PWM2_LoadDutyValue. Надо только понимать, что их параметр это не процент, а число, в нашем случае число 10 битное, т.е. …
Читать далее Проект с использованием MCC часть 08

Проект с использованием MCC часть 07

Visits: 924 Модуль PWM – широтно импульсная модуляция (ШИМ). ПИК контроллеры часто на борту имеют модули ШИМ. На их основе строятся многие узлы управления электро приводами. В нашем варианте мы будем его использовать для управления яркостью светодиодов. Модуль ШИМ работает совместно с таймером TMP2, поэтому так же в этой главе будет изучена его работа. Для …
Читать далее Проект с использованием MCC часть 07

Проект с использованием MCC часть 06

Visits: 1218 Изменим схему следующим образом добавим две тактовые кнопки BT1 и BT2. Теперь переключимся на конфигурацию выводов, для этого сделаем двойной клик в окне Ресурсы проекта на Pin Module. В окне Pin Module настроим RB6 и RB7 Настроим на вход убрав птички в колонке выход, подключим к этим входам подтягивающие резисторы, теперь на входе будет высокий …
Читать далее Проект с использованием MCC часть 06

Проект с использованием MCC часть 05

Visits: 1830 Эту часть назовем так как избавься от delay, там где а это реально не надо. Для это нам потребуется научиться использовать прерывания и работать с таймерами. Что такое таймер? Это аппаратное периферийное устройство которое может подсчитывать импульсы от системного генератора или от внешнего источника и формировать прерывания по достижению переполнению. Конфигурация таймер мы …
Читать далее Проект с использованием MCC часть 05

Проект с использованием MCC часть 04

Visits: 1092 Теперь простого горения светиков нам не достаточно, заставим их мигать. Для начала используем первобытно простой способ, но достаточно простой. Используем функции delay, напрягаться откуда они берутся не будем, самое главное , что пишутся они так: __delay_ms(x) // request a delay in milliseconds – задержка в миллисекундах __delay_us(x) // request a delay in microseconds – …
Читать далее Проект с использованием MCC часть 04

Проект с использованием MCC часть 03

Visits: 1533 Первым делом перенастроим регистры конфигурации, следующим образом: Отключим выход генератора (CLKOUT function is disabled. I/O function on the CLKOUT pin) Включим сторожевой таймер (WDT enabled) После этой настройки мы должны будем увидеть в изменении графического вида контроллера было: стало: Настройки конфигурации должна выглядеть так Теперь перейдем к настройке портов, необходимо перейти к окну …
Читать далее Проект с использованием MCC часть 03

Проект с использованием MCC часть 02

Visits: 2233 Когда мы запустили конфигуратор, самое главное понять, что с этим делать и как проверить, то что мы делаем работает или нет. Для начала настроим регистры конфигурации микроконтроллера и настроем тактовый генератор. Настроим работу тактового генератора на максимальную скорость, для нашего микроконтроллера это 16 мГц. Для этого будем использовать внутренний встроенный генератор. Схема генератора Нам …
Читать далее Проект с использованием MCC часть 02