Схемы на микроконтроллерах pic. Микроконтроллеры PIC: обзор, применение и проекты

Что такое микроконтроллеры PIC. Какие бывают семейства и модели PIC. Как программировать микроконтроллеры PIC. Какие проекты можно реализовать на их основе. Каковы преимущества и недостатки PIC по сравнению с другими микроконтроллерами.

Содержание

Что такое микроконтроллеры PIC и их основные характеристики

Микроконтроллеры PIC (Peripheral Interface Controller) — это семейство микроконтроллеров, выпускаемых компанией Microchip Technology. Они представляют собой однокристальные компьютеры, сочетающие в себе процессор, память и периферийные устройства.

Основные характеристики микроконтроллеров PIC:

  • RISC-архитектура с небольшим набором инструкций
  • Гарвардская архитектура с раздельной памятью для программ и данных
  • Встроенная Flash-память программ
  • Встроенное ОЗУ для данных
  • Широкий выбор периферийных модулей (таймеры, АЦП, ШИМ и др.)
  • Низкое энергопотребление
  • Компактные корпуса
  • Доступная цена

Благодаря этим особенностям микроконтроллеры PIC нашли широкое применение в бытовой технике, промышленной автоматике, автомобильной электронике и многих других областях.


Семейства микроконтроллеров PIC и их особенности

Microchip Technology выпускает несколько семейств микроконтроллеров PIC:

8-битные микроконтроллеры:

  • Базовые (PIC10, PIC12, PIC16) — простые и недорогие модели для несложных задач
  • Средние (PIC16F, PIC18) — более производительные модели с расширенной периферией

16-битные микроконтроллеры:

  • PIC24F — для приложений с низким энергопотреблением
  • PIC24H — для задач, требующих высокой производительности

32-битные микроконтроллеры:

  • PIC32 — самые мощные модели для сложных вычислительных задач

Каждое семейство имеет свои особенности по производительности, объему памяти, набору периферии и энергопотреблению. Это позволяет подобрать оптимальный микроконтроллер практически для любой задачи.

Программирование микроконтроллеров PIC

Для программирования микроконтроллеров PIC используются следующие основные инструменты:

  • Среды разработки (MPLAB X, MikroC, CCS и др.)
  • Программаторы для записи кода в память микроконтроллера
  • Отладочные платы для тестирования программ

Программирование обычно выполняется на языках C или ассемблера. Процесс разработки включает следующие этапы:


  1. Написание исходного кода программы
  2. Компиляция кода в машинные инструкции
  3. Загрузка скомпилированного кода в память микроконтроллера с помощью программатора
  4. Отладка программы на реальном устройстве или симуляторе

Microchip предоставляет бесплатную среду разработки MPLAB X IDE и компилятор XC8, что упрощает начало работы с микроконтроллерами PIC.

Популярные проекты на микроконтроллерах PIC

На базе микроконтроллеров PIC можно реализовать множество интересных проектов. Вот несколько примеров:

Цифровые часы

Простой проект цифровых часов на PIC16F628A с выводом времени на семисегментные индикаторы. Микроконтроллер отсчитывает время и управляет индикацией. Для точности хода используется внешний кварцевый резонатор.

Метеостанция

Домашняя метеостанция на PIC18F4550 с датчиками температуры, влажности и давления. Данные выводятся на ЖК-дисплей. Есть возможность подключения к компьютеру по USB для сбора статистики.

Программируемый RGB-светильник

Светодиодный RGB-светильник на PIC12F675 с возможностью программирования различных световых эффектов. Управление осуществляется с помощью ИК-пульта. Микроконтроллер формирует ШИМ-сигналы для управления яркостью и цветом.


Регулятор мощности

Устройство на PIC16F876 для плавной регулировки мощности нагрузки 220В. Использует принцип фазового управления. Микроконтроллер измеряет сетевое напряжение и формирует импульсы управления симистором.

Преимущества и недостатки микроконтроллеров PIC

Микроконтроллеры PIC имеют ряд преимуществ по сравнению с другими семействами:

  • Широкий модельный ряд для разных задач
  • Хорошее соотношение цена/возможности
  • Развитая периферия
  • Низкое энергопотребление
  • Удобные средства разработки
  • Большое сообщество разработчиков

К недостаткам можно отнести:

  • Меньшую популярность по сравнению с AVR
  • Более сложную для новичков архитектуру
  • Отсутствие полностью открытых инструментов разработки

Тем не менее, микроконтроллеры PIC остаются одним из самых популярных семейств и отлично подходят для широкого круга задач.

Сравнение PIC с другими популярными микроконтроллерами

Как микроконтроллеры PIC соотносятся с другими распространенными семействами? Давайте сравним их с основными конкурентами:


PIC vs AVR

AVR от Atmel (теперь Microchip) — главный конкурент PIC. Основные различия:

  • AVR имеет более простую для понимания архитектуру
  • PIC предлагает более широкий выбор моделей
  • AVR популярнее среди любителей (Arduino)
  • PIC часто предпочитают в промышленности

PIC vs ARM Cortex-M

32-битные ядра ARM составляют конкуренцию старшим моделям PIC:

  • ARM обеспечивает более высокую производительность
  • PIC проще в освоении и разработке
  • ARM имеет лучшую поддержку от сторонних производителей
  • PIC предлагает более широкий выбор 8 и 16-битных моделей

PIC vs MSP430

Микроконтроллеры MSP430 от Texas Instruments ориентированы на сверхнизкое энергопотребление:

  • MSP430 обеспечивает рекордно низкое энергопотребление
  • PIC предлагает более широкий выбор периферии
  • MSP430 имеет более простую архитектуру
  • PIC доступен в более широком диапазоне производительности

Выбор между этими платформами зависит от конкретной задачи и предпочтений разработчика. У каждой есть свои сильные стороны.

Перспективы развития микроконтроллеров PIC

Какое будущее ждет микроконтроллеры PIC? Вот некоторые тенденции их развития:


  • Повышение производительности при сохранении низкого энергопотребления
  • Увеличение объемов встроенной памяти
  • Интеграция более мощных периферийных модулей (криптография, беспроводная связь)
  • Развитие средств разработки и отладки
  • Оптимизация для применений в интернете вещей (IoT)

Несмотря на растущую конкуренцию со стороны ARM, микроконтроллеры PIC сохраняют свою нишу благодаря простоте применения и широкому выбору моделей. Они продолжат развиваться, оставаясь популярным выбором для многих приложений.


МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА PIC

МИКРОКОНТРОЛЛЕРЫ PIC

     Ещё несколько лет назад, для сборки какого-либо цифрового устройства требовался десяток, а то и два логических микросхем типа К155, К561 и другие. Помимо трудностей сборки и настройки, такие устройства обладали слишком большими габаритами и энергопотреблением. Но технологии не стоят на месте, и вот, им на смену пришли микроконтроллеры PIC. Аббревиатура PIC, расшифровывается как Peripheral Interface Controller. Буквальный перевод: периферийный интерфейсный контроллер. Выпускает эти контроллеры американская компания Microchip Technology. Существуют 8, 16 и 32-битные микроконтроллеры под маркой PIC. Они представляют собой микpоконтpоллеpы с RISC аpхитектуpой, встpоенным ЭППЗУ пpогpаммы и ОЗУ данных. Скачать руководство по микроконтроллерам PIC можно здесь. А здесь имеется хорошая книга «Радиолюбительские схемы на PIC контроллерах» — описание десятков схем и конструкций: часы, таймеры, программаторы и многое другое.

     Работа 8-ми битных микроконтроллеров основывается на 12-ти разрядной архитектуре слова программ и предоставлены, как наиболее дешевое решение. Среднее семейство представлено микроконтроллерами серий PIC12 и PIC16, и имеет ширину слова программ 14 бит. Микроконтроллеры работают в диапазоне питающих напряжений от 2.0 до 5.5В, имеют встроенную систему прерываний, аппаратный стек, энергонезависимую память данных EEPROM. Набор периферии: USB, SPI, I2С, USART, LCD, АЦП и другие.

     В новых микроконтроллерах применена улучшенная архитектура 8-ми битных PIC контроллеров PIC12 и PIC16. При этом увеличен объём памяти программ и данных, улучшен аппаратный стек, имеются дополнительные источники сброса, расширена периферия для создания сенсорных пользовательских интерфейсов, уменьшено время входа в прерывание и размер кода, увеличена производительность на 50 %.

     Семейство 16-ти разрядных микроконтроллеров представлены в модификациях PIC24F — производительность ядра [email protected]МГц и PIC24H — [email protected]МГц. Отличаются они технологией изготовления FLASH программной памяти. 

     Особенности микроконтроллеров PIC24F и PIC24H:

 Выполнение команды за 2 такта генератора
 Время отклика на прерывание — 5 командных тактов
 Доступ к памяти за 1 командный такт
 Аппаратный умножитель 
 Аппаратный делитель 32/16 и 16/16 чисел
 Питающие напряжения 2.0…3.6В, один источник питания.
 Внутрисхемное и само- программирование
 Встроенный генератор с PLL
 Расширенная периферия (до 3-х SPI, до 3-х I2C, до 4-х UART с поддержкой IrDA, LIN, CAN и расширенный ECAN, USB OTG)
 Модуль измерения времени заряда, для управление ёмкостными сенсорами
 Ток портов ввода/вывода около мА
 До девяти 16-битных таймеров
 До восьми модулей захвата
 Энергосберегающие режимы

 До двух АЦП с 32 каналами и с конфигурируемой разрядностью
 До восьми 16-битных модулей сравнения / генерации ШИМ 

     Самыми продвинутыми контроллерами являются 32-разрядные PIC32. Их особенности: ядро MIPS32 M4K, частота такта 80 МГц, большинство команд выполняются за 1 такт генератора, производительность 1.53 Dhrystone MIPS/МГц, порты ввода/вывода относятся к основному частотному диапазону, дополнительный частотный диапазон для периферии из основного посредством программно настраиваемого делителя, до 32 кБ SRAM и 512 кБ Flash с кэшем предвыборки, совместимость по выводам и отладочным средствам с 16-битными контроллерами, аппаратный умножитель и делитель с независимым конвейером, оптимизированным по скорости выполнения, набор расширенных инструкций MIPS16e, независимый от основного ядра контроллер USB.

     Схемы и устройства на PIC контроллерах можно питать от сети 220 вольт без понижающего трансформатора. Для этого достаточно спаять простую схему бестрансформаторного источника 5В, которая обеспечивает ток нагрузки около 0.1А. Для уменьшения влияния наводок и помех следует неиспользуемые выводы микроконтроллера подключать к шине земли. При разводке печатной платы обязательно установите фильтрующий конденсатор, емкостью 0,1 мкф, между выводами питания. Цепи генератора тактовых импульсов и сброса микроконтроллера делайте покороче. По периметру платы стоит провести шину земли.

     В настоящее время семейство микроконтроллеров PIC представлено такими моделями:

ТИП Память,байт ОЗУ,байт Частота,МГц

PIC12C508 512×12 25 4
PIC12C508A 512×12 25 4
PIC12C509 1024×12 41 4
PIC12C509A 1024×12 41 4
PIC12C671 1024×14 127 10
PIC12C672 2048×14 127 10
PIC12CE518 512×12 25 4
PIC12CE519 1024×12 41 4
PIC12CE673 1024×14 127 10
PIC12CE674 1024×14 128 10
PIC12CR509A 1024×12 41 4
PIC12F629 1024 64 20
PIC12F675 1024 64 20
PIC14000 4096×14 192 20
PIC16C432 2048×12 128 20
PIC16C433 2048×12 128 10
PIC16C505 1024×12 72 20
PIC16C52 384×12 25 4
PIC16C54 512×12 25 20
PIC16C54A 512×12 25 20
PIC16C54C 512×12 25 20
PIC16C55 512×12 24 20
PIC16C554 512×14 80 20
PIC16C558 2048×14 128 20
PIC16C55A 512×12 24 20
PIC16C56 1024×12 25 20
PIC16C56A 1024×12 25 20
PIC16C57 2048×12 72 20
PIC16C57C 2048×12 72 20
PIC16C58A 2048×14 73 20
PIC16C58B 2048×12 73 20
PIC16C61 1024×14 36 20
PIC16C620 512×14 80 20
PIC16C620A 512×14 96 20
PIC16C621 1024×14 80 20
PIC16C621A 1024×14 80 20
PIC16C622 2048×14 128 20
PIC16C622A 2048×14 128 20
PIC16C62A 2048×14 128 20
PIC16C62B 2048×14 128 20
PIC16C63 4096×14 192 20
PIC16C63A 4096×14 192 20
PIC16C642 4096×14 176 20
PIC16C64A 2048×14 128 20
PIC16C65A 4096×14 192 20
PIC16C65B 4096×14 192 20
PIC16C66 8192×14 368 20
PIC16C662 4096×14 176 20
PIC16C67 8192×14 368 20
PIC16C71 1024×14 36 20
PIC16C710 512×14 36 20
PIC16C711 1024×14 68 20
PIC16C712 1024×14 128 20
PIC16C715 2048×14 128 20
PIC16C716 2048×14 128 20
PIC16c717 2048×14 256 20
PIC16C72 2048×14 128 20
PIC16C72A 2048×14 128 20
PIC16C73 4096×14 192 20
PIC16C73A 4096×14 192 20
PIC16C73B 4096×14 192 20
PIC16C74 4096×14 192 20
PIC16C745 8192×14 256 24
PIC16C74A 4096×14 192 20
PIC16C74B 4096×14 192 20
PIC16C76 8192×14 368 20
PIC16C765 8192×14 256 24
PIC16C77 8192×14 368 20
PIC16C770 2048×14 256 20
PIC16C771 4096×14 256 20
PIC16C773 2048×14 256 20
PIC16C774 2048×14 256 20
PIC16C781 1024×14 128 20
PIC16C782 2048×14 128 20
PIC16C923 4096×14 176 8
PIC16C924 4096×14 176 8
PIC16C925 4096×14 196 20
PIC16C926 4096×14 336 20
PIC16CE623 512×14 96 20
PIC16CE624 1024×14 96 20
PIC16CE625 2048×14 128 20
PIC16CR54A 512×12 25 20
PIC16CR54b 512×12 25 20
PIC16CR54C 512×12 25 20
PIC16CR56A 2048×14 25 20
PIC16CR57A 4096×14 72 20
PIC16CR57b 2048×12 72 20
PIC16CR57C 2048×12 72 20
PIC16CR58A 2048×12 73 20
PIC16CR58B 2048×12 73 20
PIC16CR62 2048×14 128 20
PIC16CR63 4096×14 192 20
PIC16CR64 4096×14 192 20
PIC16CR65 4096×14 192 20
PIC16CR72 2048×14 128 20
PIC16CR83 512×14 36 10
PIC16CR84 1024×14 68 10
PIC16F627 1024×14 224 20
PIC16F627A 1024 224 20
PIC16F628 2048×14 224 20
PIC16F628A 2048 224 20
PIC16F630 1024 64 20
PIC16F648A 4096 256 20
PIC16F676 1024 64 20
PIC16F72 2048 128 20
PIC16F73 4096×14 192 20
PIC16F74 4096×14 192 20
PIC16F76 8192×14 368 20
PIC16F77 8192×14 368 20
PIC16F818 1024 128 20
PIC16F819 2048 256 20
PIC16F83 512×14 36 10
PIC16F84 1024×14 68 10
PIC16F84A 1024×14 68 10
PIC16F85 1024×14 128 20
PIC16F86 2048×14 128 20
PIC16F87 4096×14 192 20
PIC16F870 2048×14 128 20
PIC16F871 2048×14 128 20
PIC16F872 2048×14 128 20
PIC16F873 4096×14 192 20
PIC16F873A 4096×14 192 20
PIC16F874 4096×14 192 20
PIC16F874A 4096×14 192 20
PIC16F876 8192×14 368 20
PIC16F876A 8192×14 368 20
PIC16F877 8192×14 368 20
PIC16F877A 8192×14 368 20
PIC16F88 4096×14 192 20
PIC16F89 4096×14 192 20
PIC16HV540 512×12 25 20
PIC16LC74B 4096×14 192 16
PIC17C42 2048×16 232 33
PIC17C42A 2048×16 232 33
PIC17C43 4096×16 454 33
PIC17C44 8092×16 454 33
PIC17C752 8192×16 454 33
PIC17C756 16384×16 902 33
PIC17C756a 16384×16 902 33
PIC17C762 8192×16 678 33
PIC17C766 16384×16 902 33
PIC17CR42A 2048×16 232 33
PIC17CR43 2048×16 232 33
PIC17LC752 8192×16 678 16
PIC17LC756A 16384×16 902 16
PIC18C242 8192×16 512 40
PIC18C252 16384×16 1536 40
PIC18C442 8192×16 512 40
PIC18C452 16384×16 1536 40
PIC18C658 16384×16 1536 40
PIC18C801 — 1536 25
PIC18C858 16384×16 1536 40
PIC18F010 1024×16 256 40
PIC18F012 1024×16 256 40
PIC18F020 2048×16 256 40
PIC18F022 2048×16 256 40
PIC18F1220 2048 256 40
PIC18F1230 2048×16 256 40
PIC18F1320 4096 256 40
PIC18F1330 4096×16 256 40
PIC18F2220 2048 512 40
PIC18F232 8192×12 512 40
PIC18F2320 4096 512 40
PIC18F2331 4096×16 512 40
PIC18F242 8192×16 768 40
PIC18F2431 8192×16 768 40
PIC18F2450 8192×16 1024 40
PIC18F248 8192×16 768 40
PIC18F252 16384×16 1536 40
PIC18F2550 16384×16 1024 40
PIC18F258 16384×16 1536 40
PIC18F4220 2048 512 40
PIC18F432 8192×12 512 40
PIC18F4320 4096 512 40
PIC18F4331 4096×16 512 40
PIC18F442 8192×16 768 40
PIC18F4431 8192×16 768 40
PIC18F4450 8192×16 1024 40
PIC18F448 8192×16 768 40
PIC18F452 16384×16 1536 40
PIC18F4550 16384×16 1024 40
PIC18F458 16384×16 1536 40
PIC18F6520 16384×16 2048 40
PIC18F6585 24576 3072 40
PIC18F6620 32768×16 3840 40
PIC18F6680 32768 3072 40
PIC18F6720 65536×16 3840 40
PIC18F8520 16384×16 2048 40
PIC18F8585 24576 3072 40
PIC18F8620 32768×16 3840 40
PIC18F8680 32768 3072 40
PIC18F8720 65536×16 3840 40

 

     Для программирования контроллеров нужны компьютеp, пpогpамматоp, подключаемый к паpаллельному поpту компьютеpа, сама микpосхема контроллер (PIC16F84), макетная плата, 8 светодиодов, источник +5 В и панелька для микpосхемы. Простую и популярную программу PonyProg2000 можно скачать в разделе софт.

     ФОРУМ по микрорконтроллерам

