Модуль контроллера PIC на Pinboard 2

Попалась мне тут вот такая ссылка с описанием программатора пиков на FTDI и я подумал: а не запилить ли модуль PIC-контроллера для Pinboard2?
В частности, у меня валяется без дела PIC18F4550 с аппаратным USB на борту, можно на нем отработать технологию.
Дело, правда немного осложняется полным незнанием Eagle, ну да это поправимо, разберусь.

Будет ли это интересно сообществу?

UPD:Сегодня проверил программатор на практике, «тупо скопировав» железную часть и установив программную часть, потому что в форуме появились вопросы. Заменил только 74LS14 на 74HC14. Все заработало.
Подключил FTDI к 74HC14:
PICPgm
74HC14 подключил к своей первой отладочной плате на PIC, контроллер PIC16F877A:
PICPgm
Установил программу PicPgm, включил питание, запустил, программатор и пик определяется:
PICPgm
Прошивка тоже прошла успешно, только картинка по дороге потерялась…
Запись идет довольно быстро, а вот верификация ужасно медленно… Что-то об этом на страничке автора было указано, что он использует только для заливки бутлоадера, но, чтобы прошить, например программатор, можно один раз и потерпеть, думаю.
Пока на этом все.

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

RSS свернуть / развернуть
Тут, между-прочим, запиливается (долго и упорно) модуль ПИК с езернет на борту. Да, прямо на модуле стоит езернет разъем :)
p.twimg.com/Aw4sN6cCAAE_GIU.jpg
0
Ого, круто! А этот Пик с USB? У меня тут есть одна идейка… Даже несколько идеек…
0
А этого я не знаю… наверное да. Надо у ди спросить
0
Судя по описанию программатора, он (автор) использует его в основном только для заливки бутлоадера. Не проще ли поставлять модуль с уже залитым бутом?..
0
Ну бут можно случайно снести, например :)
0
Любопытно. Давно и безуспешно искал что то подобное для PIC. Надо будет попробовать запилить.

Модули для PIC у нас в процессе уже. Пока на PIC18F67J60 скоро будет и просто на PIC18 общего назначения. Будут с бутлоадерами, но наличие хотя бы медленного программатора на FTDI весьма радует.
+1
При всем уважении к Microchip и ее контроллерам, с модулем Ethernet у них похоже какой-то косяк. Потребление 130 ма, контроллер постоянно горячий. В процессе разработки сдох один чип и буквально вчера стояло на прогоне готовое устройство и потухло. Жду другой разъем с трансформатором, если не поможет буду использовать внешний PHY.
0
Потребление 130 ма, контроллер постоянно горячий.
Это похоже для PHY норма. По крайней мере ENC28J60 жрет до 250мА. Все же, нужно раскачивать 50-омную линию на 100 метров.
0
Так горят же и на ENC28J60 тоже жалуются.
0
Ну кривые, видимо. Но относительно высокое потребление эзернету все же свойственно, вроде бы.
0
прям сгорел и на работает теперь? что-то не так скорее всего сделано. радиатор прицепите если греется сильно
а греться ему положено — этож токовая петля по сути. а на транзисторах сэкономили вот и греются.
можете с резисторами поэкспериментировать чтобы токи уменьшить, но там может дальность связи и надежность передачи упасть
0
Сам контроллер работает, а сети нет. Резисторы 1% кроме 2.26к, его пробовал подбирать, не помогло.
0
я не про точность а про их номинал. увеличить попробовать. 49 ом которые ом 5-10 добавить — греться будет меньше, только за стабильностью передачи следить надо
0
Все PHY жручие как падлы. Возьми любой роутер. Казалось бы, чего там? Весьма хилый процик, а хавает эта шняга под 1А только в путь. Греется как утюг.
0
Возможно, это сам проц греется. Вон WM8505 — ARM926@300MHz, PHY внешний, а греется как утюг. Батарейку 7.4В 1.8Ач выжирает за пару часов.
Но жрут PHY хорошо, это да.
0
в продаже отдельно будет? ато чтот не видно в магазине модулдей для авр или стм отдельно
0
Будет. Отдельные модули под avr (dip40, dip28, dip8/20), stm32, stm8 тоже будут. В новом заказе я таки перепаковал шаблоны и теперь у меня модули делаются отдельно от базовой платы.
0
Выложи, пожалуйста, где-нибудь _pinhead.lbr для Eagle, а то заморочка с перемычками какая-то…
0
Хоть мне и преимущественно параллельны модули для пинборды, но за ссылку огромное спасибо!!!
0
Да не за что, в общем, обычным поиском пользовался…
0
Проверил на железе, работает.
Обновил статью.
0
Имхо, пик без отладчика бесполезен в 50% случаев. Ибо некоторые ошибки хрен отловишь, особенно с дурацкой банковой системой, тем паче в asm под XINST.
0
  • avatar
  • hexus
  • 29 августа 2012, 23:50
