Универсальный модуль контроллера для Pinboard II

Попытка спроектировать модуль подходящий под любой контроллер, который можно установить в панельку ZIF-40.



Идея не моя, подсмотрено в форуме.


Размер стандартной платы мезонинного модуля — 54 x 46 мм. Размер панельки ZIF-40 — 66 х 23 мм. Возможны два варианта:
  • Модуль стандартного размера, рис. 1. ZIF-40 выступает с обоих концов платы.
  • Модуль размера 66 х 46 мм, рис. 2. Образовались четыре ярко выраженные прощадки в углах модуля (1, 2, 3, 4). Панелька не симметрична, площадки 1 и 4 высотой ~ 6 мм, 2 и 3 ~ 9 мм.



Модуль представляет собой плату с панелькой ZIF-40, все ноги которой разведены на гребенки с обоих сторон панельки. Расположены они один к одному.



Это позволит подключать к выводам микроконтроллера любую периферию короткими проводными перемычками.
Во втором варианте дополнительные площадки по краям модуля можно использовать для чего нибудь полезного.
Например:

Регулятор напряжения (1) и дополнительные пины питания (4)



На модуле установлен миниатюрный многооборотный подстроечный резистор (R3) типа 3296W, которым можно задавать напряжение на контроллере в пределах 1,8..6,5В. Сам стабилизатор расположен на материнской плате.
Для питания контроллера предусмотрены выделенные пины (J1.1 и J1.3), кроме того имеются по три дополнительных пина VCC (J2) и GND (J3). Пины VCC отделены от питания ограничительными резисторами.

Кварцевый генератор (2)



На модуле предусмотрен кварцевый генератор на специализированной микросхеме 74LVC1GX04. Микросхема (не генератор) работоспособна при напряжении 0..6,5В. По даташиту для генератора гарантируются частоты 15 кГц — 28 МГц при выходном токе до 24 мА. Этот генератор будет полезен если такой тип тактирования предполагается контроллером или как fuse-доктор для AVR. Или еще для чего нибудь.
Если же вы попытаетесь смакетировать уже готовую прошивку, вам скорее всего понадобится просто кварц на выводах контроллера. У разных контроллеров они расположены в разных местах, но всегда расположены на соседних ножках. Поэтому полезно иметь и универсальный модуль кварцевого резонатора. Примерно такой:



Модуль выполнен на отдельной маленькой платке 22 x 11 мм.



Схема сброса (3)



У разных контроллеров полярность сброса может быть различна, кроме того иногда этот вывод может использоваться контроллером для обмена отладочной информацией. В целях унификации микросхем на модуле, схема выполнена на той же 74LVC1GX04 и диодно-резисторном элементе ИЛИ (CVD1, R2). Если не нужен RESET, кнопку можно использовать как простую тактовую. А можно подключить вход DEBUG к выходу генератора и получить противофазные сигналы.

Подтяжка I2C шины



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

Печатная плата, верх, дорожки и надписи:



Печатная плата, низ, дорожки и надписи:



Приложены:
Zif.zip — печатка в lay6;

Update 13.12.2014

Про маленькую плату кварцевого генератора.
Два нижних отверстия предназначены для фиксирования разьема PBS-2R припаянной проволочной скобкой. Такой вид крепежа может мешать доступу к соседним выводам. Поэтому от такого крепления лучше отказаться.



Крепить разьем можно термоусадкой.
  • +2
  • 10 декабря 2014, 19:24
  • anakost
  • 1
Файлы в топике: ZIF.zip

Комментарии (12)