Схемы на микроконтроллерах pic. Журнал практической электроники Датагор (Datagor Practical Electronics Magazine)

Представляю вторую версию двухканального циклического таймера. Были добавлены новые функции и изменилась принципиальная схема. Циклический таймер позволяет включать и выключать нагрузку, а также выдерживать паузу на заданные интервалы времени в циклическом режиме. Каждый из выходов таймера имеет 2 режима работы — «Логический» и «ШИМ». Если выбран логический режим устройство позволяет управлять с помощью контактов реле освещением, отоплением, вентиляцией и другими электроприборами. Нагрузкой могут выступать любые электрические приборы мощность нагрузки которых не превышает максимального тока реле. Тип выхода «ШИМ» позволяет например подключить через силовой транзистор двигатель постоянного тока, при этом есть возможность установить скважность ШИМ, чтобы двигатель вращался с определенной скоростью.

Часы собранные на микроконтроллере ATtiny2313 и светодиодной матрице показывают время в 6-ти различных режимах.

Светодиодная матрица 8*8 управляется методом мультиплексирования. Токоограничивающие резисторы исключены из схемы, чтобы не испортить дизайн, и, поскольку отдельные светодиоды управляются не постоянно, они не будут повреждены.

Для управления используется только одна кнопка, длительное нажатие кнопки(нажатие и удержание) для поворота меню и обычное нажатие кнопки для выбора меню.

Это хобби-проект, потому точность хода часов зависит лишь от калибровки внутреннего генератора контроллера. Я не использовал кварц в этом проекте, так как он занимал бы два нужных мне вывода ATtiny2313. Кварц может быть использован для повышения точности в альтернативном проекте (печатной плате).

На этот раз я представлю простой малогабаритный частотомер с диапазоном измерения от 1 до 500 МГц и разрешением 100 Гц.

В настоящее время, независимо от производителя, почти все микроконтроллеры имеют так называемые счетные входы, которые специально предназначены для подсчета внешних импульсов. Используя этот вход, относительно легко спроектировать частотомер.

Однако этот счетчый вход также имеет два свойства, которые не позволяют напрямую использовать частотомер для удовлетворения более серьезных потребностей. Одна из них заключается в том, что на практике в большинстве случаев мы измеряем сигнал с амплитудой в несколько сотен мВ, который не может перемещать счетчик микроконтроллера. В зависимости от типа, для правильной работы входа требуется сигнал не менее 1-2 В. Другое заключается в том, что максимальная измеримая частота на входе микроконтроллера составляет всего несколько МГц, это зависит от архитектуры счетчика, а также от тактовой частоты процессора.

Это устройство позволяет контролировать температуру воды в чайнике, имеет функцию поддержания температуры воды на определенном уровне, а также включение принудительного кипячения воды.

В основе прибора микроконтроллер ATmega8, который тактируется от кварцевого резонатора частотой 8МГц. Датчик температуры – аналоговый LM35. Семисегментный индикатор с общим анодом.

Эта декоративная звезда состоит из 50 специальных светодиодов RGB, которые контролируются ATtiny44A . Все светодиоды непрерывно изменяют цвет и яркость в случайном порядке. Также есть несколько разновидностей эффектов, которые также активируются случайно. Три потенциометра могут изменять интенсивность основных цветов. Положение потенциометра индицируется светодиодами при нажатии кнопки, а изменение цвета и скорость эффекта можно переключать в три этапа. Этот проект был полностью построен на компонентах SMD из-за специальной формы печатной платы. Несмотря на простую схему, структура платы довольно сложная и вряд ли подойдет для новичков.

В этой статье описывается универсальный трехфазный преобразователь частоты на микроконтроллере(МК) ATmega 88/168/328P . ATmega берет на себя полный контроль над элементами управления, ЖК-дисплеем и генерацией трех фаз. Предполагалось, что проект будет работать на готовых платах, таких как Arduino 2009 или Uno, но это не было реализовано. В отличие от других решений, синусоида не вычисляется здесь, а выводится из таблицы. Это экономит ресурсы, объем памяти и позволяет МК обрабатывать и отслеживать все элементы управления. Расчеты с плавающей точкой в программе не производятся.

Частота и амплитуда выходных сигналов настраиваются с помощью 3 кнопок и могут быть сохранены в EEPROM памяти МК. Аналогичным образом обеспечивается внешнее управление через 2 аналоговых входа. Направление вращения двигателя определяется перемычкой или переключателем.

Регулируемая характеристика V/f позволяет адаптироваться ко многим моторам и другим потребителям. Также был задействован интегрированный ПИД-регулятор для аналоговых входов, параметры ПИД-регулятора могут быть сохранены в EEPROM. Время паузы между переключениями ключей (Dead-Time) можно изменить и сохранить.

Этот частотомер с AVR микроконтроллером позволяет измерять частоту от 0,45 Гц до 10 МГц и период от 0,1 до 2,2 мкс в 7-ми автоматически выбранных диапазонах. Данные отображаются на семиразрядном светодиодном дисплее. В основе проекта микроконтроллер Atmel AVR ATmega88/88A/88P/88PA, программу для загрузки вы можете найти ниже. Настройка битов конфигурации приведена на рисунке 2 .

Принцип измерения отличается от предыдущих двух частотомеров. Простой способ подсчета импульсов через 1 секунду, используемый в двух предыдущих частотомерах(частотомер I, частотомер II), не позволяет измерять доли Герц. Вот почему я выбрал другой принцип измерения для своего нового частотомера III. Этот метод намного сложнее, но позволяет измерять частоту с разрешением до 0,000 001 Гц.

Это очень простой частотомер на микроконтроллере AVR. Он позволяет измерять частоты до 10 МГц в 2-х автоматически выбранных диапазонах. Он основан на предыдущем проекте частотомера I , но имеет 6 разрядов индикатора вместо 4-х. Нижний диапазон измерения имеет разрешение 1 Гц и работает до 1 МГц. Более высокий диапазон имеет разрешение 10 Гц и работает до 10 МГц. Для отображения измеренной частоты используется 6-разрядный светодиодный дисплей. Прибор построен на основе микроконтроллера Atmel AVR ATtiny2313A или ATTiny2313 . Настройку битов конфигурации вы можете найти ниже.

Микроконтроллер тактируется от кварцевого резонатора частотой 20 МГц (максимально допустимая тактовая частота). Точность измерения определяется точностью этого кристалла, а также конденсаторов C1 и C2. Минимальная длина полупериода измеряемого сигнала должна быть больше периода частоты кварцевого генератора (ограничение архитектуры AVR). Таким образом, при 50% рабочем цикле можно измерять частоты до 10 МГц.

Поделки с микроконтроллерами – вопрос, как никогда актуальный и интересный. Ведь мы живем в 21 веке, эпохе новых технологий, роботов и машин. На сегодняшний день каждый второй, начиная с малого возраста, умеет пользоваться интернетом и различного рода гаджетами, без которых порою и вовсе сложно обойтись в повседневной жизни.

Поэтому в этой статье мы будем затрагивать, в частности, вопросы пользования микроконтроллерами, а также непосредственного применения их с целью облегчения миссий, каждодневно возникающих перед всеми нами. Давайте разберемся, в чем ценность этого прибора, и как просто использовать его на практике.

Микроконтроллер − это чип, целью которого является управление электрическими приборами. Классический контроллер совмещает в одном кристалле, как работу процессора, так и удаленных приборов, и включает в себя оперативное запоминающее устройство. В целом, это монокристальный персональный компьютер, который может осуществлять сравнительно обыкновенные задания.

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

Из этого следует, что применить такое устройство можно в технике для вычисления, такой, как калькулятор, материнка, контроллеры компакт-дисков. Используют их также в электробытовых аппаратах – это и микроволновки, и стиральные машины, и множество других. Также микроконроллеры широко применяются в индустриальной механике, начиная от микрореле и заканчивая методиками регулирования станков.

Микроконроллеры AVR

Ознакомимся с более распространенным и основательно устоявшимся в современном мире техники контроллером, таким как AVR. В его состав входят высокоскоростной RISC-микропроцессор, 2 вида затратной по энергии памяти (Flash-кэш проектов и кэш сведений EEPROM), эксплуатационная кэш по типу RAM, порты ввода/вывода и разнообразные удаленные сопряженные структуры.

  • рабочая температура составляет от -55 до +125 градусов Цельсия;
  • температура хранения составляет от -60 до +150 градусов;
  • наибольшая напряженность на выводе RESET, в соответствии GND: максимально 13 В;
  • максимальное напряжение питания: 6.0 В;
  • наибольший электроток линии ввода/вывода: 40 мА;
  • максимальный ток по линии питания VCC и GND: 200 мА.

Возможности микроконтроллера AVR

Абсолютно все без исключения микроконтроллеры рода Mega обладают свойством самостоятельного кодирования, способностью менять составляющие своей памяти драйвера без посторонней помощи. Данная отличительная черта дает возможность формировать с их помощью весьма пластичные концепции, и их метод деятельности меняется лично микроконтроллером в связи с той либо иной картиной, обусловленной мероприятиями извне или изнутри.

Обещанное количество оборотов переписи кэша у микроконтроллеров AVR второго поколения равен 11 тысячам оборотов, когда стандартное количество оборотов равно 100 тысячам.

Конфигурация черт строения вводных и выводных портов у AVR заключается в следующем: целью физиологического выхода имеется три бита регулирования, а никак не два, как у известных разрядных контроллеров (Intel, Microchip, Motorola и т. д.). Это свойство позволяет исключить потребность обладать дубликатом компонентов порта в памяти с целью защиты, а также ускоряет энергоэффективность микроконтроллера в комплексе с наружными приборами, а именно, при сопутствующих электрических неполадках снаружи.

Всем микроконтроллерам AVR свойственна многоярусная техника пресечения. Она как бы обрывает стандартное течение русификатора для достижения цели, находящейся в приоритете и обусловленной определенными событиями. Существует подпрограмма преобразования запрашивания на приостановление для определенного случая, и расположена она в памяти проекта.

Когда возникает проблема, запускающая остановку, микроконтроллер производит сохранение составных счетчика регулировок, останавливает осуществление генеральным процессором данной программы и приступает к совершению подпрограммы обрабатывания остановки. По окончании совершения, под шефствующей программы приостановления, происходит возобновление заранее сохраненного счетчика команд, и процессор продолжает совершать незаконченный проект.

Поделки на базе микроконтроллера AVR

Поделки своими руками на микроконтроллерах AVR становятся популярнее за счет своей простоты и низких энергетических затрат. Что они собой представляют и как, пользуясь своими руками и умом, сделать такие, смотрим ниже.

«Направлятор»

Такое приспособление проектировалось, как небольшой ассистент в качестве помощника тем, кто предпочитает гулять по лесу, а также натуралистам. Несмотря на то, что у большинства телефонных аппаратов есть навигатор, для их работы необходимо интернет-подключение, а в местах, оторванных от города, это проблема, и проблема с подзарядкой в лесу также не решена. В таком случае иметь при себе такое устройство будет вполне целесообразно. Сущность аппарата состоит в том, что он определяет, в какую сторону следует идти, и дистанцию до нужного местоположения.

Построение схемы осуществляется на основе микроконтроллера AVR с тактированием от наружного кварцевого резонатора на 11,0598 МГц. За работу с GPS отвечает NEO-6M от U-blox. Это, хоть и устаревший, но широко известный и бюджетный модуль с довольно четкой способностью к установлению местонахождения. Сведения фокусируются на экране от Nokia 5670. Также в модели присутствуют измеритель магнитных волн HMC5883L и акселерометр ADXL335.


Беспроводная система оповещения с датчиком движения

Полезное устройство, включающее в себя прибор перемещения и способность отдавать, согласно радиоканалу, знак о его срабатывании. Конструкция является подвижной и заряжается с помощью аккумулятора или батареек. Для его изготовления необходимо иметь несколько радиомодулей HC-12, а также датчик движения hc-SR501.

Прибор перемещения HC-SR501 функционирует при напряжении питания от 4,5 до 20 вольт. И для оптимальной работы от LI-Ion аккумулятора следует обогнуть предохранительный светодиод на входе питания и сомкнуть доступ и вывод линейного стабилизатора 7133 (2-я и 3-я ножки). По окончанию проведения этих процедур прибор приступает к постоянной работе при напряжении от 3 до 6 вольт.


Внимание: при работе в комплексе с радиомодулем HC-12 датчик временами ложно срабатывал. Во избежание этого необходимо снизить мощность передатчика в 2 раза (команда AT+P4). Датчик работает на масле, и одного заряженного аккумулятора, емкостью 700мА/ч, хватит свыше, чем на год.

Минитерминал

Приспособление проявило себя замечательным ассистентом. Плата с микроконтроллером AVR нужна, как фундамент для изготовления аппарата. Из-за того, что экран объединён с контроллером непосредственно, то питание должно быть не более 3,3 вольт, так как при более высоких числах могут возникнуть неполадки в устройстве.


Вам следует взять модуль преобразователя на LM2577, а основой может стать Li-Ion батарея емкостью 2500мА/ч. Выйдет дельная комплектация, отдающая постоянно 3,3 вольта во всём трудовом интервале напряжений. С целью зарядки применяйте модуль на микросхеме TP4056, который считается бюджетным и достаточно качественным. Для того чтобы иметь возможность подсоединить минитерминал к 5-ти вольтовым механизмам без опаски сжечь экран, необходимо использовать порты UART.

Основные аспекты программирования микроконтроллера AVR

Кодирование микроконтоллеров зачастую производят в стиле ассемблера или СИ, однако, можно пользоваться и другими языками Форта или Бейсика. Таким образом, чтобы по факту начать исследование по программированию контроллера, следует быть оснащенным следующим материальным набором, включающим в себя: микроконтроллер, в количестве три штуки — к высоковостребованным и эффективным относят — ATmega8A-PU, ATtiny2313A-PU и ATtiny13A- PU.

Чтобы провести программу в микроконтроллер, нужен программатор: лучшим считают программатор USBASP, который дает напряжение в 5 Вольт, используемое в будущем. С целью зрительной оценки и заключений итогов деятельности проекта нужны ресурсы отражения данных − это светодиоды, светодиодный индуктор и экран.


Чтобы исследовать процедуры коммуникации микроконтроллера с иными приборами, нужно числовое приспособление температуры DS18B20 и, показывающие правильное время, часы DS1307. Также важно иметь транзисторы, резисторы, кварцевые резонаторы, конденсаторы, кнопки.

С целью установки систем потребуется образцовая плата для монтажа. Чтобы соорудить конструкцию на микроконтроллере, следует воспользоваться макетной платой для сборки без пайки и комплектом перемычек к ней: образцовая плата МВ102 и соединительные перемычки к макетной плате нескольких видов — эластичные и жесткие, а также П-образной формы. Кодируют микроконтроллеры, применяя программатор USBASP.

Простейшее устройство на базе микроконтроллера AVR. Пример

Итак, ознакомившись с тем, что собой представляют микроконтроллеры AVR, и с системой их программирования, рассмотрим простейшее устройство, базисом для которого служит данный контроллер. Приведем такой пример, как драйвер низковольтных электродвигателей. Это приспособление дает возможность в одно и то же время распоряжаться двумя слабыми электрическими двигателями непрерывного тока.

Предельно возможный электроток, коим возможно загрузить программу, равен 2 А на канал, а наибольшая мощность моторов составляет 20 Вт. На плате заметна пара двухклеммных колодок с целью подсоединения электромоторов и трехклеммная колодка для подачи усиленного напряжения.

