Проекты

Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)

Views: 3179 Солнечные коллекторы для отопления в Европе используют в более 50% от общего количества установленных гелиосистем. Однако следует понимать, что гелиосистемы предназначены лишь для поддержки отопления и экономии затрат на основную систему отопления. Основная причина для разработки и установки в наше время – это непомерная цена на классические энергоносители. Описание конструкции собранной гелиосистемы Основные моменты, повлиявшие …
Читать далее Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)

Altium Designer – создание рисунков на печатной плате

Views: 3242   Для создание рисунков на печатной платы в Altium Designer можно использовать возможность использовать в Altium Designer сторонних скриптов. Мне возможность эта очень понравилась и я решил её расшарить для электронщиков. Информация была взята с  Embedded Systems Tutorials.    Скачайте скрип или с моего сайта или по ссылки указанной под видео у автора, вы …
Читать далее Altium Designer – создание рисунков на печатной плате

DIXELL XWEB500D-EVO + RUT900 или как пробить NAT-сервер

Views: 992 Когда необходимо под какой нибудь контроллер имеющий вэб сервер в инет, то нужен статический IP, что оказалось проблемой при работе с операторами сотовых сетей, конкретно с оператором сети “Киевстар”. Их условия просто оказались неприемлемыми. Но случайно был найден метод как обойти эту проблему. Все устройства в инете в Киевстаре работают под NAT-сервером. Т.е. …
Читать далее DIXELL XWEB500D-EVO + RUT900 или как пробить NAT-сервер

MPLAB® Code Configurator and Encoder

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

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

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

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

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

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

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

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

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

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

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

MPLAB X IDE – управление проектами

Views: 910 Среда  MPLAB X IDE позволяет оперативно работать с несколькими проектами, например, если у вас в работе несколько проектов: Для того чтобы переключиться достаточно выбрать другой проект: Для выбора проекта существует еще один метод, который позволяет зафиксировать выбранный проект, для этого необходимо клацнуть правой кнопки на выбранном проекте выбрать пункт Set as Main Project …
Читать далее MPLAB X IDE – управление проектами

Просто о внешних переменных

Views: 767  Часто возникает задача когда необходимо предавать данные между модулями программы. Например, передать данные между файлами, или управлять работой модулей. Для этого создаем заголовочный файл и описываем наши переменные как внешние. В тех файлах в которых предполагается использовать необходимо включить этот файл и описать эту переменную. Механизм выглядит так: Задача может быть и такой необходимо …
Читать далее Просто о внешних переменных

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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