RSS свернуть / развернуть
Ну вы и разошлись)
По моему скромному мнению, делать подобные универсальные модули — это лишнее. Отладочная плата нужна для чего? Чтобы отлаживать. Алгоритмы. А зачем для отладки алгоритмов делать «железную» основу под каждый проц? У меня например есть отладка на 16-й меге. При этом я писал программы как для AVR, так и для STM32 и даже один раз, надеюсь последний, на PIC. Отладив алгоритм на меге, не составляет никакого труда перенести его на целевой контроллер. Ни разу не было сложностей. С подключением проца тоже никаких проблем. Более того, в последнее время отладку использую только для исследования какой либо детальки, а проц тут — последнее дело, меги хватает. Вот и получается, что универсальный модуль сильно и не нужен. ИМХО, естесственно.
0
Это может быть (а может и не быть) верно для сишника, для эмберерства. Если же приходиться поддерживать работоспособность «чужого» оборудования, на которого или документации фиговый листок, или она закрыта, тут без ассемблера не обойтись. И как тут может помочь листинг дизассемблера STM32 на модуле для AVR? Правильно, никак.
А так все правильно…
+2
Да, мне не приходилось модифицировать чужие программы. Нужды как то не было, поэтому сложно представить подобную ситуацию. Можете конкретный пример привести? А то все «чужое» оборудование, которое мне приходилось использовать, прекрасно работало и без вмешательства в его кишки.
-1
Конкретный пример, у нас на заводе отопление обеспечивается СФА. Был поставлен в далеком 1999 году фирмой Helemann. Управляет им контроллер на AT89C51RD2. Все датчики расположены на самом СФА. Оператор в зависимости от температуры наружного воздуха задает коэффициент контроллеру. При этом вход для этого термодатчика на самом контроллере есть, и на нем же можно посмотреть наружнюю температуру. Но привязать эту температуру к коэффициенту он не умеет. Прошивка была не залочена, скачана. Реверс-инжениринг, добавлена табличная перекодировка температура -> коэффициент, благо свободной памяти было ~ 20К. Как то так…
+2
Да, это сильно, и для такого отладка необходима, согласен. На самом оборудовании не потестить.
0
Отладочная плата нужна для чего? Чтобы отлаживать. Алгоритмы. А зачем для отладки алгоритмов делать «железную» основу под каждый проц? У меня например есть отладка на 16-й меге. При этом я писал программы как для AVR, так и для STM32 и даже один раз, надеюсь последний, на PIC. Отладив алгоритм на меге, не составляет никакого труда перенести его на целевой контроллер.
Что-то я не понял видимо, т.е. отладив АЛГОРИТМ на меге — Вы перенесли его на stm32, а макетка под stm32 не нужна?
-1
А что в этом такого? На отладке я спокойно делаю графический интерфейс (дисплей на ili9341), который довольно таки непростой и делается не за один день. В это время все части проекта: платы и корпус со всеми крутилками и кнопками на морде, лежат в шкафу, а не валяются на столе. Ну люблю я порядок. А для переноса на STM достаточно изменить 3 функции, они у меня есть и проверены.
Динамическую индикацию на четыре 3-разрядных индикатора недавно делал, так вобще в протеусе отлаживал, тоже на меге16. На STM32F100 перенеслась на ура.
Я же не говорю ВСЮ логику на отладке прогонять, для этого существует прототипирование. Вот там уже программа и проверяется в боевых условиях. Но какие то отдельные ее части можно делать и на отладке с другим МК.
0
Здесь уже была макетка на ZIF-панельке. Там уже писали, что не хватает стабилизатора LM317 c дискретным потенциометром на резисторах c переключателем для получения выходного напряжения 1.8/2.5/3.3/5V.
-1
Макеткой является (как говорили в армии, являются только черти) сама Pinboard II. Этот модуль мезонинный, одевается на контакты «материнки». Стабилизатор LM317 уже собран на ней, на самом модуле только регулировочный потенциометр.
+1
Ну что, остались мелочи — универсальный программатор написать под имеющиеся на пинборде ресурсы — профит!
0
Интересно, а кто еще в дипе остался? Мне на ум приходят только С51 семейство старое :)
0
C51 пока поддерживают в этом формате, и в основном китайцы. Но в ответ на «Интересно, а кто еще в дипе остался» скажи мне DI, а как быть с твоими модулями под DIP корпуса?
Сейчас уже делают демоплаты в формфакторе DIP-40. Смешно получится, демоплату в универсальный мобуль, модуль в Pinboatd II…
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.