Хоть отладчик у меня и есть, но я им практически никогда не пользуюсь. Гораздо удобнее отлаживать в Proteus, а уже потом заливать в PIC. Иногда, конечно, приходится и отладчиком попользоваться, но очень, очень редко — только тогда, когда отлаженная программа на железе ведет себя не адекватно. Как правило, это бывает очень редко и только для специфических режимов работы. Модели PIC в Proteus реализованы довольно точно. Так что, по моему мнению, ни о каких 50% говорить не стоит. Отсилы процентов 5 и меньше.
0
Это все хорошо, пока асмовский листинг с комментами не начинает превышать 100К. Ну и на реальном железе, с разнообразной периферией на борту — тоже отдельное удовольствие.
0
Я никогда отладчиками не пользуюсь. Да и симуляторами тоже. Мне достаточно USART для вывода отладочной информации и управления ходом выполнения программы. Привык, давно уже…

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

Через тот же USART — и прошивку меняю, посредством залитого программатором бутлоадера.
0
А вот про USART или же USB согласен! Если не получается отладить на симуляторе, то они очень даже помогают, да и работа идет быстрей, чем с отладчиком. Ну, а бутлоадер, это обязательно — значительно ускоряет загрузку и отладку.
0
Ну работа-то параллельно должна идти :D В конце-концов, не выкидывать ведь в уарт текущие значения FSR0H/FSR0L и тому подобное :D
Бутлоадер нужен вообще в специализированных случаях — чем не устраивает китайский Pickit2 в $20 ценой? С нормальной заливкой программы и отладкой прямо из mplab?
0
Насчет параллелизма согласен.
не выкидывать ведь в уарт текущие значения FSR0H/FSR0L и тому подобное :D
А почему нет? Да и нужны эти значения уж больно редко.
Бутлоадер нужен вообще в специализированных случаях — чем не устраивает китайский Pickit2 в $20 ценой?
Да он практически всегда нужен. Отказываться от него стоит только, если памяти не хватает. А про PICkit я не говорил, что не устраивает, он у меня есть (PICkit 3), я не согласился вот с этой фразой «пик без отладчика бесполезен в 50% случаев».
0
про банки уже и не вспоминаю.
Аналогично! Пишу на C, про банки даже не задумываюсь, пусть об этом думает компилятор. Хотя нет, немного лукавлю. Иногда приходится манипулировать lkr файлом, когда возникает необходимость выделить память размером больше 256 байт. Но это, пожалуй, единственный случай, когда приходится задумываться о наличии банков памяти как таковых.
0
Да, ограничения только на размеры массивов. Но я их стараюсь делать предельно короткими. В крайнем случае, если не влазит в банк — разбиваю массив на части, делая двумерным. Разные части могут находиться в разных банках.

Бутлоадер нужен вообще в специализированных случаях — чем не устраивает китайский Pickit2 в $20 ценой? С нормальной заливкой программы и отладкой прямо из mplab?
Я в последнее время почти во всех своих контроллерах (от 873 и выше) использую бутлоадер. А MPLAB уже лет 5-6 не открывал. Работаю в МикроПаскале, с него же и заливаю прошивки. А отлаживаю через COM — порт из программы виртуального отладочного пульта в компе, написанной на Дельфи. Где команды посылаются кнопочками, ползунками, или текстом, а принимаемая информация соответственно показывается в окошках, на шкалах, и так далее. И мне не нужно в программе смотреть регистры (хотя и нет с этим проблем). Я смотрю конкретные ПЕРЕМЕННЫЕ — результат работы тех или иных кусков программы. По ним и делаю выводы о работе программы.
0
Я думаю, что у всего есть преимущества и есть недостатки, в том числе у Пиков.
По поводу отладчика — если есть здесь программисты, почему бы не написать эмулятор какого-нибудь пиккит3 на FTDI bibang, так, как это сделано, например, в HappyJTAG? Протокол описан, библиотека FTDI есть…
Конечно, и этот вариант, и PICPgm — костыли, но в некоторых случаях, особенно для начинающих, вполне имеют право на жизнь.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.