Устройство выглядит, как печатная плата размером 43 х 43 мм, а на ней сооружена минисхемка радиатора, высота которого 24 миллиметра, а масса – 25 грамм. С целью манипулирования нагрузкой, плата драйвера содержит около шести входов.

Заключение

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

Теперь у меня на столе лежит два одинаковых программатора. А всё для того, чтобы попробовать новую прошивку. Эти близняшки буду шить друг друга. Все опыты проводятся под MS Windows XP SP3 .
Цель — увеличение скорости работы и расширение совместимости программатора.

Популярная среда разработки Arduino IDE привлекает большим количеством готовых библиотек и интересных проектов, которые можно найти на просторах Сети.


Некоторое время назад оказались в моем распоряжении несколько микроконтроллеров ATMEL ATMega163 и ATMega163L. Микросхемы были взяты из отслуживших свой срок девайсов. Данный контроллер очень похож на ATMega16, и фактически является его ранней версией.

Привет читателям Датагора! Мне удалось собрать вольтметр минимальных размеров с посегментной разверткой индикатора при довольно высокой функциональности, с автоматическим определением типа индикатора и выбором режимов.


Прочитав статьи Edward Ned’а, я собрал DIP-версию и проверил ее в работе. Действительно вольтметр работал, ток через вывод микросхемы к индикатору не превышал 16 миллиампер в импульсе, так что работа микросхемы без резисторов, ограничивающих токи сегментов, вполне допустима и не вызывает перегрузок элементов.
Не понравилось слишком частое обновление показаний на дисплее и предложенная шкала «999». Хотелось подправить программу, но исходных кодов автор не выкладывает.

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


Механический энкодер — вещь удобная в использовании, но он имеет некоторые досадные недостатки. В частности, контакты со временем изнашиваются и приходят в негодность, появляется дребезг. Оптические энкодеры гораздо надежнее, но они дороже, многие из них боятся пыли, и они редко встречаются в таком виде, в котором их удобно было бы использовать в радиотехнике.

Короче, когда я узнал о том, что шаговый двигатель можно использовать как энкодер, эта идея мне очень понравилась.
Практически вечный энкодер! Замучить его невозможно: соберешь раз и можешь энкодить всю жизнь.

Предварительный усилитель-коммутатор с цифровым управлением. Применяем с программированием через оболочку Arduino, электронные потенциометры от Microchip, графический TFT.


Разрабатывать и собирать это устройство в мои планы не входило. Ну вот просто никак! У меня уже есть два предварительных усилителя. Оба меня вполне устраивают.
Но, как обычно происходит у меня, стечение обстоятельств или цепь неких событий, и вот нарисовалась задача на ближайшее время.

Здравствуйте, уважаемые читатели ! Хочу представить вам « » — проект подающего робота для настольного тенниса, который будет полезен новичкам и любителям при отработке приёма различного типа подач в любую зону стола, поможет рассчитать тайминг и силу приёма мяча.

А ещё можно просто привыкнуть к новой накладке или ракетке, и хорошенько простучать её.

Приветствую читателей ! Есть у меня пожилой компьютер, которому уже исполнилось лет десять. Параметры у него соответствующие: «пенёк» 3,0 ГГц, пара Гб ОЗУ и древняя материнская плата EliteGroup 915-й серии.


И задумал я куда-нибудь старичка пристроить (подарить, продать), т. к. выбрасывать жалко. Но мешала задуманному одна неприятность: у материнки не срабатывало включение от кнопки питания, и что бы я ни делал, начиная от проверки проводов и заканчивая прозвонкой транзисторов на плате, проблему найти так и не смог. Отдавать в ремонт спецам — ремонт окажется дороже всего компа.

Думал я, думал и нашёл способ запустить моего бедолагу. Выдернул батарею BIOS-а, от чего комп испугался и сразу стартанул при следующем появлении питания! А дальше — почти в каждом BIOS-е есть запуск ПК от любой кнопки клавиатуры или кнопки POWER на клавиатуре. Казалось бы, проблема решена. Ан нет, есть нюансы. С USB-клавиатур запуск не срабатывал. Плюс не хотелось пугать нового хозяина, компьютер должен стартовать от привычной кнопки питания на корпусе.

Бывает идешь мимо припаркованных машин, и замечаешь краем глаза, что кто то уже давно, судя по тусклому свечению ламп, забыл свет выключить. Кто то и сам так попадал. Хорошо когда есть штатный сигнализатор не выключенного света, а когда нету поможет вот такая поделка: Незабывайка умеет пищать, когда не выключен свет и умеет пропикивать втыкание задней передачи.

Схема цифрового индикатора уровня топлива обладает высокой степенью повторяемости, даже если опыт работы с микроконтроллерами незначителен, поэтому разобраться в тонкостях процесса сборки и настройки не вызывает проблем. Программатор Громова – это простейший программатор, который необходим для программирования avr микроконтроллера. Программатор Горомова хорошо подходит как для внутрисхемного, так и для стандартного схемного программирования. Ниже приведена схема контроля индикатора топлива.

Плавное включение и выключение светодиодов в любом режиме (дверь открыта, и плафон включен). Так же авто выключение через пять минут. И минимальное потребление тока в режиме ожидания.

Вариант 1 — Коммутация по минусу. (с применением N-канальных транзисторов) 1) «коммутация по минусу», т.е такой вариант при котором один питающий провод лампы соединен с +12В аккумулятора (источника питания), а второй провод коммутирует ток через лампу тем самым включает ее. В данном варианте будет подаваться минус. Для таких схем нужно применять N-канальные полевые транзисторы в качестве выходных ключей.

Сам модем небольшого размера, недорог, работает без проблем, четко и быстро и вообще нареканий нет к нему. Единственный минус для меня был, это необходимость его включать и выключать кнопкой. Если его не выключать, то модем работал от встроенного аккумулятора, который в итоге садился и модем снова было нужно включать.

Принцип работы прост: привращении крутилки регулируется громкость, при нажатии — выключение-включение звука. Нужно для кар писи на винде или андройде

Изначально в Lifan Smily (да и не только) режим работы заднего дворника — единственный, и называется он «всегда махать». Особенно негативно воспринимается такой режим в наступивший сезон дождей, когда на заднем стекле собираются капли, но в недостаточном для одного прохода дворника количестве. Так, приходится либо слушать скрип резины по стеклу, либо изображать робота и периодически включать-выключать дворник.

Немного доработал схему реле времени задержки включения освещения салона для автомобиля Форд (схема разрабатывалась для вполне конкретного автомобиля, как замена штатного реле Ford 85GG-13C718-AA, но была успешно установлена в отечественную «классику»).

Уже не первый раз проскакивают такие поделки. Но почему-то люди жмуться на прошивки. Хотя в большинстве своём они основаны на проекте elmchan «Simple SD Audio Player with an 8-pin IC». Исходниник не открывают аргументируя, что пришлось исправлять проект, что в у меня качество лучше… и т.д. Короче взяли open source проект, собрали, и выдаёте за своё.

Итак. Микроконтроллер Attiny 13- так сказать сердце данного устройства. С его прошивкой долго мучился, никак не мог прошить.Ни 5ю проводками через LPT, ни прогромматором Громова. Компьютер просто не видит контроллер и все.

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

Это устройство позволит ближнему свету автоматически включиться при начале движения и регулирует напряжение на лампах, ближнего света, в зависимости от скорости с которой вы едите. Так же, это послужит более безопасному движению и продлит срок службы ламп.

Принцип закрывания дверцы клетки весьма прост. Дверка клетки подпирается специальным упором, сделанным из медной проволоки. К упору крепится капроновая нить нужной длины. Если потянуть за нить, то упор соскальзывает, и дверка клетки под собственным весом закрывается. Но это в ручном режиме, а я хотел реализовать автоматический процесс без участия кого-либо.

Для управления механизмом закрывания дверцы клетки был применен сервопривод. Но в процессе работы он создавал шум. Шум мог спугнуть птицу. Поэтому сервопривод я заменил на коллекторный двигатель, взятый из радиоуправляемой машинки. Он работал тихо и идеально подходил, тем более что управлять коллекторным двигателем не составляло сложностей.

Для определения, находится ли уже птица в клетке, я использовал недорогой датчик движения. Сам датчик движения уже является законченным девайсом, и паять ничего не нужно. Но у данного датчика угол срабатывания весьма большой, а мне нужно, чтобы он реагировал только во внутренней области клетки. Для ограничения угла срабатывания я поместил датчик в цоколь, когда-то служившей эконом-лампы. Из картона вырезал своего рода заглушку с отверстием посередине для датчика. Пошаманив с расстоянием данной заглушки относительно датчика, настроил оптимальный угол для срабатывания датчика.

В качестве зазывалы для птиц я решил применить звуковой модуль WTV020M01 с записанным на микроSD карте памяти пением чижа и щегла. Именно их я и собирался ловить. Поскольку я использовал один звуковой файл, то и управлять звуковым модулем я решил простим способом, без использования протокола обмена между звуковым модулем и микроконтроллером.

При подаче на девятую ножку звукового модуля низкого сигнала, модуль начинал воспроизводить. Как только звук воспроизводился на пятнадцатой ноге звукового модуля, устанавливается низкий уровень. Благодаря этому микроконтроллер отслеживал воспроизведение звука.

Поскольку я реализовал паузу между циклами воспроизведения звука, то для остановки воспроизведения звука программа подает низкий уровень на первую ножку звукового модуля (reset). Звуковой модуль является законченным устройством со своим усилителем для звука, и, по большому счету, в дополнительном усилителе звука он не нуждается. Но мне данного усиления звука показалось мало, и в качестве усилителя звука я применил микросхему TDA2822M. В режиме воспроизведения звука потребляет 120 миллиампер. Учитывая, что поимка птицы займет какое-то время, в качестве автономной батареи питания я применил не совсем новый аккумулятор от бесперебойника (всё равно валялся без дела).
Принцип электронного птицелова прост, и схема состоит в основном из готовых модулей.

Программа и схема —

USB осциллограф на PIC микроконтроллере

Этот простой и дешёвый USB осциллограф был придуман и сделан просто ради развлечения. Давным давно довелось чинить какой-то мутный видеопроцессор, в котором спалили вход вплоть до АЦП. АЦП оказались доступными и недорогими, я купил на всякий случай парочку, один пошёл на замену, а другой остался.

— Максимальная частота дискретизации — 6 МГц;
— Полоса пропускания входного усилителя — 0-16 МГц;
— Входной делитель — от 0.01 В/дел до 10 В/дел;
— Входное сопротивление — 1 МОм;
— Разрешение — 8 бит.Принципиальная схема осциллографа показана на рисунке 1.

Для разных настроек и поиска неисправностей во всяких преобразователях питания, схемах управления бытовой техникой, для изучения всяких устройств и т.д., там где не требуются точные измерения и высокие частоты, а нужно просто посмотреть на форму сигнала частотой, скажем, до пары мегагерц — более чем достаточно.

Кнопка S2 — это часть железа нужного для бутлоадера. Если при подключении осциллографа к USB держать её нажатой, то PIC заработает в режиме бутлоадера и можно будет обновить прошивку осциллографа при помощи соответствующей утилиты. В качестве АЦП (IC3) была использована «телевизионная» микросхема — TDA8708A. Она вполне доступна во всяких «Чип и Дип»ах и прочих местах добычи деталей. На самом деле это не только АЦП для видеосигнала, но и коммутатор входов, выравниватель и ограничитель уровней белого — чёрного и т.д. Но все эти прелести в данной конструкции не используются. АЦП весьма шустр — частота дискретизации — 30 МГц. В схеме он работает на тактовой частоте 12 МГц — быстрее не нужно, потому что PIC18F2550 просто не сможет быстрее считывать данные. А чем выше частота — тем больше потребление АЦП. Вместо TDA8708A можно использовать любой другой быстродействующий АЦП с параллельным выводом данных, например TDA8703 или что-нибудь от Analog Devices.

Тактовую частоту для АЦП удалось хитрым образом извлечь из PIC’а — там запущен ШИМ с частотой 12 МГц и скважностью 0.25. Тактовый импульс положительной полярности проходит в цикле Q1 PIC’а так что при любом обращении к порту B, которое происходит в цикле Q2 данные АЦП будут уже готовы. Ядро PIC’а работает на частоте 48 МГц, получаемой через PLL от кварца 4 МГц. Команда копирования из регистра в регистр выполняется за 2 такта или 8 циклов. Таким образом, данные АЦП возможно сохранять в память с максимальной частотой 6 МГц при помощи непрерывной последовательности команд MOVFF PORTB, POSTINC0. Для буфера данных используется один банк RAM PIC18F2550 размером 256 байт.

Меньшие частоты дискретизации реализуются добавлением задержки между командами MOVFF. В прошивке реализована простейшая синхронизация по отрицательному или положительному фронту входного сигнала. Цикл сбора данных в буфер запускается командой от PC по USB, после чего можно эти данные по USB прочитать. В результате PC получает 256 8-битных отсчётов которые может, например, отобразить в виде изображения. Входная цепь проста до безобразия. Делитель входного напряжения без всяких изысков сделан на поворотном переключателе. К сожалению не удалось придумать как передавать в PIC положение переключателя, поэтому в графической морде осциллографа есть только значения напряжения в относительных единицах — делениях шкалы. Усилитель входного сигнала (IC2B) работает с усилением в 10 раз, смещение нуля, необходимое для АЦП (он воспринимает сигнал в диапазоне от Vcc — 2.41В до Vcc — 1.41В) обеспечивается напряжением с программируемого генератора опорного напряжения PIC (CVREF IC1, R7,R9) и делителем от отрицательного напряжения питания (R6,R10, R8). Т.к. в корпусе ОУ был «лишний» усилитель (IC2A), я использовал его как повторитель напряжения смещения.

Не забудьте про емкостные цепочки для частотной компенсации входной ёмкости вашего ОУ и ограничивающих диодов, которые отсутствуют на схеме — нужно подобрать ёмкости параллельно резисторам делителя и резистору R1, иначе частотные характеристики входной цепи загубят всю полосу пропускания. С постоянным током всё просто — входное сопротивление ОУ и закрытых диодов на порядки выше сопротивления делителя, так что делитель можно просто посчитать не учитывая входное сопротивление ОУ. Для переменного тока иначе — входная ёмкость ОУ и диодов составляют значительную величину по сравнению с ёмкостью делителя. Из сопротивления делителя и входной ёмкости ОУ и диодов получается пассивный ФНЧ, который искажает входной сигнал.

Чтобы нейтрализовать этот эффект нужно сделать так, чтобы входная ёмкость ОУ и диодов стала значительно меньше ёмкости делителя. Это можно сделать соорудив емкостной делитель параллельно резистивному. Посчитать такой делитель сложно, т.к. неизвестна как входная ёмкость схемы, так и ёмкость монтажа. Проще его подобрать.

Способ подбора такой:
1. Поставить конденсатор ёмкостью примерно 1000 пФ параллельно R18.
2. Выбрать самый чувствительный предел, подать на вход прямоугольные импульсы с частотой 1 кГц и размахом в несколько делений шкалы и подобрать конденсатор параллельно R1 так, чтобы прямоугольники на экране выглядели прямоугольниками, без пиков или завалов на фронтах.
3. Повторить операцию для каждого следующего предела, подбирая конденсаторы параллельно каждому резистору делителя соответственно пределу.
4. Повторить процесс с начала, и убедиться, что на всех пределах всё в порядке ( может проявиться ёмкость монтажа конденсаторов ), и, если что-то не так, слегка подкорректировать ёмкости.

Сам ОУ — это Analog Devices AD823. Самая дорогая часть осциллографа. 🙂 Но зато полоса 16 МГц — что весьма неплохо.А кроме того, это первое из шустрого, что попалось в розничной продаже за вменяемые деньги.

Конечно же этот сдвоенный ОУ без всяких переделок можно поменять на что-то типа LM2904, но тогда придётся ограничится сигналами звукового диапазона. Больше 20-30 кГц оно не потянет.

Ну и форму прямоугольных, например, сигналов будет слегка искажать. А вот если удастся найти что-то типа OPA2350 (38МГц) — то будет наоборот замечательно.

Источник отрицательного напряжения питания для ОУ сделан на хорошо известной charge-pump ICL7660. Минимум обвязки и никаких индуктивностей. Ток по выходу -5 В конечно у неё невелик, но нам много и не надо. Цепи питания аналоговой части изолированы от помех цифры индуктивностями и ёмкостями (L2, L3, C5, C6). Индуктивности попались номиналом 180 uГн, вот их и поставил. Никаких помех по питанию даже на самом чувствительном пределе. Прошивка PIC заливается по USB с помощью бутлоадера который сидит с 0-го адреса в памяти программ и запускается если при включении удерживать нажатой кнопку S2. Так что прежде чем прошивать PIC — залейте туда сначала бутлоадер — будет проще менять прошивки.
Исходники драйвера осциллографа для ядер 2.6.X находятся в архиве с прошивкой. Там же есть консольная утилитка для проверки работоспособности осциллографа. Её исходники стоит посмотреть, чтобы разобраться как общаться с осциллографом, если хочется написать для него свой софт.
Программа для компьютера проста и аскетична, ее вид показан на рисунках 2 и 3. Подключить осциллограф к USB и запустить qoscilloscope. Требуется QT4.

Во вложении- все файлы к проекту

Источник: http://shemotehnik.ru/

 

Платы, схемы, примеры радио устройств, микроконтроллеры, PIC16

Платы, схемы, примеры радио устройств, микроконтроллеры, PIC16

На видео представлена полная сборка усилителя ланзар, начиная от корпуса и заканчивая всеми внутренностями. По ходу сборки расказывается о наиболее сложных моментах сборки и о местах в котороых чаще всего возникают ошибки.

 

Время PIC контроллеров наверное у же находится в далеком прошлом, а у меня только дошли руки до создания удобной простой отладочной платы для PIC микроконтроллера. Целю создания было разместить на плате панельку для pic контроллера, пару кнопок с возможностью их подключения и отключения, удобное подключение проводов, возможность к выводом подключать сопротивления для ограничения тока, и уже подключенная цепь для питания микроконтроллера.

 

 

 

Все мы давно забыли что значит пользоваться дискетками формата 3.5, а вот дискеты формата 5.25 многие даже не застали. И неудевительно, ведь технологии огромными шагами идут вперед. Почему я затронул тему о старых дискетах? А затронул я эту тему потому как у многих людей где то под столом или в гараже валяются данные устройства которые вроде бы и не нужны но выкинуть жалко. Вот и мне жалко выбросить. В моем случае я имею 3 дисковода формата 5.25 ( если не ошибаюсь в форм факторе). В этих замечатальных больших устройствах есть нехилый шаговый двигатель который может пригодится при разработке какого нибудь станка ЧПУ или же в разработке робота, микродрели и других стройствах в которых нужна точность поворота двигателя. В данной статье я покажу как заставить данный двигатель работать.

 

И так в прошлой теме мы писали простую программу для pic контроллера на языке PIC Basic Pro которая мигала светодиодом и моделировали это все в программа proteus. Сегодня пришло время смоделировать это все на плате и убедится что наша программа и устройство отлично работают. Для сборки платы нам необходимо будет пару конденсаторов и три сопротивления, один светодиод, pic контроллер (в моем случае это pic16f84) ну и панелька под контроллер.

 

Как правило первый код будущего программиста это вывод на экран строки «hello world». У нас же будет что то аналогично простое, это мигание светодиодом. Практически все начинают осовение МК именно с этого. Для начала мы напишем код программы в CodeStudioPlus, а после этого накидаем все это в протеусе, после чего запустим и будем радоваться результату.

  Когда то давно я начинал осваивать микроконтроллеры, читал книги, пытался строить какие то устройства, некоторые из них даже успешно работали. Сейчас прошло года 2 и я совершенно все забыл. Забыл я все начиная от списка программ которые мне нужны, заканчивая особенностями работы. Многие явно не поверят в то что я говорю правду так как в большинстве сулчаев люди хоть что то помнят, видимо я исключение. Сейчас я планирую все вспомнить вновь, так как сейчас моя цель это создать некое устройство в автомобиль. Обо всем что вспомню и наработаю буду писать тут.   Уже как год есть у меня идея сделать устройство которое бы показывало остаток топлива в баке. Конечно для этих целей предусмотрена стрелка, но по ней особой точности не получишь. Наверное все это время я думал как бы  купить нужные мне радиодетали это LCD Wh2602B и PIC16F676. То я сам хотел съездить за ними то хотел кого то отправить кому по пути, то просто думал да фиг с ним когда мне собирать устройство, времени то нет.   Месяц назад появилось у меня какое то непреодолимое желание сделать небольшой простой радио жучек. Схем в интернете я нашел довольно много, но не все мне понравились, какие то из нихбыли слишком громозкие какие то питались от кроны, а у каких то был очень маленький радиус действия. Выбрав схему я приступил к ее изготовлению. Достал рассыпуху и понял что паять это все навесным монтажом неудобно. Тогда поискав в ящике нашел небольшую плату, выпаял из нее все элементы и начал напаивать новые.  

Ранее я всегда для изготовления платы использовал старые дедовские методы, от которых не приходил в восторг, но что поделать не имел я тогда хлорного железа, а сейчас все таки обзавелся некоторой порцией сего химического элемента и решил испробовать ЛУТ.

  Так как в прошлой статье по управлению пк с помощью обычного пульта дистанционнного управления я потерпел полное фиаско, но добится своей цели все же нужно было. Я решил собрать небольшой приемник который бы работал уже от COM порта.   В один прекрасный день, хотя скорее вечер мне пришла идея управлять громкостью своей компьютерной аудио системой. А пришла она мне в голову по тем обстоятельствам что сейчас громкость у многих фильмов то орущая то шепчущая. С дивана не набегаешься то прибавлять то убавлять громкость. По сути можно и наплевать если просмотр проходит днем, а если ночью? А вдруг соседи чумовые…  
Страница 1 из 2

proteus_pic

proteus_pic

Микроконтроллеры и Proteus

На одном из форумов я встретил сообщение о разочаровании в Pic-контроллерах, человек, отправивший это сообщение, решил перейти на AVR-контроллеры.

Не знаю, что вызвало его разочарование, но сама постановка вопроса мне не кажется правильной. Попробую пояснить, что я имею ввиду.

Как любой компонент электронной схемы: транзистор, резистор, индуктивность и т.д., — микроконтроллер выбирается на соответствующем этапе разработки устройства. При выборе учитываются многие факторы, порой выбор зависят от храктера предприятия, осуществляющего проект. Один из факторов при выборе конкретного типа — это выполнение задачи данным элементом. Если он выполняет свою задачу, не выходит ни по стоимости, ни по габаритам за пределы заданных параметров, то выбор между PIC и AVR контроллером может определяться только тем, что специалисты предприятия имеют большой опыт работы с одним типом и малый с другим, что совсем не характерно даже для предприятия среднего размера. Или выбор может быть обусловлен возможностями постоянного поставщика элементной базы. Но в любом случае невозможно говорить о разочаровании. Другое дело, если предприятие-изготовитель микроконтроллера рекламировало его, делая упор на свойствах, которых не обнаруживается в готовом изделии. Здесь вполне уместно говорить о разочаровании.

Вместе с тем, вопрос о микроконтроллерах дает возможность поговорить о тех свойствах программы Proteus, которые лично меня очаровывают, я не побоюсь этого слова.

Я пока оставлю вопрос о возможности полной разработки электронной схемы, базирующейся на микроконтроллере, включая написание и отладку программы на ассемблере или языке высокого уровня для микроконтроллера, с тем, чтобы вернуться к нему позже. Но даже если для создания программы использовать, положим, MPLAB или Piklab для Pic-контроллера, программа ISIS, составная часть Proteus, позволяет проверить работу не только контроллера, но всего устройства. Для начала очень простой пример. В программе KTechlab я некогда приводил пример создания работающей программы для игрушечного светофора. Нет сомнений, что не составляет особого труда проверить работу этой программы в средствах отладки той программы, в которой код получен, но меня очень порадовало, что в Proteus есть такой элемент, как симулятор светофора. Достаточно выбрать в компонентах микроконтроллер PIC16F628A, для которого создавалась программа светофора, найти в разделе Miscellaneous библиотеки компонентов элемент TRAFFIC LIGHTS, чтобы после добавления hex-файла программы с помощью диалогового окна свойств микроконтроллера (щелчок правой клавишей мышки и выбор Edit Properties из выпадающего меню), где файл добавляется обычным образом через проводник, если воспользоваться кнопкой с иконкой папки в наборе для Programm File:, и соединения выводов запустить симуляцию и увидеть воочию работу светофора.

И не то, чтобы это было целью, не то, чтобы я хотел показать безграничные возможности среды разработки Proteus, но легче оценить работу программы при полной симуляции работы устройства, и приятно, что разработчики среды проектирования учитывают нужды даже потребителей простых решений.

Рис. 4.1. Симуляция работы устройства с микроконтроллером

Чтобы показать, что возможности проверки в Proteus позволяют быть применены к более сложным решениям, я использую другую программу, созданную ранее для PIC16F628A. Несколько предварительных слов о программе и схеме.

Схема на рисунке ниже и программа для микроконтроллера предназначались для демонстрации начинающим любителям электроники, что они могут не только повторять готовые простые электрические схемы, но и подступиться к разработке более сложных устройств. Устройств, которые можно реализовать в виде готового изделия, чтобы порадовать младшего брата или сестру в качестве забавной игрушки, или могут быть использованы для автоматизации каких-то домашних процессов. Само устройство, к проверке которого в Proteus я перехожу, это релейный модуль. Он должен получать команды извне по интерфейсу RS485 в виде строк R00$0N от компьютера или центрального управляющего устройства, по которым включать (или выключать) соответствующее реле. Последнее, если выбрать реле с контактами, способными коммутировать, например, обычную лампу для освещения, будет включать или выключать свет. Команда вида R00$0S запрашивает состояние соответствующего реле, на которое контроллер отвечает R00#0N, если реле включено, или R00#0F, если выключено. Для упрощения рисунка я не добавлял микросхему интерфейса RS485, но это мало влияет на конечный результат. Схема изображена с двумя реле, лампы на схеме, опять-таки для упрощения схемы, 12-вольтовые и подключены к тому же источнику питания, что и реле. В качестве источника команд использован терминал программы Proteus, а сигналы команд в линии отображаются на экране осциллографа.

Более подробное (может быть, излишне подробное) описание модулей есть в моей книге «Умный дом своими руками», и здесь я опущу все детали, включая программу, но результат эксперимента в программе Proteus приведу. Мне нравится то, как Proteus справляется с задачей.

Рис. 4.2. Эмуляция работы релейного модуля на PIC16F628A

Как видно на рисунке лампа послушно включается и выключается командами терминала системы проектирования Proteus.

Я допускаю, что профессионалов может что-то не устраивать в работе программы. Возможно, никакая программа не может быть столь универсальна, чтобы удовлетворить всем потребностям всех профессионалов, но мне она очень нравится, и я пока не придумал, что бы такого она не могла сделать. Более того, ранее мой знакомый, занимавшийся конвертером Чука, сообщил мне, что симуляция этого конвертера в программе Qucs не проходит. Собственно, уж не знаю правильно ли в количественном плане, но в качественном и в программе Qucs симуляция проходит, но без применения источника переменного напряжения и выпрямителя. Профессионалы, работающие с силовой электроникой, справедливо предпочитают такие программы, как PSIM и SwCADIII, специализирующиеся на этих задачах, но меня заинтересовало, пройдет ли симуляция в Proteus.

Я вновь не готов утверждать, что графика в точности соответствует реальной работе устройства, для этого мне понадобилось бы потратить некоторое время на чтение документации по этому вопросу, что не отвечает моим намерениям, но симуляция этой схемы проходит, а результаты очень похожи на те, что получены в других программах.

Рис. 4.3. Симуляция работы конвертера Чука в программе Proteus

Столь обширная область применения Proteus, по моему мнению, должна в полной мере удовлетворять запросам любителей. Профессионалы, я думаю, с удовольствием будут использовать программу там, где она их устраивает, и искать другие решения, там где они хотели бы большего, в частности создавая свои версии САПР. Но для этого должны быть серьезные причины.

Однако вернемся к микроконтроллерам. В поставку системы Proteus входит множество примеров и, в частности, программа для микроконтроллера PIC16F84. Следуя руководству пользователя, находим раздел SAMPLES, затем Tutorials. В нем готовый проект Traffic.DSN и исходный текст на ассемблере TL.ASM:

LIST p=16F84 ; PIC16F844 is the target processor
#include «P16F84.INC» ; Include header file
CBLOCK 0x10 ; Temporary storage
state
l1,l2
ENDC

org 0 ; Start up vector.
goto setports ; Go to start up code.

org 4 ; Interrupt vector.
halt goto halt ; Sit in endless loop and do nothing.

setports clrw ; Zero in to W.
movwf PORTA ; Ensure PORTA is zero before we enable it.
movwf PORTB ; Ensure PORTB is zero before we enable it.
bsf STATUS,RP0 ; Select Bank 1
clrw ; Mask for all bits as outputs.
movwf TRISB ; Set TRISB register.
bcf STATUS,RP0 ; Reselect Bank 0.

initialise clrw ; Initial state.
movwf state ; Set it.

loop call getmask ; Convert state to bitmask.
movwf PORTB ; Write it to port.
incf state,W ; Increment state in to W.
andlw 0x04 ; Wrap it around.
movwf state ; Put it back in to memory.
call wait ; Wait 🙂
goto loop ; And loop 🙂

; Function to return bitmask for output port for current state.
; The top nibble contains the bits for one set of lights and the
; lower nibble the bits for the other set. Bit 1 is red, 2 is amber
; and bit three is green. Bit four is not used.
getmask movf state,W ; Get state in to W.
addwf PCL,F ; Add offset in W to PCL to calc. goto.
retlw 0x41 ; state==0 is Green and Red.
retlw 0x23 ; state==1 is Amber and Red/Amber
retlw 0x14 ; state==3 is Red and Green
retlw 0x32 ; state==4 is Red/Amber and Amber.

; Function using two loops to achieve a delay.
wait movlw 5
movwf l1

w1 call wait2
decfsz l1
goto w1

return

wait2 clrf l2
w2 decfsz l2
goto w2
return
END

Далее, следуя инструкции, выберем исходный файл (если это уже не сделано в проекте): раздел основного меню Source пункт Add/Remove Source Files, где в окне диалога можно выбрать и исходный файл, и нужный компилятор.

Рис. 4.4. Диалоговое окно выбора исходного файла и компилятора

И завершает подготовку добавление hex-файла к схеме через выпадающее меню и раздел редактирования свойств компонента, где можно указать файл TL.HEX.

Программа содержит преднамеренную ошибку, о чем есть предупреждение в руководстве:

There is, in fact, a deliberate mistake in the above code…

Кроме того, руководство сообщает, что hex-файл получен с помощью MPASM, и в случае использования другого компилятора, вам следует:

Note that If you are planning to use a new assembler or compiler for the first time, you will need to register it using the Define Code Generation Tools command.

Заметьте, что если вы намерены использовать новый ассемблер или компилятор, вначале вам нужно зарегистрировать его, используя команду Define Code Generation Tools.

Запуск симуляции клавишей Play приводит к тому, о чем сообщает руководство, зажигаются два огня светофоров и ничего больше не происходит — работает преднамеренная ошибка.

Рис. 4.5. Пример для отлаживания программы из набора Proteus

Последуем далее за руководством. Для отладки рекомендуется нажать Ctrl+F12 или выбрать соответствующий пункт в разделе основного меню Debug. В этом же разделе после того, как откроется окно с кодом ассемблера можно открыть другие окна отладки: окно состояния регистров, наблюдения и т.д. Откроем рекомендуемые руководством окна наблюдения.

Рис. 4.6. Окна наблюдения за состоянием микроконтроллера при отладке

В окне с исходным кодом можно задать или снять точку останова, используя клавишу F9 или выбирая эту команду из выпадающего меню, получаемого после выделения левой клавишей мышки нужной строки, по которой следует щелкнуть правой клавишей мышки. Руководство рекомендует выбрать строку 000E, где начинается цикл (отмеченный в ассемблерном коде loop). После задания точки останова клавишей F12 запускается симуляция, доходящая до точки останова, что можно видеть в строке состояния, где показано, что остановка симуляции по точке останова произошла при состоянии счетчика контроллера 000E, что соответствует заказанной строке для остановки. Клавиша F11 или соответствующий пункт в меню Debug позволяют сделать шаг внутрь цикла, красная стрелка, отмечающая перемещения в окне исходного кода, переместится соответственно ниже. При этом, если посмотреть на регистр w в окне отображения состояния регистров контроллера, то можно увидеть, что регистр очистился, что соответствует выполнению команды clrw.

Далее программа должна перенести содержимое регистра w в PORT A, то есть, очистить порт А. Продолжая выполнение инструкций можно в этом убедиться. Кроме использования основного меню и горячих клавиш для пошаговой отладки можно использовать инструментальное меню окна исходного кода. В окно наблюдения, используя выпадающее меню, можно добавить наблюдение за определенным адресом или именованной переменной, выбирая формат отображения. Как описывается далее в руководстве, предопределенная ошибка находится по адресу 0011, где операция andlw записана в виде 0x4 вместо 0x3.

Система имеет встроенный текстовый редактор, открывающийся после двойного щелчка по имени ассемблерного файла в пункте основного меню Source. В Linux это не получается, появляющийся редактор исчезает немного «помучившись». Но текст ассемблера можно открыть любым другим редактором, тем более, что после исправления его предстоит транслировать с помощью, я полагаю, MPASMWIN. Возможно, встроенный редактор позволяет сделать это без выхода из Proteus, но невелик труд использовать и внешние средства. Правда, пакет MPASM, входящий в поставку системы, который можно найти в папке Tools, приходится перенести на диск С:. Без этой процедуры появляется ошибка при трансляции, но, тем не менее, ошибка исправлена, текст оттранслирован. Теперь в программе Proteus можно заменить hex-файл новым и запустить программу на исполнение.

Рис. 4.7. Выполнение демонстрационной программы после исправления ошибки

Программа работает, огни светофора последовательно переключаются. При необходимости в отладочных операциях, а иногда такая необходимость возникает, можно использовать для наблюдения сигналов осциллограф или графические средства отображения сигналов после расстановки пробников напряжения в нужные точки, например, на выводы микроконтроллера. При выборе типа отображения графика для демонстрационной программы естественно применить DIGITAL. Дальнейшая работа с графиком проводится обычным образом: рисуется окно графики, добавляются трассы наблюдения и запускается симуляция графика. Для удобства наблюдения сигналов в свойствах микроконтроллера можно изменить частоту с 10 кГц на 1 МГц.

Рис. 4.8. Наблюдение сигналов на выводах контроллера с помощью осциллографа

Словом, среда разработки Proteus предлагает все удобные средства для разработки устройств, использующих микроконтроллеры, включая средства отладки программы. В простых случаях, как в демонстрационной программе, преимущества Proteus не столь очевидны, но если вы используете достаточно много дополнительных элементов, возможность увидеть не только сигналы на выводах микроконтроллера, но и их «дальнейшую судьбу», невозможно переоценить.

Остается добавить, что я использовал систему Proteus в Linux под эмулятором Wine, который изначально предназначался для Windows игр. Система разработки достаточно сложна, она никак не задумывалась для запуска в Linux, в Windows ее работа значительно удобнее, например, в плане исправления ошибок в тексте во внутреннем редакторе — достаточно исправить ошибку, запустить команду Build All в разделе Source, чтобы получить все необходимые для дальнейшей работы файлы.

Использование Proteus в Linux, готов согласиться, чистейшей воды спекуляция. Но даже то, что удалось попробовать, а в этом я убедился собственноручно, вполне достаточно для любительской практики. Мне кажется, если купить Proteus, то будет смысл «повозиться» с тем, что не работает в Linux, возможно, оно заработает. Например, не слишком утруждая себя можно заменить встроенный редактор на внешний, в качестве которого подойдет notepad, блокнот Windows. Достаточно в разделе Source основного меню зайти в диалог настройки с помощью пункта Set External Text Editor…, где указать блокнот в качестве внешнего редактора и теперь можно открыть ассемблерный текст для правки в блокноте. Или, не проходит трансляция исходного текста, значит можно использовать MPASMWIN и MPASDDX из перенесенной в корневой каталог диска C:\ папки MPASM. Эти изменения производятся в диалоговом окне настроек через раздел Source основного меню, где есть пункт Define Cod Generation Tools… Диалоговое окно после внесенных изменений может выглядеть следующим образом:

Рис. 4.9. Диалоговое окно настроек компилятора ассемблера

Кроме этих изменений лучше, хотя это может получаться только у меня, но лучше перенести файл проекта и все файлы исходного текста в свою папку, например, /home/vladimir/asm.

Теперь можно открыть и поправить текст, сохранить его, оттранслировать его, включить файл ассемблерного текста для отладки и загрузить после компиляции (Build All) hex-файл в микроконтроллер. Работает отладка, работает контроллер. Остались проблемы с окном наблюдения, оно отказывается работать, но это не самое ужасное.

Повторюсь еще раз, все это чистейшей воды спекуляции, но кто сказал, что этого нельзя делать, если программа работает, а меня больше устраивает работать с ней в Linux? Будут серьезные проблемы, последуют «оргвыводы», не возникнет серьезных проблем, отчего бы нет? Главным остается то, что система проектирования Proteus имеет все необходимые средства работы и микроконтроллерами!

Далее   или    Домой




Использование PIC-микроконтроллера и ИС UCN-5804 для управления ШД

Использование PIC-микроконтроллера и ИС UCN-5804 для управления ШД

Мы использовали схему управления работой ШД непосредственно с помощью ИС PIC. Также для управления работой ШД мы использовали специализированную ИС. При совместном использовании специализированной ИС и PIC-микроконтроллера мы можем объединить преимущества, характерные для каждой из схем. ИС UCN-5804 в этом случае выполняет всю «черновую» работу по управлению работой ШД. При некотором усложнении конечной электрической схемы программа управления PIC может быть сильно упрощена, что является хорошим решением.

Принципиальная схема устройства управления ШД с использованием специализированной ИС показана на рис. 10.15, а фотография устройства приведена на рис. 10.16. Питание ИС UCN-5804 осуществляется от источника постоянного тока напряжением 5 В. При напряжении питания 5 В управляющие работой ШД напряжения могут достигать 35 В.

Рис. 10.15. Схема микроконтроллера шагового двигателя

Рис. 10.16. Принципиальная схема микроконтроллера и ИС управления шаговым двигателем

Обратите внимание, что на схеме присутствуют два резистора, обозначенные «rx» и «ry» без указания их номинала. Наличие или отсутствие этих резисторов определяется типом применяемого ШД. Целью введения этих резисторов является ограничение выходного тока, протекающего через ШД, значением 1,25 А (в случае необходимости).

Рассмотрим наш ШД с напряжением питания 5 В. Его обмотки имеют сопротивление 13 Ом. Ток, протекающий через обмотки, составляет 5В/130 м=0,385А, или 385 мА, что значительно ниже максимально разрешенного значения тока 1,25 А для ИС UCN-5804. Поэтому для данного случая резисторы rx и ry не требуются и могут быть исключены из схемы.

Перед тем как мы двинемся дальше, рассмотрим еще один случай. ШД с напряжением питания 12 В имеет сопротивление обмоток 6 Ом. Ток, протекающий через обмотки ШД, составит 12 В/6 Ом=2 А. Такое значение тока превышает максимально допустимое для ИС UCN-5804. Для использование данного ШД резисторы rx и ry необходимы. Для обеспечения одинакового крутящего момента для каждой фазы сопротивления rx и ry должны быть равны. Величины резисторов должны ограничивать ток до величины 1,25 А или ниже. В данном случае сопротивление резисторов должно быть не менее 4 Ом (при мощности от 5 до 10 Вт). При включении резисторов значение тока составит 12 В/10 Ом = 1,20 А.

Уровни входов ИС UCN-5804 совместимы с выходами КМОП– и ТТЛ-логики. Это означает, что для нормальной работы схемы мы можем непосредственно соединить входы ИС с шинами выхода PIC-микроконтроллера. Входные тактовые импульсы (вывод 11) для ИС UCN-5804 генерируются PIC-микроконтроллером. Вывод управления выходом разрешает вращение ШД при подаче сигнала низкого уровня и останавливает ШД при сигнале высокого уровня.

Выводы 10 и 14 ИС UCN-5804 управляются переключателями, подающими сигналы высокого или низкого уровня. Вывод 10 управляет режимами полного или половинного шага, а вывод 14 управляет направлением вращения. При желании этими функциями можно управлять с помощью PIC. Для управления на соответствующие выводы подаются сигналы высокого или низкого уровня аналогично управлению работой выхода ИС.

Программа на PICBASIC для обеспечения работы схемы имеет следующий вид:

‘Управление шаговым двигателем через ИС UCN?5804

Symbol TRISB = 134 ‘Инициализировать TRISB как 134

Symbol PortB = 6 ‘Инициализировать PortB как 6

Poke TRISB,0 ‘Установить шины PORTB на выход

low1 ‘Установить выход на низкий уровень

start:

pulsout 0, 10000 ‘Подача 10 мс импульсов на UCN?5804

goto start ‘Повторение

В этом случае я снова написал простейшую «базовую» программу, чтобы показать, насколько просто осуществляется управление вращением ШД. Конечно, вы можете дополнить программу управлением частотой импульсов, направлением вращения и т. д.

Данный текст является ознакомительным фрагментом.

Продолжение на ЛитРес

Измерение сопротивления на pic контроллере. Схемы и устройства на микроконтроллерах. Программное обеспечение для работы с PIC-контроллером

Здравствуйте Хабра-господа и Хабра-Дамы!
Думаю некоторым из Вас знакома ситуация:
«Автомобиль, пробка, N-ый час за рулем. Коммуникатор с запущенным навигатором уже 3-й раз пиликает об окончании заряда, несмотря на то что все время подключен к зарядке. А Вы, как на зло, абсолютно не ориентируетесь в этой части города.»
Далее, я расскажу о том, как имея в меру прямые руки, небольшой набор инструментов и немного денег соорудить универсальную (подходящую для зарядки номинальным током, как Apple, так и всех остальных устройств), автомобильную USB зарядку для Ваших гаджетов.

ОСТОРОЖНО: Под катом много фото, немного работы, никакого ЛУТ и нет хеппи энда (пока нет).

Автор, нафига все это?

Некоторое время назад со мной приключилась история описанная в прологе, китайский usb-двойник, абсолютно бессовестно дал разрядиться моему смарту во время навигации, из заявленных 500mA он выдавал около 350 на оба сокета. Надо сказать я был очень зол. Ну да ладно — сам дурак, решил я, и в этот же день, вечером, был заказан на eBay автомобильный зарядник на 2А, который почил в недрах китайско-израильской почты. По счастливой случайности, у меня завалялась платка конвертор DC-DC step down с выходным током до 3-х А и я решил на ее базе собрать себе надежный и универсальный зарядник для автомобиля.

Немного о зарядных устройствах.
Большинство зарядных устройств, которые присутствуют на рынке, я бы поделил на четыре типа:
1. Яблочные — заточенные под Apple-устройства, снабженные небольшой зарядной хитростью.
2. Обычные — ориентированные на большинство гаджетов, которым достаточно закороченных DATA+ и DATA- для потребления номинального тока заряда (тот, что заявлен на зарядном устройстве Вашего гаджета).
3. Бестолковые — у которых DATA+ и DATA- висят в воздухе. В связи с этим, Ваше устройство решает, что это USB-хаб или компьютер и не потребляет более 500 mA, что отрицательно сказывается на скорости заряда или вообще в отсутствии оного под нагрузкой.
4. Хитро%!$&е — так как внутри у них установлен микроконтроллер, который сообщает устройству, что то из разряда того, что небезызвестный герой Киплинга сообщал животным — «Мы с тобой одной крови, ты и я», проверяет оригинальность зарядки. Для всех же остальных устройств они являются ЗУ третьего типа.

Последние два варианта, в силу понятных причин, считаю не интересными и даже вредными, поэтому сосредоточимся на первых двух. Поскольку наша зарядка должна уметь заряжать, как яблочные так и все остальные гаджеты мы используем два выхода USB, один будет ориентирован на Apple — устройства, второй на все остальные. Замечу лишь, что если Вы по ошибке подключите гаджет к не предназначенной для него USB розетке, ничего страшного не произойдет, просто он будет брать те же пресловутые 500mA.
Итак, цель: » Немного поработав руками получить универсальную зарядку для машины.»

Что нам понадобится

1.Для начала, разберемся с током заряда, обычно, это 1А для смартфонов и около 2-х Ампер для планшетов (кстати мой Nexus 7, почему то из своей же зарядки не берет более 1.2А). Итого для одновременной зарядки средних планшета и смартфона нам потребуется ток 3А. Значит конвертер DC-DC, что у меня имеется в наличии вполне подойдет. Должен признать, что конвертер на 4А или 5А для данных целей подошел бы лучше, для того что бы тока хватало на 2 планшета, но компактных и недорогих решений так и не нашел, да еще и время поджимало.
Поэтому я использовал то что было:
Входное напряжение: 4-35В.
Выходное напряжение: 1.23-30В (регулируется потенциометром).
Максимальный ток на выходе: 3А.
Тип: Step Down Buck converter.

2. USB розетка, я использовал двойную, которую выпаял из старого USB-хаба.

Так же можно использовать обычные сокеты от USB удлинителя.

3. Макетная плата. Для того что бы припаять к чему-нибудь USB розетку и собрать простенькую схему зарядки для Apple.

4. Резисторы или сопротивления, кому как больше нравится и один LED. Всего 5-ть штук, 75 кОм, 43 кОм, 2 номиналом 50 кОм и один на 70Ом. На первых 4-х как раз и строится схема зарядки Apple, на 70 Ом я использовал для ограничения тока на светодиоде.

5. Корпус. Я нашел в закромах родины футляр от фонарика Mag-Lite. Вообще, идеально бы подошел футляр от зубной щетки черного цвета, но я такового не нашел.

6. Паяльник, канифоль, припой, кусачки, дрель и час свободного времени.

Собираем зарядку

1. Первым делом я закоротил между собой выводы DATA+ и DATA- на одном из сокетов:


*Прошу прощение за резкость, встал рано и телу хотелось спать, а мозгу продолжения эксперимента.

Это как раз и будет наша розетка для не яблочных гаджетов.

2. Отрезаем нужный нам размер макетной платы и размечаем и сверлим в ней отверстия под крепежные ножки USB розетки, параллельно проверяя, что контактные ножки у нас совпадают с отверстиями в плате.

3. Вставляем сокет, фиксируем и припаиваем к макетной плате. Контакты +5В первой(1) и второй(5) розетки замыкаем между собой, так же поступаем и с контактами GND(4 и 8).


Фото только для пояснения, контакты пропаиваются уже на макетной плате

4. Распаиваем на оставшиеся два контакта DATA+ и DATA- следующую схему:

Для соблюдения полярности пользуемся распиновкой USB:

У меня получилось так:

Не забываем подстроить напряжение на выходе, при помощи отвертки и вольтметра задаем 5 — 5.1В.

Так же я решил добавить индикацию к цепи питания USB, паралельно к +5V и GND припаял желтый лед с резистором на 70Ом для ограничения тока.

Убедительная просьба к людям с тонкой душевной организации и прочим любителям прекрасного: «Не смотрите следующую картинку, ибо пайка кривая.»

Я смелый!



5. Фиксируем плату конвертер на нашей макетной плате. Я это осуществил при помощи ножек от все тех же резисторов, запаяв их в контактные отверстия на плате конвертера и на макетной плате.

6. Припаиваем выходы конвертера к соответствующим входам на USB-сокете. Соблюдаем полярность!

7. Берем корпус, размечаем и сверлим отверстия под крепление нашей платы, размечаем и вырезаем место под USB розетку и добавляем отверстия для вентиляции напротив микросхемы конвертера.

Крепим макетную плату болтами к корпусу и получаем вот такую коробочку:

В Машине это выглядит так:

Тесты

Далее, я решил проверить реально ли мои устройства будут считать, что они заряжаются от родной зарядки. А заодно замерить и токи.
Питание обеспечено БП от старого принтера 24В 3.3А.
Ток я замерял перед выходом на USB.

Забегая вперед скажу, все имеющиеся у меня устройства зарядку признали.
К USB розетке номер один (которая предназначена для разных гаджетов) я подключал:
HTC Sensation, HTC Wildfire S, Nokia E72, Nexus 7, Samsung Galaxy ACE2.
Для Sensation и Nexus 7 я проверил время зарядки, начинал с 1% и заряжал до 100%.
Смартфон зарядился за 1 час 43 минуты (батарейка Anker на 1900 mAh), должен заметить, что от стандартной зарядки он заряжается около 2-х часов.
Планшет же зарядился за 3 часа 33 минуты, что на пол часа дольше чем зарядка от сети (Одновременно заряжал только одно устройство).


Чтобы оба Android устройства брали из зарядки максимум, мне пришлось спаять небольшой переходничок(который подключал к apple USB), к нему подключен HTC Sensation.

К USB розетке номер два я подключал: Ipod Nano, Ipod Touch 4G, Iphone 4S, Ipad 2. Поскольку Nano заряжать такой штукой смешно — он у меня максимум 200 mA брал, проверял Touch 4g и IPad. Ipod заряжался 1 час 17 минут с нуля и до 100%(правда вместе с IPAD 2). Ipad 2 заряжался 4 часа и 46 минут (один).


Как Вы видите Iphone 4S с удовольствием потребляет свой номинальный ток.

Кстати, Ipad 2 меня удивил, он абсолютно не чурался схемы с закороченными дата контактами и потреблял абсолютно те же токи, что и от предназначенного для него сокета.

Процесс зарядки и выводы

Для начала напомню, что все устройства в которых используют литиевые аккумуляторы имеют в наличии контроллер заряда. Работает он по следующей схеме:

График усреднен и может варьироваться для разных устройств.

Как видно из графика, в начале зарядного цикла контроллер позволяет заряжать максимально допустимым током для Вашего устройства и постепенно снижает ток. Уровень заряда определяется по напряжению, так же контроллеры мониторят температуру и отключают зарядку при высоких значениях последней. Контроллеры заряда могут находится в самом устройстве, в аккумуляторе или в зарядном устройстве (очень редко).
Подробней о зарядке литиевых элементов можно почитать .

Собственно тут мы и подошли к моменту почему этот топик называется: «Попыткой номер раз». Дело в том, что максимум, что у меня получилось выжать из зарядки это: 1.77А

Ну а причина, на мой взгляд, не оптимально подобранная катушка индуктивности, которая в свою очередь не дает Buck — конвертору выдать свой максимальный ток. Думал ее заменить, но инструмента для пайки SMD у меня нет и в ближайшее время не предвидится. Это не ошибка проектировщиков платы с ebay, это просто особенность данной схемы так как она ориентированна на различные входящие и исходящие напряжения. При подобных условиях просто невозможно выдавать максимальный ток на всем диапазоне напряжений.

В итоге, я получил устройство, которое способно заряжать два смартфона одновременно или один планшет в автомобиле за вменяемое время.

В связи с вышесказанным было решено оставить эту зарядку как есть и собрать новую, полностью своими руками, на базе более мощного конвертора LM2678,
который в перспективе, сможет «накормить» два планшета и смартфон одновременно (5А на выходе). Но об этом уже в следующий раз!

  • Android.
  • Добавить метки

    В наш технологический век, трудно представить себе жизнь без телефона. И каково же бывает расстройство, когда он садится. Если это случилось дома или в офисе это конечно не проблема, включил зарядное устройство в розетку и все. Но при путешествии в автомобиле или при работе связанной с вечными разъездами это сделать, не получиться.

    Для этого необходимо зарядное устройство в автомобиле. Конечно, его можно приобрести в магазине, но мы легких путей не ищем, тем более что собрать его особых проблем не составляет.

    За основу будет взята микросхема MC34063, она обычно применяется в DC/DC преобразователях напряжения, т.е. из постоянного в постоянное.

    Что как раз нам и нужно. Как известно питание бортовой сети составляет 12 В, а для зарядного устройства необходимо 5 В. Поэтому на базе этой микросхемы соберем преобразователь напряжения из 12 В в 5В. Принципиальная схема будущего устройства приведена ниже.

    Номинал выходного напряжения выставляется значениями резисторов R2 и R3. Для требуемого значения в 5 В, необходимо установить R2=1 кОм, R3=3 кОм. Формула для определения выходного значения напряжения приведена ниже, поэтому если вам нужно установить на выходе другое напряжение, с помощью нее вы можете произвести расчет.

    В принципе можно сделать и универсальный адаптер, если на место R3 поставить переменник и выкручивать необходимое значение. Единственное что перед этим следует сделать расчет, чтобы понимать в каком диапазоне должны быть его значения.

    Резистор R1 играет роль ограничителя тока, при установке R1 номиналом 0,3 Ом, превышение выходного тока более 500 мА отключает устройство, уменьшение значения сопротивления повысит границу тока отключения.


    Конденсатор C3 задает частоту работы преобразователя, остальные конденсаторы фильтрующие. Дроссель также выполняет роль фильтра, рассчитывается на ток в 1 А. В качестве диода выбран 1N5819, но вполне подойдет и отечественный аналог.


    Адаптер собран на основе корпуса Z-43, по размерам его вполне достаточно, чтобы компактно разместить всю элементную базу. На входе ставим вилку в прикуриватель на выходе USB разъем – готово!


    Лучшие 19 проектов микроконтроллеров PIC

    Для инженеров микроконтроллер PIC стал находкой. Чаще всего это выбор микроконтроллера для реализации проекта. Мы составили список из 20 идей проектов микроконтроллеров PIC для электронщиков. Проекты варьируются от будильника до воплощения идей Интернета вещей.

    Содержание:

    Проекты микроконтроллеров PIC: LED

    Освещение настроения с использованием светодиодов

    У нас есть модные светильники от многих продавцов на рынке.Однако проблема большинства заключается в доступности и отсутствии повреждений после ремонта. В этом проекте показано использование 5-миллиметровых светодиодов или светодиодов Superflux / Piranha с квадратным корпусом. В схеме используются биполярные транзисторы, а не полевые МОП-транзисторы, что делает ее подходящей для начинающих конструкторов. Этот проект также доступен в виде набора со всеми деталями, необходимыми для сборки печатной платы, включая светодиоды superflux.

    Этот проект доступен по адресу: Освещение настроения с использованием светодиодов

    .

    Светодиодная кубическая матрица

    В кубе, описанном на этой странице, используется матрица одноцветных светодиодов 5 x 5 x 5.Это хороший размер для экспериментов, так как количество светодиодов, необходимое для работы на уровне 125, снижает стоимость. Кроме того, его сборка не занимает много времени и просто помещается на печатную плату размером с еврокарту. Требуемая мощность — менее 1 А. Кроме того, использование только одного цвета упрощает аппаратное и программное обеспечение.

    Этот проект доступен по адресу: LED cube matrix

    Светодиодный кубик

    Этот проект представляет собой аналогичный светодиодный кристалл, но с немного другой формой вывода. Он использует 6 светодиодов, расположенных по кругу.Когда кости брошены, они создают эффект преследования. Эффект преследования постепенно замедляется и в конечном итоге останавливается на одном из шести светодиодов. Бросок осуществляется легким покачиванием кости по горизонтали. Светодиодный кубик питается от батарейки типа «таблетка» 3 В и использует микроконтроллер PIC12LF1822. Он генерирует случайное число и управляет выходными светодиодами.

    Этот проект доступен по адресу: LED dice

    Светодиодный фонарь аварийного автомобиля

    Этот проект описывает схему аварийного светодиодного освещения для транспортных средств с малым количеством компонентов.Их можно использовать для привлечения внимания (или предупреждения) водителей и пешеходов. Осветительные устройства вызывают мгновенный отклик, заставляя людей смотреть вверх и обращать внимание. Важное соображение, когда момент может означать жизнь или смерть в экстренной ситуации. Яркие светодиоды обеспечивают четкую видимость автомобиля даже в суровых погодных условиях.

    Этот проект доступен по адресу: Светодиодный фонарь аварийного автомобиля

    Велосипедный светильник с 3 светодиодами

    Этот следующий проект микроконтроллера PIC основан на микроконтроллере PIC10F200, работающем от источника питания от 2 до 5 вольт.В режиме ожидания он потребляет ток менее 1 мкА, что делает его идеальным для работы от аккумулятора. В нем используются три светодиода высокой яркости с индивидуальным управлением. Кнопка включает / выключает свет и меняет режимы работы при включении.

    Этот проект доступен по адресу: 3 LED Bike Light

    Проекты микроконтроллеров PIC: Контроль температуры

    Будильник-индикатор температуры

    Этот простой в сборке гаджет на основе микроконтроллера PIC (MCU) из архивов EFY объединяет часы с индикатором температуры на одном дисплее.В дисплее используются четыре 7-сегментных светодиода с общим анодом. Он показывает часы, и каждую минуту в течение пяти секунд дисплей попеременно показывает температуру в ° C. Также предусмотрена сигнализация с зуммером.

    Этот проект доступен по адресу: Будильник-индикатор температуры

    Цифровой контроллер температуры

    Цифровой контроллер температуры является важным инструментом в области электроники, контрольно-измерительной аппаратуры и автоматизации управления для измерения и контроля температуры.Его можно использовать как дома, так и в промышленности. Здесь представлен недорогой терморегулятор на базе микроконтроллера. Он может считывать и контролировать температуру в диапазоне от нуля до 1000 ° C. Температура в реальном времени отображается на ЖК-экране. Вы можете использовать его для управления температурой в заданном минимальном и максимальном диапазоне.

    Этот проект доступен по адресу: Цифровой контроллер температуры

    Система контроля температуры

    Контроль и регулировка температуры важны в промышленных условиях.Датчики широко используются для измерения температуры. Датчик температуры преобразует температуру в эквивалентное выходное напряжение, поэтому здесь мы используем LM35 для решения этой задачи. В этом проекте описывается простая система измерения и отображения температуры на основе датчика LM35 и микроконтроллера PIC16F877A. Температура в градусах Цельсия отображается на ЖК-дисплее 16 × 2.

    Этот проект доступен по адресу: Система контроля температуры

    Регистратор данных с использованием PIC12F683

    Следующий проект микроконтроллера PIC представляет проект регистратора данных, основанный на микроконтроллере PIC12F683.Микроконтроллер регулярно считывает значения температуры с датчика температуры и сохраняет их во внутренней памяти EEPROM. Зарегистрированные значения температуры могут быть позже переданы на ПК через последовательный интерфейс.

    Этот проект доступен по адресу: Регистратор данных с использованием PIC12F683

    Идеи проектов микроконтроллеров PIC: Интернет вещей и умная жизнь

    Система регистрации температуры Wi-Fi для Интернета вещей

    Вот система регистрации температурных данных на базе микроконтроллера (MCU) PIC16F887, Wi-Fi и интерфейса прикладного программирования (API) ThingSpeak.ThingSpeak — это приложение и API Интернета вещей (IoT) с открытым исходным кодом. Он хранит и извлекает данные из вещей через Интернет. Он позволяет собирать, хранить, анализировать, визуализировать и действовать в соответствии с данными, полученными от датчиков или электронных схем.

    Этот проект доступен по адресу: IoT Wi-Fi Temperature-Logging System

    Измерение солнечной энергии

    Этот проект предназначен для измерения энергии солнечных батарей. В этом проекте вы получите представление о том, как измерять солнечную энергию с помощью различных датчиков и микроконтроллера pic.Датчик напряжения используется для измерения напряжения солнечной панели. Датчик тока используется для измерения тока, протекающего на нагрузку от солнечной панели. Жидкокристаллический дисплей используется для отображения значения тока, напряжения и мощности солнечной панели. Питание 5 В постоянного тока обеспечивает рабочее напряжение микроконтроллера и жидкокристаллического дисплея.

    Этот проект доступен по адресу: Измерение солнечной энергии

    Электронный замок

    с использованием PIC

    Безопасность — главная забота в нашей повседневной жизни. Каждый хочет быть в максимальной безопасности.Цифровой замок на базе микроконтроллера для дверей — это система контроля доступа. Это позволяет только авторизованным лицам доступ в зону ограниченного доступа. Электронный замок или цифровой замок — это устройство, к которому прикреплен блок электронного управления. Они снабжены системой контроля доступа. Эта система позволяет пользователю разблокировать устройство с помощью пароля.

    Этот проект доступен по адресу: Электронный замок

    Разные проекты микроконтроллеров PIC

    Переключатель с таймером

    Выключатель с таймером — это автоматический выключатель с таймером, который включает прибор на желаемое время.По истечении заданного времени таймер автоматически отключается, отключая прибор от электросети. Продолжительность работы прибора можно установить от 1 до 99 минут. Этот переключатель устраняет необходимость постоянного наблюдения за устройством — преимущество перед ручным переключателем. Своевременное переключение техники увеличивает срок службы, а также экономит электроэнергию.

    Этот проект доступен по адресу: Time-Controlled Switch

    Переключатель хлопка

    Выключатель хлопка — забавный проект для начинающих.Он включает и выключает электроприборы со звуком хлопка в ладоши. Этот проект посвящен созданию простого переключателя хлопков, который срабатывает при обнаружении двух звуков хлопка подряд. В качестве преобразователя используется электретный микрофон. Он преобразует звук хлопка в электрический сигнал. Затем микроконтроллер PIC12F683 выполняет действия по переключению ВКЛ / ВЫКЛ.

    Этот проект доступен по адресу: Clap switch

    Интерфейс USB

    В этом руководстве создается интерфейс USB с использованием PIC18F4455, который отображается как устройство интерфейса пользователя в Windows.Интерфейс должен иметь возможность отправлять и получать команды от USB-хоста портативного компьютера. В частности: USB должен иметь возможность включать и выключать некоторые светодиоды, распознавать нажатие переключателя и визуализировать значение переменного резистора, подстроечного резистора.

    Этот проект доступен по адресу: PIC USB Interface

    Ультразвуковой дальномер

    Ультразвуковой дальномер PIC работает путем передачи короткого звукового импульса на неслышимой для уха частоте (ультразвуковой или ультразвуковой).После этого микроконтроллер прослушивает эхо. Время от передачи до приема эха позволяет рассчитать расстояние до объекта. В проекте используются 5 стандартных транзисторов для приема и передачи ультразвука. Компаратор устанавливает пороговый уровень обнаружения эха.

    Этот проект доступен по адресу: Ультразвуковой дальномер

    АСУ ТП для теплицы

    Интеллектуальная система управления теплицей предназначена для защиты растений от более прохладной и жаркой погоды.Дополнительная система управления включена для экономии энергии. Это заставляет вентиляторы и освещение автоматически включаться и выключаться с помощью интеллектуальной системы управления. В этом проекте разработана интеллектуальная система управления с использованием микроконтроллера и датчиков.

    Этот проект доступен по адресу: Система управления теплицей

    Сопровождающий

    Робот-следящий за линией обычно изготавливается на университетском уровне, знакомит студентов с областью робототехники. Сделать практического робота на университетском уровне невозможно.Международный клуб робототехники призывает студентов для начала создавать простых роботов. Наиболее распространенными из них являются робот-следящий за линией, робот, избегающий препятствий, робот-обнаружитель металла. Это помогает получить базовое представление о практических роботах.

    Этот проект доступен по адресу: Line Follower

    Регулятор увеличения скорости вентилятора с использованием PIC16F73

    Здесь представлен регулятор скорости вращения вентилятора на базе микроконтроллера PIC16F73, регулятора напряжения и некоторых других общедоступных компонентов.

    Этот проект доступен по адресу: Регулятор увеличения скорости вентилятора с использованием PIC16F73


    Есть ли у вас какие-либо проекты микроконтроллеров PIC, которые вы хотели бы здесь увидеть? Или у вас есть какие-либо идеи проектов микроконтроллеров PIC, которые вы хотели бы включить в этот список? Дайте нам знать по адресу [электронная почта защищена].

    Эта статья была впервые опубликована 25 апреля 2017 г. и обновлена ​​3 августа 2019 г.

    Проекты микроконтроллеров PIC для студентов последних курсов инженерных специальностей

    Аббревиатура PIC — «Контроллер периферийного интерфейса», и это семейство микроконтроллеров.Этот микроконтроллер производится различными компаниями, такими как микрочип, NXP и т. Д. Этот микроконтроллер включает аналого-цифровые преобразователи, память, таймеры / счетчики, последовательную связь и прерывания, собранные в единую ИС. Когда мы выбираем микроконтроллеры PIC для проектов микроконтроллеров PIC или встраиваемых проектов в области электроники или электротехники, у нас есть несколько вариантов, от 8-бит до 32-бит. Доступно множество типов микроконтроллеров, таких как AVR, 8051, PIC и ARM.Программирование микроконтроллера PIC выполняется с использованием интегрированных средств разработки для выполнения многих операций управления.

    Когда мы выбираем проекты микроконтроллеров PIC, основанные на электронике или электротехнике, у нас есть много вариантов. Доступны различные микроконтроллеры, от восьми до тридцати двух битов, чтобы хорошо работать с проектами и продуктами различной сложности и ограничений по стоимости. Но если говорить о студенческих проектах, это могут быть как крупные проекты, так и мини-проекты; есть только несколько совместимых микроконтроллеров.Получите представление о некоторых из лучших идей проектов микроконтроллеров PIC, прочитав следующие концепции.


    Проекты микроконтроллеров PIC для студентов инженерных специальностей

    Эти микроконтроллеры используются во многих приложениях, таких как аудио аксессуары, смартфоны, видеоигры, современные медицинские устройства и т. Д. Вы можете получить представление о списке лучших проектов микроконтроллеров PIC для студентов инженерных специальностей прочитав приведенную ниже концептуальную информацию.

    Проекты микроконтроллера PIC
    Проект определения дальности (ультразвукового) сонара PIC

    Гидролокатор на базе микроконтроллера PIC работает путем распространения короткого импульса шума с частотой, которую человеческий слух не слышит i.е. ультразвуковой или ультразвуковой. Позже микроконтроллер замечает эхо распространения шума. Расстояние от распространяющегося шума до приема эха, мы оценим расстояние от объекта.

    В этом проекте гидролокатора используются 5 стандартных транзисторов для получения и распространения ультразвукового звука и компаратор для определения порогового уровня распознавания эхо-сигнала — поэтому здесь нет уникальных компонентов, кроме микроконтроллера. Ультразвуковые преобразователи звука обычные 40 кГц.Обратите внимание: используется внутренний генератор микроконтроллера PIC, и у него есть 2 контакта, которые можно использовать для стандартного ввода-вывода.

    BRAM на базе PIC (автономный мобильный робот для начинающих)

    В этом проекте показано, как разработать BRAM. Он предназначен для того, чтобы его можно было легко построить, задействовав некоторые из компонентов, которые можно легко обнаружить дома. Ключевым контроллером для этого проекта робота является Microchip (PIC16F690). Два старых компакт-диска используются для разработки шасси для роботизированной системы.Редукторный двигатель постоянного тока, ролик, питание от аккумулятора и ключи или усы бампера робота захватываются на нижней палубе, в то время как верхняя дека состоит из сенсорной платы робота, микрочипа PIC16F690 и привода двигателя.

    Ниже приведен материал конструкции BRAM:

    • 2 CD или DVD для шасси
    • Можно использовать 2 мотор-редуктора постоянного тока с колесом или модифицированный серводвигатель
    • Один батарейный отсек AA 3 на 1,5 В с кнопками ВКЛ.
    • 1 пластиковая бусина и 1 скрепка для ролика
    • 2 микроключа и 2 скрепки для датчика бампера
    • Болты, печатная плата, гайки, держатели, двойная лента для охвата всех этих компонентов вместе.
    Универсальный программный контроллер центрального отопления с использованием PIC16F628A

    Этот универсальный контроллер системы центрального отопления предназначен для использования с бойлером. 2 реле управляет горячей водой и теплом. Он содержит кнопку управления на передней панели с ЖК-экраном 16 × 2. Это также обеспечивает последовательную ассоциацию, которая позволяет работать на расстоянии с помощью ПК.

    Программатор и реле управления отопительным котлом соединены в разных блоках только для размещения реле рядом с котлом, в то время как программатор может быть размещен в любом месте дома, используя низковольтное питание, возвращаемое к компоненту реле.Кроме того, вы также можете разработать последовательную интерфейсную линию рядом с программатором, в этом случае требуется только 4 провода для управления питанием и реле.

    Характеристики
    • Саморегулирующиеся для центрального отопления и котла.
    • Десять гибких программ.
    • Программы могут быть установлены в соответствии с убеждениями.
    • Ручное управление и настройка с фасадной панели или удаленно.
    • Батарейная поддержка RTC (часов реального времени).
    • Программатор, расположенный на удалении от котла, может использовать 6-жильный сигнальный кабель.
    • Передняя панель может быть заблокирована
    • На основе Microchip PIC 16F628 (микроконтроллер).
    Универсальный регистратор данных температуры с использованием PIC12F683 и DS1820

    Здесь мы представляем проект регистратора данных температуры, который основан на 8-контактном микроконтроллере Microchip (PIC12F683). Он изучает значения температуры с цифрового датчика (DS1820) и накапливает их во внутренней EEPROM. Микроконтроллер имеет 256 байт внутренней EEPROM, и значения температуры будут сохраняться в 8-битном формате.Это означает, что 8 важных битов значений температуры от цифрового датчика будут изучены, и разрешение по температуре будет составлять один градус C.

    Функции регистратора температуры

    Регистратор данных
    • Интерпретирует температуру с цифрового датчика и накапливается во внутренней EEPROM
    • Может накапливать около 254 значений температуры. Ячейка «0» EEPROM используется для сохранения перерывов выборки, а ячейка «1» используется для сохранения количества записей.
    • Возможны 3 варианта перерыва выборки: 1 секунда, 1 минута и 10 минут.Это можно выбрать при включении питания.
    • Клавиши «Пуск» и «Стоп» для ручного управления.
    • Записанные значения отправляются на ПК через последовательный порт. Имеется кнопка отправки, чтобы начать передачу данных.
    • Светодиод для отображения различных текущих процессов.
    • Кнопка сброса для удаления всех предыдущих данных.
    Датчик газа с использованием PIC16F84A

    Здесь мы демонстрируем схему датчика газа, поддерживаемую микроконтроллером PIC16F84A и датчиком GH-312. GH-312 способен обнаруживать такие газы, как сжиженный газ, пропан, дым, спирт, бутан, метан, водород и т. Д.При обнаружении любого из этих газов он запускает микроконтроллер (PIC16F84A), который, в свою очередь, включает зуммер и зажигает светодиод. Здесь мы использовали в проекте батарею на 9 вольт, поскольку датчику требуется входное напряжение 9 вольт.

    Выходной сигнал датчика, когда он запрашивает микроконтроллер, составляет 5 В, что идеально для надежного соединения с любым микроконтроллером. Несмотря на то, что используется батарея на 9 В, любой источник питания на 12 В будет работать безупречно, так как датчик может управлять напряжением от 9 до 20 вольт, а напряжение микроконтроллера синхронизируется контроллером 7805.

    Связь RS232 с микроконтроллером PIC

    Этот проект демонстрирует, как выполнить несложную связь через интерфейс RS232 с использованием микроконтроллера PIC. RS232 является нормальным для последовательного интерфейса связи, который позволяет передавать и получать данные как минимум по 3 проводам. С помощью интерфейса RS232 можно организовать соединение между микроконтроллером и ПК, через COM-порт ПК или между 2 микроконтроллерами.

    RS232 используется по разным причинам, например, для передачи команд ПК на микроконтроллер, для передачи отладочной информации с микроконтроллера на терминал, для загрузки последней версии микропрограммного обеспечения на микроконтроллер и для многих других вещей.На ПК будет установлена ​​терминальная программа для приема и отправки данных. Данные, передаваемые через микроконтроллер, отображаются в окне терминала, и нажатие клавиши (клавиш) внутри терминала передает соответствующий код клавиши микроконтроллеру.

    Светодиодный велосипедный фонарь с использованием PIC10F200

    В этом проекте используется многофункциональный светодиодный велосипедный фонарь, в котором используются 3 светодиода. Проект поддерживается базовым микроконтроллером (PIC10F200), работающим от источника питания от двух до пяти вольт.В режиме ожидания он потребляет мощность менее 1 мкА, что идеально подходит для работы от батареи. В нем используются 3 отдельно управляемых светодиода высокой яркости и одно нажатие на кнопку для включения-выключения света и изменения режимов работы.

    Миниатюрный ИК-пульт дистанционного управления с 3 переключателями

    Этот проект с 3-х кнопочным мини-ИК-пультом дистанционного управления передает 12-битные ИК-сигналы SIRC, используемые в любых пультах дистанционного управления телевизора. Он предназначен для работы как с проектами платы 2-канального реле, так и с платой драйвера 3-канального реле.В плате драйвера реле используется микроконтроллер Microchip PIC10F200, который имеет низкую стоимость вместе с несколькими легко расположенными компонентами, что делает сборку чрезвычайно экономичной.

    Трехкнопочный мини-ИК-пульт дистанционного управления очень прост. PIC10F200 (микроконтроллер) запрограммирован с помощью прошивки для создания картера 40 кГц, преобразованного с данными, сконфигурированными SIRC. Всем 3 переключателям назначены разные коды команд, которые микропрограммное обеспечение передает с помощью ИК-светодиода при нажатии кнопки.Все устройство получает питание от CR2032, который представляет собой плоскую литиевую батарею на 3 вольта. Когда никакая клавиша не нажата, микроконтроллер переходит в режим ожидания, где он потребляет около 100 нА (0,1 мкА). Если аккумулятор не используется, он прослужит несколько лет.

    Дистанционное управление по телефону с использованием микроконтроллера PIC16F84A

    Этот проект позволяет управлять как минимум восемью устройствами, задействуя микроконтроллер PIC, известный как PIC16F84A, связанный с телефонной линией. Исключительный аспект здесь в том, что он не похож на другой пульт дистанционного управления телефонной линией; это устройство не требует ответа на вызов на удаленном конце, поэтому плата не взимается.Этот гаджет зависит от количества звонков, подаваемых на телефонной линии, чтобы стимулировать или отключать устройства.

    Указания для дистанционного ключа, управляемого телефоном:

    • При разработке центральной схемы убедитесь, что вы задействовали 18-контактное гнездо для микроконтроллера. Не припаивайте микросхему непосредственно к печатной плате, так как вам может потребоваться удалить ее для программирования. Прежде чем использовать PIC в центральной цепи, сначала запрограммируйте его. В сети доступно несколько программистов для программирования микроконтроллеров PIC.
    • Выньте PIC из 18-контактного разъема программатора и поместите его в разъем центральной схемы.
    • Теперь прикрепите цепь к телефонной линии и включите питание.
    • Теперь печатная плата готова к тестированию.
    Автоматизированная система городского управления водными ресурсами

    Одной из важнейших функций любого городского управления является управление водными ресурсами. Это фундаментальная особенность, поскольку в наши дни количество источников воды крайне ограничено, и никто не может позволить себе их растрату.В этом проекте по управлению водными ресурсами рассказывается об автоматизации распределения и управления водой с учетом технологических достижений. В систему включены следующие различные аспекты: —

    • Мобильное контролируемое водораспределение в различных регионах.
    • Регулировка скорости двигателя в зависимости от уровня воды в баке.
    • Расчет счета за потребленную воду.
    • Распределение воды по счету.
    • Обновления и статус сотовых телефонов через G.Модуль S.M.
    • Голосовые объявления в офисе о статусе.
    • Регистратор данных в административном центре статистического анализа.
    Измерение на базе микроконтроллера PIC

    Основная цель этого проекта — измерение параметров солнечных элементов посредством сбора данных с нескольких датчиков.

    Источник питания состоит из понижающего трансформатора 230 / 12В, который понижает напряжение до 12В переменного тока. Это переменное напряжение преобразуется в постоянное с помощью мостового выпрямителя, пульсации удаляются с помощью емкостного фильтра, а затем оно регулируется до +5 В с помощью регулятора напряжения, необходимого для работы микроконтроллера и других схем.

    PIC Измерение солнечной фотоэлектрической мощности на основе микроконтроллера

    В этом проекте используется солнечная панель, которая отслеживает солнечный свет. В этом проекте различные параметры солнечной панели, такие как ток, напряжение, температура или сила света, отслеживаются с помощью микроконтроллера PIC семейства PIC16F8.

    Интенсивность света контролируется датчиком LDR; аналогично ток по датчику тока; напряжение по принципу делителя напряжения и температура по датчику температуры соответственно.Все эти данные отображаются на ЖК-дисплее, который сопряжен с микроконтроллером PIC.

    PIC Уличный фонарь на базе микроконтроллера, который загорается при обнаружении движения транспортных средств

    Основная цель этого проекта — обнаруживать движение транспортных средств на шоссе и включать только несколько уличных фонарей впереди них, а затем выключать свет, когда автомобиль уходит из-под огней, чтобы сберечь энергию. В ночное время все огни на шоссе остаются включенными для транспортных средств, но много энергии тратится впустую, когда транспортное средство не движется.

    Уличный фонарь, который загорается при обнаружении движения автомобиля

    Этот проект предлагает решение, которое помогает экономить энергию, что достигается за счет использования датчиков, которые обнаруживают приближающийся автомобиль на шоссе, а затем заставляют включиться несколько уличных фонарей перед автомобилем. Когда автомобиль проезжает мимо уличных фонарей, система автоматически выключает свет.

    В настоящее время HID-лампы используются в городских уличных системах; Лампы HID работают по принципу газового разряда. Таким образом, интенсивность не контролируется никаким снижением напряжения.В будущем белые светодиодные лампы заменят лампы HID в системах уличного освещения. Интенсивность света также возможна с помощью ШИМ (широтно-импульсной модуляции), которая генерируется микроконтроллером PIC.

    Датчики, определяющие движение транспортных средств, размещаются по обе стороны дороги и отправляют сигналы на микроконтроллер, чтобы включить / выключить светодиоды. Таким образом, этот проект помогает сэкономить много энергии. Кроме того, этот проект может быть разработан с использованием подходящих датчиков не только для обнаружения неисправных уличных фонарей на шоссе, но и для отправки SMS-сообщений в отдел управления через модем GSM для корректирующих действий.

    PIC Автоматическое управление яркостью уличных фонарей на основе микроконтроллера

    Этот проект используется для управления автоматической интенсивностью уличных фонарей с помощью микроконтроллера PIC. Эта предлагаемая система использует светодиоды вместо HID-ламп в системе уличного освещения для экономии энергии. Микроконтроллер PIC используется для управления интенсивностью света путем выработки сигналов ШИМ, которые управляют полевым МОП-транзистором для переключения светодиодов в соответствии с желаемой операцией.

    Автоматический контроль яркости уличного света

    Яркость уличного освещения поддерживается на высоком уровне в часы пик; поскольку движение на дорогах имеет тенденцию к медленному уменьшению в поздние ночные часы, интенсивность также постепенно снижается до утра.Наконец, он полностью отключается в 6 утра и снова возобновляет работу в 18:00 вечера. Кроме того, этот проект может быть разработан путем интеграции его с солнечной панелью, которая помогает преобразовывать интенсивность солнечного света в соответствующую энергию, которая используется для освещения шоссе.

    PIC Система сигналов трафика на основе микроконтроллера на основе плотности

    Основная цель этого проекта — разработать систему сигналов трафика на основе плотности. В этом проекте используется микроконтроллер PIC, который должным образом сопряжен с датчиками.Эти датчики автоматически изменяют время перехода, чтобы приспособиться к движению транспортных средств, чтобы избежать ненужного времени ожидания транспортных средств на перекрестке.

    Контроль дорожных сигналов на основе плотности

    Датчики, используемые в этом проекте, являются инфракрасными, а фотодиоды находятся в прямой видимости через нагрузки, чтобы определять плотность сигнала светофора. Плотность транспортных средств измеряется в трех зонах; низкий, средний, высокий в зависимости от того, какое время распределяется соответственно.

    Кроме того, этот проект можно улучшить, синхронизируя все транспортные узлы в городах, запустив между ними сеть. Сеть может быть проводной или беспроводной. Эта синхронизация значительно поможет уменьшить заторы на дорогах.

    PIC Микроконтроллер на базе

    Основная цель этого проекта — разработать напоминание о лекарствах с использованием микроконтроллера PIC, которое напоминает пациенту о необходимости принять лекарство в установленное время. Этот проект лучше всего подходит для пожилых людей.Предлагаемая система напоминает лекарство жужжащим звуком, а также отображает название лекарства, которое нужно принять в это время.

    PIC Напоминание о лекарствах на базе микроконтроллера

    В этом проекте используется матричная клавиатура для хранения соответствующего времени приема конкретного лекарства. На основе RTC, подключенного к микроконтроллеру, запрограммированное время приема лекарства отображается на ЖК-дисплее вместе со звуковым сигналом, чтобы предупредить пациента о приеме соответствующего лекарства. Микроконтроллер, используемый в этом проекте, относится к семейству PIC16F8, а RTC поддерживает точное время, поскольку оно поддерживается кристаллом.

    Кроме того, этот проект может быть расширен за счет интеграции его с технологией GSM, чтобы пациент получал в SMS-сообщении напоминание о лекарстве, которое он должен принять, на свой мобильный телефон. Кроме того, можно включить положение об изменении названия лекарства, связав это устройство с ПК.

    Еще несколько проектов контроллеров PIC

    Вот список еще нескольких проектов, основанных на микроконтроллерах.

    • Обнаружение кражи мощности до подачи на счетчик энергии и оповещение в диспетчерской с помощью GSM
    • Блок управления скоростью, разработанный для двигателя постоянного тока с использованием микроконтроллера PIC
    • Автоматическое управление яркостью уличного освещения с помощью микроконтроллера PIC
    • Объединение в сеть нескольких сигналов уличных перекрестков для лучшего управления дорожным движением
    • Светодиодный уличный фонарь с отслеживанием движения автомобиля и затемнением во время простоя
    • Функции беспроводной мыши с помощью пульта ДУ от телевизора с использованием микроконтроллера PIC
    • Измерение солнечной фотоэлектрической энергии
    • Напоминание о приеме лекарств с использованием микроконтроллера PIC
    • PIC-контролируемый динамический городской трафик
    • Использование пульта дистанционного управления телевизором в качестве беспроводной мыши для компьютера с использованием микроконтроллера PIC
    • Предварительный мониторинг и система сигнализации с использованием микроконтроллера PIC
    • Портативное программируемое напоминание о лекарствах с использованием микроконтроллера PIC
    • Синхронизация скорости нескольких двигателей на входе Использование микроконтроллера PIC
    • Синхронизация сигналов трафика на различных соединениях с использованием микроконтроллера PIC
    • Биллинг счетчика энергии с управлением нагрузкой по GSM с функциями программируемого номера с помощью микроконтроллера PIC
    • Система измерения солнечной энергии
    • Система измерения плотности трафика с использованием микроконтроллера PIC
    • Управление устройствами на основе RFID и аутентификация с использованием микроконтроллера PIC
    • Уличный фонарь, который загорается при обнаружении движения транспортного средства
    • Уведомление об угоне транспортного средства владельцу на его сотовый телефон по GSM с функциями программируемого номера с использованием микроконтроллера PIC

    Таким образом, При разработке любых проектов микроконтроллеров PIC необходимо использовать простые PIC.Это, безусловно, поможет тем студентам и любителям, которые действительно хотят делать великие инновации в области взаимодействия с PIC, но сталкиваются с трудностями в поиске отличного проекта, с которого можно было бы начать. Эти проекты микроконтроллеров pic, описанные здесь, действительно являются одними из самых превосходных электронных проектов, поддерживающих интерфейс микроконтроллера PIC. Мы полагаем, что вы могли лучше понять идеи этих проектов. Кроме того, с любыми вопросами, касающимися этой статьи или проектов электроники за последний год, вы можете обратиться к нам, оставив комментарий в разделе комментариев ниже.

    Pic Микроконтроллеры — обзор

    2.5.2 Конвейерная обработка

    Комбинация набора команд RISC и карты памяти Гарварда, используемой микроконтроллерами PIC, имеет дополнительное преимущество: инструкции могут быть «конвейерными». Каждая инструкция в программной памяти компьютера должна быть сначала извлечена, а затем выполнена. Во многих процессорах эти два шага выполняются один за другим — сначала процессор выбирает, а затем выполняет. Если, однако, программная память имеет свой собственный адрес и шину данных, отдельную от памяти данных (т.е.е. структура Гарварда), то нет причин, по которым ЦП не может быть спроектирован так, чтобы, выполняя одну инструкцию, он уже загружал следующую. Это называется конвейерной обработкой. Конвейерная обработка работает лучше всего, если циклы выборки и выполнения всегда имеют одинаковую продолжительность, как это дает структура RISC. Это довольно простое обновление дизайна дает удвоение скорости выполнения!

    Все микроконтроллеры PIC реализуют конвейерную обработку, что является одной из причин их сравнительно высокой скорости работы.Каждая инструкция выбирается, пока выполняется предыдущая. Конвейерная обработка не выполняется только для инструкций, которые вызывают изменение значения в счетчике программ, например, при переходе или переходе программы. В этом случае полученная инструкция больше не нужна. Затем процесс конвейерной обработки должен начаться снова с последующей потерей цикла команд.

    Схема, представляющая процесс конвейерной обработки в микроконтроллерах среднего уровня, показана на рисунке 2.8. Здесь мы видим, что пока выполняется инструкция 1, инструкция 2 уже выбирается, происходит то же, что и инструкция 2, и так далее.Пример последовательности инструкций показан слева от диаграммы. Однако не обязательно понимать их значение, чтобы понять диаграмму, за исключением того, что команда CALL вызывает программный переход. Следующая за ней инструкция, инструкция 4, выбирается во время выполнения инструкции 3. Однако из-за ветвления программы инструкция 4 больше не нужна, и цикл должен быть потерян, пока выбирается новая инструкция.

    Рисунок 2.8. Конвейерная обработка команд

    Программное обеспечение для запуска схемы с использованием PIC16F877A Микроконтроллер: Adhami, Kashif: 9783659257032: Amazon.com: Книги

    .a-tab-content> .a-box-inner {padding-top: 5px; padding-bottom: 5 пикселей; } #mediaTabs_tabSetContainer .a-tab-content {border-radius: 0px; } #mediaTabsHeadings {white-space: nowrap; переполнение: скрыто; } # mediaTabsHeadings.nonJSTabs {white-space: normal; } #mediaTabsHeadings ul.a-tabs {background: # f9f9f9; } #mediaTabsHeadings .mediaTab_heading .mediaTab_logo {padding-left: 3px; вертикальное выравнивание: базовая линия; } #mediaTabsHeadings #mediaTabs_tabSet {margin-top: 5px; плыть налево; граница справа: 0 пикселей; } #mediaTabsHeadings.mediaTab_heading {маржа слева: -1px; } #mediaTabsHeadings .mediaTab_heading a {color: # 111; граница справа: сплошной 1px #ddd; padding-top: 8 пикселей; padding-bottom: 7 пикселей; } #mediaTabsHeadings .mediaTab_heading.a-active a {color: # c45500; маржа сверху: -5 пикселей; padding-top: 11 пикселей; граница слева: сплошной 1px #ddd; border-top-width: 3px;} #mediaTabsHeadings .tabHidden {display: none! important; } #bookDescription_feature_div {дисплей: встроенный блок; ширина: 100%;} ]]>

    Доставка и продажа на Amazon.com.

    Обзор книг для изучения микроконтроллера PIC

    Многие пытаются продвинуться в области микроконтроллеров, и лучший способ сделать это — понять основы PIC (Programmable Interface Controller) .Этот микроконтроллер известен широким применением в современной электронике. Особенно, когда известно, что такой микроконтроллер объединяет все типы усовершенствованных интерфейсных портов и модулей памяти.

    CircuitsToday перечисляет некоторые книги, которые помогут нашим читателям лучше понять основы PIC, а также некоторые базовые проекты, основанные на PIC.

    PIC Books Review

    Обратите внимание, что цены варьируются в зависимости от места покупки. Даны ссылки на продавцов из США, Великобритании и Индии.Любой, кто желает купить книги за пределами этих трех стран, должен будет заплатить дополнительную стоимость доставки. Вот список:

    # 1 Проектирование встроенных систем с микроконтроллерами PIC: принципы и приложения, Тим Вильмсхерст

    Проектирование встроенных систем с микроконтроллерами PIC — принципы и приложения Тим Уилмсхерст

    Эта книга — очень хороший курс для начинающих, после которого вы можете уверенно переходить на следующий уровень.Книга очень удобна для чтения и описывает концепцию встраиваемой системы с микроконтроллером PIC в качестве основного оружия. В книге подробно используется язык ассемблера и Си, что поможет читателю лучше понять тему. Книга также охватывает основы MeLabs PIC и Basic Pro. Все примеры программирования, представленные в каждой теме, также подробно объяснены, а не просто предоставлены читателю для ознакомления.

    Об авторе:

    Автор Тим Уилмсхерст (Tim Wilmshurst) — разработчик встраиваемых систем и работает в этой области с первых дней появления микроконтроллеров.В основном это его практические знания, которые привели его к написанию такой замечательной книги по этому предмету. В настоящее время он работает руководителем отдела электронных систем в Университете Дерби. В ранние годы, когда он работал в Кембриджском университете, он помогал в разработке и создании оригинальных систем и приложений в нескольких проектах, таких как измерение скорости пули, управление в аэродинамической трубе, моделирование землетрясений и так далее.

    Купить эту книгу:

    Проектирование встроенных систем с микроконтроллерами PIC: Тим Уилмсхерст — США

    Проектирование встроенных систем с микроконтроллерами PIC: Тим Уилмсхерст — Индия

    Проектирование встроенных систем с микроконтроллерами PIC: Тим Уилмсхерст — Великобритания

    # 2 Микроконтроллер PIC: Ваш личный вводный курс от Джона Мортона

    Микроконтроллер
    Pic — Ваш личный вводный курс от Джона Мортона

    Это наиболее широко используемая книга студентами, преподавателями, техническими специалистами и энтузиастами электроники, которые стремятся изучить основы PIC.Автору удалось предложить уникальное краткое и практическое руководство по началу работы с микроконтроллером PIC. Все темы объясняются уникальным образом с помощью простых проектов, которые объясняют теорию на практике.

    Об авторе:

    Книги Джона Мортона известны как руководство для начинающих в области микроконтроллеров. У него также есть хорошо написанная вводная книга по AVR.

    Купить эту книгу:

    PIC Microcontroller: Ваш личный вводный курс, Джон Мортон — США

    PIC Microcontroller: Ваш личный вводный курс, Джон Мортон — Индия

    Микроконтроллер PIC: Ваш личный вводный курс Джона Мортона — Великобритания

    # 3 Создание приборов и контроллеров для микроконтроллеров PIC Харприт Сингх Сандху

    Создание приборов и контроллеров для микроконтроллеров PIC by Harprit Sandhu

    Эта книга знакомит новичка с основами программирования микроконтроллера PIC 16F877A с использованием PIC Basic Pro самым простым способом.Каждая тема покрыта хорошо аннотированными и хорошо объясненными примерами программ. Последние несколько страниц книги содержат 8 практических проектов, которые, как предлагает автор, можно реализовать с помощью недорогого оборудования. Все эти проекты аккуратно запрограммированы автором, чтобы дать очень хорошее понимание предмета.

    Об авторе:

    Все книги Харпит Сингх Сандху известны тем, что содержат обширные и даже самые мельчайшие подробности как по аппаратному обеспечению, так и по программированию, что помогает каждому новичку быстро усвоить знания.У автора также есть книги-бестселлеры по параллельной обработке, практическим занятиям и робототехнике, помимо двух бестселлеров в PIC.

    Купить эту книгу:

    Создание приборов и контроллеров для микроконтроллеров PIC Харприт Сингх Сандху — США

    Создание приборов и контроллеров для микроконтроллеров PIC Харприт Сингх Сандху — Индия

    Создание приборов и контроллеров для микроконтроллеров PIC Харприт Сингх Сандху — Великобритания

    # 4 Запуск малых двигателей с микроконтроллерами PIC, Харприт Сингх Сандху

    Запуск малых двигателей с помощью микроконтроллеров PIC, автор Харприт Сингх Сандху

    Это еще одна очень хорошая книга от Харпит Сандху.PIC Basic Pro используется тщательно, чтобы упростить все проекты для не программистов на языке Си. Автор поделился своими с трудом добытыми практическими знаниями на примерах, где он дает лучшее представление о внутренней работе проектов сервоуправления постоянного тока с дискретным временем. Книга может быть не слишком теоретической, но она сразу переходит к сути и показывает интерфейс PIC с жестко подключенными двигателями и другими приборами.

    Купить эту книгу:

    Запуск малых двигателей с микроконтроллерами PIC Харприт Сингх Сандху — США

    Запуск малых двигателей с микроконтроллерами PIC Харприт Сингх Сандху — Индия

    Запуск малых двигателей с микроконтроллерами PIC Харприт Сингх Сандху — Великобритания

    # 5 Интерфейс микроконтроллеров PIC: встроенный дизайн с помощью интерактивного моделирования Мартина П.Бейтс

    Интерфейс микроконтроллеров PIC — встроенная конструкция путем интерактивного моделирования, Мартин П. Бейтс

    Эта книга идеальна для немного более опытных читателей, у которых есть довольно слабые познания в основах программирования и электроники. Автор использовал свой 20-летний опыт преподавания, чтобы обеспечить отличный баланс теории и практики с многочисленными рабочими примерами. Пожалуйста, проверьте второе издание, где также добавлены дополнительные версии программного обеспечения, такие как MPLAB v8 и VSM v8, и приложения, такие как беспроводная связь и интеллектуальные датчики.

    Об авторе:

    Мартин П. Бейтс, автор этой книги, имеет 2 бестселлера PIC. Его книги известны как лучшие вводные уроки по PIC.

    Купить эту книгу:

    Интерфейсные микроконтроллеры PIC: встроенная конструкция посредством интерактивного моделирования Мартина П. Бейтса — США

    Интерфейс микроконтроллеров PIC: встроенная конструкция с помощью интерактивного моделирования Мартина П. Бейтса — Индия

    Интерфейс микроконтроллеров PIC: встроенный дизайн с помощью интерактивного моделирования Мартин П.Бейтс — Великобритания

    Освойте микроконтроллер PIC с помощью этого обучающего пакета за 50 долларов

    На самом деле мы их никогда не видим, но многие наши повседневные действия питаются от электрических цепей. Они делают все: от включения света и таймеров до управления производственными линиями завода. Если учесть это, идея создания собственных электронных схем, таких как микроконтроллеры с программируемыми интерфейсными контроллерами (PIC), становится очень привлекательной.Просто подумайте о крутых творениях, которые вы могли бы воплотить в жизнь, например о собственном датчике движения или безопасном контроллере гаражных ворот. В наши дни вы даже можете распечатать схему на своей коже!

    Получите отличное предложение от пакета PIC Microcontroller Engineering Projects Bundle и включите свой набор навыков. Среди 13 включенных курсов есть класс с рейтингом 4,6 звезды с соответствующими проектами из реальной жизни, которые вы создадите сами. Посмотрите на микроконтроллер PIC в действии и научитесь создавать свои собственные, в том числе о том, как обеспечить правильное функционирование ваших схем.Узнайте об инструментах, необходимых для достижения успеха, и получите прочную основу для создания отличного проекта микроконтроллера.

    У вас будет возможность пройти курс 4,5 звезды по моделированию микроконтроллера PIC в реальном времени с использованием различных плат и схем. Сэкономьте время и деньги, протестировав свои коды без риска сжечь доску. Другой 4,2-звездочный тренинг посвящен механике детекторов движения, с пониманием того, как связать их с микроконтроллером для программирования системы, чтобы она стала пожарной сигнализацией.

    Этот комплексный пакет курсов включает уроки, сравнивающие микроконтроллер PIC PIC164550, Arduino Uno R3 и Raspberry Pi 2 Model B, предоставляя вам всю необходимую информацию, чтобы различать их впечатляющие возможности. Вы даже узнаете, как создать свою собственную обучающую плату с USB-подключением для микроконтроллера PIC, аналогичную плате Arduino.

    Не упустите свой шанс освоить микроконтроллер PIC менее чем за 50 долларов. Прямо сейчас вы можете получить комплект PIC Microcontroller Engineering Projects Bundle за 49 долларов.99, что на 96% ниже первоначальной рекомендованной розничной цены.

    Возможны изменения цен.

    Цепи микроконтроллера

    — TINA

    Перейти на главную страницу TINA и общую информацию

    TINA поддерживает множество ( PIC, AVR, Arduino , 8051, HCS, STM, ARM, TI-Tiva, TI-Sitara, Infineon- XMC ) микроконтроллеры; новые MCU постоянно добавляются. Вы можете видеть, изменять и отлаживать программу, работающую в процессоре, и, конечно же, вы можете создавать свой собственный код.

    Есть два способа предоставить программу для микроконтроллеров в TINA. Вы можете использовать двоичный код и файл отладки, созданные стандартным компилятором (например, MPLAB для PIC), или вы можете просто загрузить свой ассемблерный код для запуска и отладки в TINA, используя встроенный ассемблер-отладчик.

    Создание простой схемы счетчика с использованием микроконтроллера PIC с программированием на языке ассемблера

    Создание простой схемы счетчика с использованием микроконтроллера PIC с программированием на языке C

    Базовая отладка микроконтроллера с использованием TINA

    В TINA микроконтроллеры могут моделироваться не только отдельно, но и вместе с аналоговыми, цифровыми, HDL или другими моделями.

    Запуск и редактирование кода MCU

    Загрузите схему PIC Flasher.TSC из папки ExamplesMicrocontrollersPic.

    Следующая схема с использованием микроконтроллера PIC 16F73 появится вместе с микроконтроллером PIC 16F73:

    Дважды щелкните MCU, чтобы увидеть в нем код ASM. (см. подробности в руководстве по быстрому запуску).

    TINA имеет отличную функцию, с помощью которой вы можете редактировать и изменять исходный код прямо в TINA.

    Давайте сделаем следующее изменение в коде:

    Изменим инструкцию (выбранную выше) в строке 25 (вы можете увидеть номер строки в правом нижнем углу окна редактора кода):

    с addlw 01H

    на addlw 02H

    Сохраните измененный код в TINA, нажав значок

    , и закройте открытые окна MCU.

    Если вы сейчас нажмете кнопку

    , шаг будет равен 2!

    Обратите внимание, что измененный код будет автоматически сохранен в файле TINA .TSC.

    Использование отладчика

    Давайте посмотрим на другое приложение с большей интерактивностью.

    Загрузите пример TINA PIC16F84interrupt_rb0.TSC из папки ExamplesMicrocontrollersPic.

    Теперь давайте рассмотрим операцию более подробно с помощью интерактивного отладчика ASM TINA.

    Чтобы активировать отладчик, выберите «Параметр» в меню «Анализ».Затем установите флажок «Включить отладчик кода MCU», как показано ниже в диалоговом окне «Параметры анализа».

    Нажмите кнопку OK, появится отладчик MCU:

    Теперь нажмите переключатель SW-HL1 и измените его на High. (Вы должны щелкнуть, когда курсор изменится на стрелку, направленную вверх Î). Вернитесь в отладчик и дважды нажмите кнопку Trace Into. Программа распознает прерывание и перейдет к метке
     
    NT_SERV :.
    INT_SERV: СЧЕТЧИК INCF, F СЧЕТЧИК MOVF, 0 MOVWF ПОРТ

    увеличьте СЧЕТЧИК и скопируйте в ПОРТ A, и на выходе будет 1.После этого программа вернется в «бесконечный цикл» на PT1.

    Редактирование кода в отладчике

    Теперь давайте внесем небольшое изменение в программу, чтобы продемонстрировать использование отладчика. Дублируйте оператор INCF COUNTER, F с помощью функции «Копировать и вставить» следующим образом:

     INT_SERV:
            СЧЕТЧИК INCF, F
            СЧЕТЧИК INCF, F
            СЧЕТЧИК MOVF, 0
            MOVWF PORTA 

    Теперь, когда вы нажмете

    , программа спросит:

    Нажмите Да и снова нажмите кнопку

    .Теперь при каждом изменении переключателя с низкого на высокое значение приращения будет равно 2.

    Вы также можете проверить схему в непрерывном режиме работы отладчика, нажав кнопку

    .

    Даже несмотря на то, что отладчик будет работать быстро, вы все равно можете увидеть «бесконечный цикл», а затем перейти к серверной части прерывания (INT_SERV 🙂 при изменении переключателя.

    Создание точки останова

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

    Чтобы остановиться на определенной строке, вы можете пометить целевой оператор, установив «точку останова».

    Запустите программу в непрерывном режиме отладчика с помощью команды

    Run, и теперь программа остановится на нужной строке перед выполнением отмеченной команды.

    Чтобы продемонстрировать это, щелкните оператор приращения на нашем сервере прерываний после метки INT_SERV: и нажмите кнопку прерывания

    Toggle.

    Теперь нажмите кнопку

    Run. Программа начинает работать в «бесконечном цикле».

    Даже если вы установили точку останова, выполнение кода не остановится, потому что он никогда не достигнет точки останова. Однако, когда вы меняете переключатель с низкого на высокий, программа остановится на отмеченном операторе:

     INT_SERV:
                 СЧЕТЧИК INCF, F 

    Теперь вы можете продолжить либо шаг за шагом

    , либо в рабочем режиме.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *