С Новым годом! Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.95/174: Рейтинг темы: голосов - 174, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752

Субмодуль PIC для PinboardII

10.07.2012, 13:57. Показов 32301. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пиками не занимался никогда. Попалась в руки битая платка на PIC16C72A. Битые интерфейсы сопряжения, контроллер целый. Появилась задумка сделать субплату для PinboardII на PIC16C72A. Но я не знаю тонкостей применения PIC для проектирования подобной платы.
Пока нашел только схему модуля OLIMEX для PIC 28pin (Olimex PIC-P28-20MHz) https://www.olimex.com/div/ima... 28-sch.gif. Достаточно ли этой схемы для проектирования субмодуля? Не очень понял имеет ли PIC16C72A COM интерфейc? То что USORT присутствует это понятно, но про COM интерфейс молчок. COM терминала нет?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.07.2012, 13:57
Ответы с готовыми решениями:

Програматоры для PIC
Хочу полностю понять, как работает програматор, методи програмирования(ICSP и тд). Киньте пожалуйста ссилки на статьи, что то никак не...

Программатор для PIC
Доброго времени суток. Требуется программатор для устройства на PIC18F4550. Схему привожу ниже. Посоветуйте готовый программатор или...

Компилятор Си для PIC
Всем доброго времени суток. Хочу задать пару вопросов для самоопределения. 1) Какой компилятор Си от Microchip поддерживает PIC...

37
SWK
10.07.2012, 15:23
Цитата Сообщение от omokost
Попалась в руки битая платка на PIC16C72A.
Главное для вас - это то, что он (как и все PIC16C) - однократно программируемый.
Правда, некоторые выкручиваются. Если программа небольшая, - забивают ее нулями, а свою компилируют, начиная с адреса начала оставшегося незабитого куска. Потом аналогично можно забить и этот участок, а новую программу записать после него...
[55.08 Кб]

Но гораздо лучше вам взять для изучения аналогичный, но более продвинутый, и с многократной перезаписью. Например, PIC16F873A, PIC16F876A, - 28 ногие, или PIC16F874A, PIC16F877A, - 40-ногие. В них уже по 3 таймера, и USORT, и I2C, и SPI, и PWM, и АЦП, и компараторы, и разной памяти побольше. Очень универсальные, я их везде использую. Довольно распространенные, схем под них в Интернете полно. Программаторы тоже довольно просты.

Есть хорошая русская документация.
Да и вообще, документация у МикроЧипа - хороша... Все по полочкам, ясненько и понятненько...
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 17:48
Цитата Сообщение от SWK
Главное для вас - это то, что он (как и все PIC16C) - однократно программируемый.
Знакомство с PIC отложилось, покупать не к чему, для души AVR, по работе AT89С51ED2. Но на будущее все же спрошу к сообщества, неужели никто не прикидывал для себя субплату PIC для PinboardII? Если было - давайте обсудим, например иногда просто облизываюсь на схемы с PIC, но экспериментировать с ними не могу, не хочется покупать плату для не знакомого и в общем не столь уж необходимого контроллера. Оптимальным на мой взляд явился бы субмодуль PIC для PinboardII, можно было бы хоть получить представление о контроллере.
0
SWK
10.07.2012, 18:10
Цитата Сообщение от omokost
Но на будущее все же спрошу к сообщества, неужели никто не прикидывал для себя субплату PIC для PinboardII? Если было - давайте обсудим, например иногда просто облизываюсь на схемы с PIC, но экспериментировать с ними не могу, не хочется покупать плату для не знакомого и в общем не столь уж необходимого контроллера. Оптимальным на мой взляд явился бы субмодуль PIC для PinboardII, можно было бы хоть получить представление о контроллере.
Тут главная проблема будет - наладить его программирование в составе платы или отдельно.
Что же касается питания, кварца да портов - тут проблем нет, сделать платку - переходник, хотя бы из куска макетки с дырками, да проводками на контакты раскидать, если разводку делать лень.

Что касается программирования - я думаю, проще всего записать в PIC бутлоадер, и менять потом прошивку по RS232. Я, например, в своем роботе уже все контроллеры PIC16F873-877 на загрузку через лодыря перевел. Программу загоняю прямо из среды МикроПаскаля. Бутлоадер - тоже МикроЭлектраники.

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

Поработать же с PIC - я думаю, любому полезно. Тем более, что это гораздо проще, чем, например, STM, - и готовых конструкций на них полно, и документация хорошая. Кто не использует PIC - многое теряет... Есть в них какая - то особая прелесть.
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 18:25
Цитата Сообщение от SWK
Тут главная проблема будет - наладить его программирование в составе платы или отдельно.
Вот и первая неожиданность. Я считал что PIC имеет возможность внутрисхемного программирования. Нужно предусмотреть разьем. Ну и подобие JTAG. Я ошибался?
0
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
10.07.2012, 18:37
Можно и впаянный в плату контроллер через разьем программмировать. Я так и делаю. Ноги резет, клок и дата задействую тока на разьем программирования.
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 18:44
Цитата Сообщение от ImTuTb!
Ноги резет, клок и дата задействую тока на разьем программирования.
Хорошо, 3 ноги зарезервировали для программирования, а как внутрисхемно отлаживать? Есть подобие JTAG?
0
SWK
10.07.2012, 18:49
Цитата Сообщение от omokost
Вот и первая неожиданность. Я считал что PIC имеет возможность внутрисхемного программирования. Нужно предусмотреть разьем. Ну и подобие JTAG. Я ошибался?
Имеет. Но поскольку вы его хотите использовать его с отладочной платой для AVR, то, естественно, алгоритмы несколько разные. Напрямую не пойдет.

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

То есть, если у вас есть какой - нибудь программатор именно для PIC - то с программированием все гораздо проще, чем с AVR. Внутрисхемное программирование на плате также требует подключения земли, питания, сброса, и 2 линий (тактирование и данные) программатора.

В некоторых, более поздних, моделях PIC есть режим "низковольтного" программирования (без подачи +12v на сброс). Там в этом случае используется еще одна нога (садится в режиме программирования на землю).

Для программирования через USB сейчас обычно используют ПикКит (программатор - отладчик), там контроллер PIC18.
Например, PICkit-2, PICkit-3. Секрета из них МикроЧип не делает - схема, описание, прошивки - выложены свободно на их сайте. Также есть много их клонов в Интернете.

Так что проблем с PIC ами не больше, чем с AVR. А то - и меньше.
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 19:15
Цитата Сообщение от SWK
Так что проблем с PIC ами не больше, чем с AVR. А то - и меньше.
Никогда в этом не сомневался. Но все же программирование для PIC - какая то особая область. Инструменты не стыкуются. Хотя казалось бы FT2323 в режиме BytBang может эмулировать любой программатор. Дело только в написании своей оболочки, или настройке существующей.
Опять же не понял, есть ли у PIC внутрисхемный отладчик - аналог JTAG? Это PicKit?
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,283
10.07.2012, 19:23
"FT2323 в режиме BytBang может эмулировать любой программатор"
Реквестирую эмулятор SWIM (STM8)
0
SWK
10.07.2012, 19:27
Цитата Сообщение от omokost
Но все же программирование для PIC - какая то особая область. Инструменты не стыкуются. Хотя казалось бы FT2323 в режиме BytBang может эмулировать любой программатор. Дело только в написании своей оболочки, или настройке существующей.
Я пока не искал (нужды не было), но, возможно, что в Интернете есть. Я раньше просто использовал JDM на COM порту, а где-то уже с год - универсальный Фитоновский ЧипПрог-48, он все что угодно шьет.
Опять же не понял, есть ли у PIC внутрисхемный отладчик - аналог JTAG? Это PicKit?
Да, есть. Раньше это были, кажется, ISD, а через USB - PicKit. PicKit-2 - еще не отлаживал PIC-32, хотя программировать их мог. PicKit-3 - уже отлаживает и PIC32.

Описания PicKit есть на сайтах МикроЧипа, посмотреть на один из самодельных можно например тут:
Самодельный программатор-отладчик PICkit 2
http://rodyomostir.com.ua/index.php?newsid=676
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 19:38
Цитата Сообщение от dsodir
Реквестирую эмулятор SWIM (STM8)
Пока нашел подробности о коммуникационом протоколе SWIM для STM8 хорошо повеселился (Фитнес клуб с бассейном... и т. д.). Не понял как это можно привязать к программированию PIC. Не могли бы вы высказаться яснее?
0
SWK
10.07.2012, 19:43
Я сам - то отладчиками не пользуюсь. Привык при написании программ и отладке общаться с контроллером через USORT - COM-порт. Всего 2 линии, они же - и для заливки программы через бутлоадер, и для отправки команд программе, и для получения результатов ее работы. Хватает.

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

А ковыряться в регистрах при отладке - неинтересно, и муторно. Достаточно просмотреть значения переменных в ключевых точках программы через отладочный вывод. Для чего достаточно в программе в нужных местах вставить одну - две строчки... Которые после отладки удалить или закомментировать.
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 20:01
Цитата Сообщение от SWK
Но поскольку вы его хотите использовать его с отладочной платой для AVR...
Мне кажется концепция PinboardII не ограничивается только AVR и STM. У меня почти готовы субплаты для AT89C51ED2 и ATmega162. Обе с внешней памятью 64К SROM от кеша 486 процессоров. Для PIC наверное получится так же как для STM32. Т. е. отдельно субплата программатора-отлачика PicKitX, отдельно субплата контроллера. Думаю что это невысокая цена за универсальность.
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 20:14
Цитата Сообщение от SWK
...Привык при написании программ и отладке общаться с контроллером через USORT - COM-порт... А ковыряться в регистрах при отладке - неинтересно, и муторно. ...
Старая школа, сам этим грешу. Но например в даташите PIC16C72A встретил наличие USORT, но о возможности работы его на СОМ порт ничего нет. Работает только в режимах SPI/IIC? И по обозначениям ножек видно что RxD, TxD нет. Как привязать терминал? Програмно? Морока еще та, тем более если и контроллер незнакомый.
Ценность JTAG при отладке, не только пошаговое шагание в целевом контроллере. Первым делом я просто проверяю надежность соединений, просто переключая мышкой состояние портов и контролируя тестером на плате.
0
SWK
10.07.2012, 20:25
Цитата Сообщение от omokost
Т. е. отдельно субплата программатора-отлачика PicKitX, отдельно субплата контроллера. Думаю что это невысокая цена за универсальность.
Сейчас глянул мельком по внутрисхемной отладке PIC. Все даже проще, чем JTAG.
Не нужны никакие дополнительные линии, для отладчика используются те же 3шт, что и для программирования - MCLR/VPP, PDG (ICSPDAT), PGC (ICSPCLK).
В отличие от AVRовского JTAG, который требует еще и полпорта С.

А поскольку все регистры в PIC равноценны, то и в отладчике нет разницы, как с ними работать. Записав биты в регистр порта, вы соответственно задаете состояния его ног. И прозванивайте, как угодно...

Вот русский мануал на PicKit-2:
[1.55 Мб]

Но например в даташите PIC16C72A встретил наличие USORT, но о возможности работы его на СОМ порт ничего нет. Работает только в режимах SPI/IIC? И по обозначениям ножек видно что RxD, TxD нет. Как привязать терминал? Програмно? Морока еще та, тем более если и контроллер незнакомый.
PIC16C72A - контроллер довольно старой разработки. Более современные - почти все, начиная с 18 ног (например, PIC16F628) - уже имеют встроенный USORT. А в более мелких - и отлаживать - то особо нечего, для сложных вещей их не применяют.
Кроме того, у PIC очень высокая совместимость - как аппаратная (по выводам старых и новых контроллеров), так и по периферии. Например, одноименные таймеры в разных контроллерах работают похоже. Так что можно, например, программу для 628 отладить на 873, и с минимальными изменениями (если в Паскале - так большинство их сделает сам компилятор) - перекомпилировать и прошить в 628.
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 20:46
Цитата Сообщение от SWK
PIC16C72A - контроллер довольно старой разработки...
Понял свою ошибку, с самого начала как ТС задал неверный вектор для обсуждения. А если спросить по другому?
Как ТС намечаю двухплатную конфигурацию субмодулей PIC для платы PinboardII. На пины FT2232 вешаем программатор/отладчик PicKitX (клон),
осталось определиться с процессорным субмодулем. Какой МК посоветуете? Не более 48 ног.
0
0 / 0 / 1
Регистрация: 22.01.2010
Сообщений: 4,000
10.07.2012, 21:15
Проблема тут в программаторе. Если я буду делать то варианта будет два:

либо с бутлоадером либо смогу наковырять программатор на FTDI теоретически никаких проблем там нет. Можно сделать. На практике реализаций я не встречал.
0
SWK
10.07.2012, 21:19
Цитата Сообщение от omokost
Как ТС намечаю двухплатную конфигурацию субмодулей PIC для платы PinboardII. На пины FT2232 вешаем программатор/отладчик PicKitX (клон),
осталось определиться с процессорным субмодулем. Какой МК посоветуете? Не более 48 ног.
Зависит от задач. Можно взять что-то посовременнее, вплоть до 32х битных, можно ограничиться для начала PIC16, там тоже много чего есть, особенно из последних.
Также сейчас очень хорошо развивается PIC18. Много чего там есть, вплоть до встроенного USB.

Если просто для начала побаловаться - я бы посоветовал хоть и уже как бы старые, но широко распространенные и в большинстве случаев вполне достаточные - PIC16F877A. 40 ног. Удобно то, что полностью совместим с 874 (у которого 4к памяти программ вместо 8 - у 877), и 876 - память та же, но 28 ног, и 873 - 28 ног и 4к памяти. Программы между ними переносятся без переделок, (с учетом обьемов памяти и количества портов). Периферии - полно всякой. По функционалу - примерно соответствует Меге 16.

Учитывая совместимость по ногам разных семейств контроллеров МикроЧипа, со временем можно будет вместо него поставить и более новые - например, из PIC18. Да и в более поздних - тоже есть корпуса DIP-40.

А вообще для выбора у МикроЧипа есть очень удобные таблицы с фильтрами, на их сайте:
например,
http://www.microchip.com/productselecto ... ector.html

Там задаешь требуемые характеристики, и видишь подходящие под них контроллеры.
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
10.07.2012, 21:41
Цитата Сообщение от DY HOTT
... на FTDI теоретически никаких проблем там нет. Можно сделать. На практике реализаций я не встречал.
Вот именно что теоретически, практически пообще поползновений сделать PIC программатор/отладчик на FT2232 я также не встречал. Подводные камни? Нежелание заниматься? Пока сам не полезешь, не узнаешь.
Цитата Сообщение от SWK
... Если просто для начала побаловаться - я бы посоветовал хоть и уже как бы старые, но широко распространенные и в большинстве случаев вполне достаточные - PIC16F877A. 40 ног...
Хотя бы просто получить представление о предмете разговора. МК среднего семейства, с хорошей периферией, в большинстве случаев возможно будет излишен, но при макетировании должен подходить для большинства схем инета.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.07.2012, 21:41
Помогаю со студенческими работами здесь

CPLD Xilinx шилд для PinBoardII
Наконец-то дождался небольшую партию xc9572xl-vq44, пора приступать к придумыванию CPLD-shield для PinBoardII Если кому интересна эта...

Проект созданный в CubeMX не загружается в PinBoardII
Доброго времени суток всем! Может кто подскажет как решить следующую проблему - проект (простое мигание светодиодом при нажатии на...

Система питания PinboardII здесь. Вопросы, предложения и т.д
Включил PBII все работает, за что спасибо DI Halt у. У меня два вопроса созрело. 1. Ну очень глупый вопрос - как открываются...

Интересный проект для автоматчиков LDMicro для AVR и PIC
На просторах тырнета наткнулся на забавный открытый проект LDMicro, програмулька позволяет писать программы для МК на языке LD,который...

Модуль STM8S105K4/K6 (TQFP32) для PinboardII
Модуль выполнен на основе "Mодуль AVR ATmega8A (TQFP32) для Pinboard II" -...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru