Главная » Микроконтроллеры
Призовой фонд
на июнь 2018 г.
1. Регулируемый паяльник 60 Вт
Паяльник
2. Тестер компонентов LCR-T4
Паяльник
3. 150 руб.
От пользователей

Набор для разработки на основе микроконтроллера PIC18F4520

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

mc189-1.jpgДанный набор плат разрабатывался как пособие для желающих попробовать себя в разработке программ и устройств на основе микроконтроллера PIC18F4520 фирмы Microchip. Стоит упомянуть, что основной идеей стало создание простого набора плат, собранного из доступного в продаже набора микросхем, легкого в повторении и дальнейшем усовершенствовании. Мне, как студенту, эта плата помогла в изучении особенностей программирования микроконтроллеров семейства PIC18 и, надеюсь, послужит мне помощником в дипломном проекте.

Проект содержит 5 основных модулей: 

  •  Материнская плата- центральная плата с микроконтроллером, узлом прерываний и разъемами.
  •  Плата SPI-интерфейса- плата для изучения особенности передачи данных по интерфейсу SPI.
  •  Плата I²C-интерфейса- плата для изучения особенности передачи данных по интерфейсу I²C.
  •  Плата связи с ПК- плата для использования возможностей USART Модуля MCU и связи с компьютером.
  •  LCD-Модуль- стандартный модуль знакосинтезирующего ЖКИ на основе HD44780 или подобном.

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

 Материнская плата 

Schematics.png   

Материнская плата содержит 33 порта ввода-вывода . Порт В(выводы 33-40) могут быть программно подключены через подтягивающие сопротивления на + питания, таким образом формируется их высокое состояние в случае подключения в качестве входов. Выводы 6-7 подключены к внешнему кварцу 20МГц. Значение конденсаторов С5-С6 зависит от конкретного кварца, рекомендуемое значение лежит в пределах 15-25пФ. На практике я установил конденсаторы с разным значением емкости для гарантирования старта осциллятора(Первое время упорно не хотел запускаться). Однозначно рекомендуется ознакомиться с документацией на ваш конкретный кварц. В крайнем случае можно запуститься с внутренней тактовой цепочки микроконтроллера. На порт Е пин 2, для вывода звука, есть возможность подключить "пищалку". Отдельно реализована возможность использования 3 внешних прерываний int1-int3. На плате установлено 16 стандартных светодиодов диаметром 5 мм. для индикации состояний портов и создания простейших световых эффектов. Для изучения основ управления по ИК установлен ИК-приемник TSOP 17-36, хотя подойдут и другие. Отдельно стоит сказать про обвязку R1, D1-D2, C4 , R5, R8, R10. Данное решение необходимо для внутрисхемного программирования через разъем ICSP. Питание осуществляется от стабилизированного источника питания 12В. На практике я взял компьютерный блок питания АТ.

Плата SPI- интерфейса

Микроконтроллер содержит модуль синхронного последовательного интерфейса MCCP и может работать в двух программно предустановленных режимах SPI-/I²C для обмена данными с периферией в полудуплексном режиме.

Schematics2.png

Проект содержит возможность подключения платы интерфейса SPI. В этом режиме необходимо программно настроить соответствующим образом контакты RC3-RC5 микроконтроллера, настроить модуль для работы в режиме SPI и соединить центральную плату с платой модуля SPI через разъем SPI-Input. Кроме того, необходим еще один вывод микроконтроллера, настроенный на выход для формирования сигнала CS(Chip Select), необходимого микросхемам периферии. Модуль SPI содержит две микросхемы расширения по 16 бит каждая, работающих как на выход, так и на вход. Обе микросхемы включены фактично параллельно, поэтому, выбор микросхемы , для которой предназначены данные, производится адресно(А0-А2). Особенности адресации данных микросхем детально описаны в даташите. Микросхема IC2 может быть напрямую подключена к преобразователю бинарного кода в децимальный с дальнейшим выводом на четырехзначный дисплей, сформированный из двух двузначных светодиодных индикаторов с общим катодом.

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

Плата I²C-интерфейса

Schematics4.png

В случае необходимости можно настроить модуль MCCP в режиме I²C и подключить соответствующий модуль через разъем I²C-Input к соответствующим разъемам на центральной плате. Для этого необходимы контакты RC3, RC4 программно настроенные для передачи такта и приема-передачи данных от периферийных микросхем. Модульная плата I²C содержит 2 8-битных драйвера-преобразователя последовательного интерфейса в параллельный, один из которых подключен к 8 светодиодам размера 5мм через токоограничительные сопротивления. Возможно подключение к микросхемам памяти ЕЕПРОМ, часам реального времени, сенсору температуры и АЦП. Выбор соответствующего модуля производится адресно. Особенности адресации каждой из микросхем детально описаны в даташитах. Частично, адресация реализована аппаратно через подключение выводов микросхем (А0-А3). Аппаратная реализация адресов описана на рис.4.

рис.4

Плата связи с ПК

Schematics3.png

Данный модуль может быть использован для обмена данными через модуль USART микроконтроллера. Для этого необходимо настроить микроконтроллер и соответствующие выводы RC6-RC7 соединить с разъемом JP16. Питание микросхем производится от центральной платы а не порта USB компьютера. Светодиоды 19-20 сигнализируют о передаче , приеме данных. Микросхема FT232RL крепится поверхностным монтажом на плату. Драйвера для Win7x64 установились без проблем. Для ХР проблем быть тоже не должно. Переключатели 17-18 позволяют выбрать между микросхемами COM и USB порта.

Отдельно реализована клавиатура размером 4х4 кнопки для реализации всевозможных циферблатов.(По сути, оставалось место на плате- почему не использовать?!:))

 LCD-Модуль

DSCF3082.jpg

Для реализации возможности вывода на экран символов был использован индикатор PVC200403P фирмы PICVUE. Это индикатор совместимый со стандартом HD44780 с подсветкой желтого цвета размером 20 знаков- 4 строки, хотя, можно использовать и другой. Данный дисплей содержит 8 битную шину данных для приема-передачи, 3 битную шину управления для формирования сигналов enable, register-select, read/write. Дополнительно необходимо выделить питание платы и питание подсветки. Подсветка и сам дисплей питаются от источника 5В. Подсветку нельзя подключать напрямую к портам микроконтроллера. Ток потребления подсветки превышает допустимый ток нагрузки микроконтроллера. На практике я реализовал подключение через 4 битный режим передачи данных и сэкономил на входе read/write, при этом потеряв возможность опроса "флага занятости" дисплея.

Программирование по ICSP

ICSP Модуль микроконтроллера позволяет программировать микросхему внутрисхемно, без мучений с панельками и пайкой. Для этого на плате был выведен соответствующий разъем. На практике прошивку микроконтроллера я проводил через программатор GQ-4X со специально изготовленным переходником(Рис.7).

ICSP_Programmierung.jpg

Печатная плата

В целях экономии все пять плат выполнены на заготовке размером А4 из двустороннего стеклотекстолита. Дорожки разведены в Eagle с настройками и правилами для моей фрезеровочной машины(Фрезеровало сутки!!!). Микросхемы установлены в панельки для быстрой замены(надеюсь вам не понадобится), кроме микросхем поверхностного монтажа. Микросхема стабилизатора 7805 припаяна "за хвост" через термопроводящую прокладку к плате(Пока этого хватало для охлаждения).

плата

Плата после фрезеровки

DSCF3088(1).jpg

Post scriptum

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

Контакты

Ваши пожелания и/или предложения отправляйте по адресу maiierok@t-online.de. Также могу помочь исходниками к некоторым примерам(смотри видео-примеры) использования вышеизложенной платы.

Видео-примеры применения

Ссылки на тех-документацию

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
Материнская плата
U1 МК PIC 8-бит
PIC18F4520
1 Поиск в магазинеВ блокнот
IC1 Линейный регулятор
LM7805
1 7805TVПоиск в магазинеВ блокнот
IR1 ИК-сенсорTSOP1736TB11 Поиск в магазинеВ блокнот
D1, D2 Выпрямительный диод
1N4148
2 Поиск в магазинеВ блокнот
LED1-LED16 Светодиод16 ЗелёныеПоиск в магазинеВ блокнот
C1 Электролитический конденсатор?1 Поиск в магазинеВ блокнот
C2, C8 Электролитический конденсатор470 мкФ2 Поиск в магазинеВ блокнот
C3, C7 Конденсатор0.1 мкФ2 Поиск в магазинеВ блокнот
C4 Электролитический конденсатор10 мкФ1 Поиск в магазинеВ блокнот
C5, C6 Конденсатор15-25 пФ2 Поиск в магазинеВ блокнот
C9 Электролитический конденсатор?1 Поиск в магазинеВ блокнот
C10 Конденсатор?1 Поиск в магазинеВ блокнот
R1, R5, R8, R10 Резистор
10 кОм
4 Поиск в магазинеВ блокнот
R2-R4, R6, R7, R9, R11-R19, R21 Резистор
330 Ом
16 Поиск в магазинеВ блокнот
R20, R22, R23 Резистор
270 Ом
3 Поиск в магазинеВ блокнот
R69-R71 Резистор
4.7 кОм
3 Поиск в магазинеВ блокнот
Q1 Кварц20 МГц1 Поиск в магазинеВ блокнот
SG1 ПьезоизлучательF/CM12P1 Поиск в магазинеВ блокнот
S1 Переключатель2 контактные группы1 Выключатель питанияПоиск в магазинеВ блокнот
S2, INT1-INT3 Кнопказамыкающая4 Поиск в магазинеВ блокнот
JP1, JP3 РазъёмPLS-32 Поиск в магазинеВ блокнот
JP2, JP19 РазъёмPLS-22 Поиск в магазинеВ блокнот
JP4 РазъёмPLS-61 Поиск в магазинеВ блокнот
JP5-JP8 РазъёмPLS-84 Поиск в магазинеВ блокнот
JP9, JP11, JP12 РазъёмPLS-13 Поиск в магазинеВ блокнот
Плата SPI-интерфейса
IC2, IC3 МикросхемаMCP23S172 Поиск в магазинеВ блокнот
IC4-IC7 Микросхема74LS48N4 Поиск в магазинеВ блокнот
IC8, IC9 Драйвер электродвигателей
L293
2 L293DПоиск в магазинеВ блокнот
R24-R51 Резистор
300 Ом
28 Поиск в магазинеВ блокнот
R74 Резистор?1 Поиск в магазинеВ блокнот
LED17DIG1, LED17DIG2, LED18DIG1, LED18DIG2 7-сегментный LED-индикаторDC56-11GWA4 Общий катодПоиск в магазинеВ блокнот
JP13-JP15 РазъёмPLD-163 Поиск в магазинеВ блокнот
KEYBOARD_INPUT, SPI_INPUT РазъёмPLS-82 Поиск в магазинеВ блокнот
MOTOR-1, MOTOR2 РазъёмPLS-61 Поиск в магазинеВ блокнот
Плата I²C-интерфейса
IC12, IC13 ИС I2C интерфейса
PCF8574
2 SERIAL TO PARALLELПоиск в магазинеВ блокнот
IC14 Часы реального времени (RTC)
PCF8583P
1 clock & calendarПоиск в магазинеВ блокнот
EEPROMIC$1 МикросхемаPCF8582C-2P/031 I2C EEPROMПоиск в магазинеВ блокнот
Temperature Sensor Датчик температуры
LM75A
1 LM75AD - TEMPERATURE SENSORПоиск в магазинеВ блокнот
ADU_DAUG$1 МикросхемаPCF8591P1 ANALOD TO DIGITALПоиск в магазинеВ блокнот
LED21-28 Светодиод8 Поиск в магазинеВ блокнот
R72, R73 Резистор
4.7 кОм
2 Поиск в магазинеВ блокнот
R57-R64 Резистор
330 Ом
8 Поиск в магазинеВ блокнот
R65-R68 Переменный резистор?4 Поиск в магазинеВ блокнот
Q2 Кварц32768 Гц1 Поиск в магазинеВ блокнот
INT4, INT5, INT?, PTC, OS, OSC, AOUT РазъёмPLS-17 Поиск в магазинеВ блокнот
KEYBOARD РазъёмPLS-81 Поиск в магазинеВ блокнот
I2C-INPUT РазъёмPLS-41 Поиск в магазинеВ блокнот
Плата связи с ПК
IC10 МикросхемаFT232RL1 USB UARTПоиск в магазинеВ блокнот
IC11G$1 ИС RS-232 интерфейса
MAX232
1 Поиск в магазинеВ блокнот
LED19, LED20 Светодиод2 Поиск в магазинеВ блокнот
C11 Конденсатор?1 Поиск в магазинеВ блокнот
C12-C15 Конденсатор100 нФ4 Поиск в магазинеВ блокнот
R52, R53 Резистор
27 Ом
2 Поиск в магазинеВ блокнот
R54 Резистор?1 Поиск в магазинеВ блокнот
R55, R56 Резистор
330 Ом
2 Поиск в магазинеВ блокнот
X1 РазъёмMINI-USB-32005-3011 Mini-USB на платуПоиск в магазинеВ блокнот
X2 РазъёмDRB-9F1 RS-232 на платуПоиск в магазинеВ блокнот
JP16 РазъёмPLS-41 UART-интерфейсПоиск в магазинеВ блокнот
JP17, JP18 РазъёмPLS-32 Поиск в магазинеВ блокнот
TASTATUR1 РазъёмPLS-81 К клавиатуреПоиск в магазинеВ блокнот
Модуль клавиатуры
Клавиатураматрица 4x41 Поиск в магазинеВ блокнот
РазъёмPLS-81 Поиск в магазинеВ блокнот
LCD-Модуль
LCD-дисплейPVC200403P1 HD44780, 20x4Поиск в магазинеВ блокнот
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 Участие в конкурсе 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (0) | Я собрал (0) | Подписаться

Статью еще никто не комментировал. Вы можете стать первым.
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Программатор Pickit3
Программатор Pickit3
Ручной фен 450 Вт с регулировкой температуры Модуль измерения тока на ACS712 (30А)
вверх