Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PIC17C752 или 1886ВЕ2У
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
torik
Приветствую всех!
Вопрос такой - чего это, шайба ICD2 не поддерживает програмирование контроллеров PIC17C752?

Дело вот в чем. Нас заставили осваивать отечественные контроллеры 1886ВЕ2У от Миландра. Программы давно уже пишу на С и на ассемблер переходить не собираюсь... Вот их разработчики утверждают, что мол прямо в микрочиповском MPLABе под HTPICC пишем программу, програмируем через шайбу... Ну я подключил, написал тестовую прогу под вышеназванный микрочип, полным аналогом которого является 1886ВЕ2У и, шайба с этим пиком вообще не выбирается в качестве програматора.

Господа, кто "работал" с этими контроллерами (отечественными в том числе), признавайтесь, что делать?
dac
Цитата(torik @ Jun 4 2008, 10:19) *
Вопрос такой - чего это, шайба ICD2 не поддерживает програмирование контроллеров PIC17C752?

в списке поддерживаемых устройств для ICD2 нет ни одного PIC17 (есть 16, 18, 24, дс)
в даташите на PIC17C752 написана поддержка ICD, но ICD2 не упоминается.

имхо либо какой-то из сторонних программаторов, либо - в даташите если точно цитировать написано следующее:

In-Circuit Debugger:
- MPLAB ICD for PIC16F87X
• Device Programmers:
- PRO MATE® II Universal Device Programmer
- PICSTART® Plus Entry-Level Development Programmer

делайте выводы sad.gif
-=Sergei=-
Цитата(dac @ Jun 4 2008, 15:58) *
в списке поддерживаемых устройств для ICD2 нет ни одного PIC17 (есть 16, 18, 24, дс)
в даташите на PIC17C752 написана поддержка ICD, но ICD2 не упоминается.

имхо либо какой-то из сторонних программаторов, либо - в даташите если точно цитировать написано следующее:

In-Circuit Debugger:
- MPLAB ICD for PIC16F87X
• Device Programmers:
- PRO MATE® II Universal Device Programmer
- PICSTART® Plus Entry-Level Development Programmer

делайте выводы sad.gif



Для программирования микроконтроллеров серии 1886ВЕ необходимо использовать специальный программатор выпускаемый Миландром, он идет в комплекте с демонстрационно-отладочной платой. Разрабатывать программу Вы можете где угодно, полученый HEX файл загружается в микроконтроллер через программатор из специальной программы MicroProg2006, которая так же есть в комплекте с демонстрационно-отладочной платой. Так же рекомендую посмотреть на новую интегрированную среду разработки IDE1886, если Вы недавно приобрели комплект, то она есть на диске, если нет, то можно счкачать с сайта www.milandr.ru или дайте Ваши контакты, я вышлю последнюю версию. В среде интегрирован редактор, программатор, траснляторы ассемблера, можно подключить внешний компилятор.
torik
Да запрограмировать удалось - для этого был применен програматор производства "Миландр".
Положительные впечатления:
1) "Своя" IDE, на основе открытого проекта. В качестве компилятора использует MPASM/HTPICC. ПРоще будет с освоением.
2) У них хорошая тех. поддержка, по крайней мере по первым впечатлениям

Не понравилось:
3) Ужасная схема програмирования, просто идиотизм с переключателями придется делать...
4) С документацией не айс, к примеру, на програматоре нет ни серийного номера, ни пломбы, нихрена вообще - и что по этому поводу объяснять военпреду?
MrYuran
Цитата(torik @ Jun 5 2008, 13:59) *
4) С документацией не айс, к примеру, на програматоре нет ни серийного номера, ни пломбы, нихрена вообще - и что по этому поводу объяснять военпреду?

А надо?
объяснять-то?
Программатор к изделию отношения вроде бы не имеет. Можно обозвать его как технологическое оборудование.
-=Sergei=-
Цитата(torik @ Jun 5 2008, 14:59) *
Да запрограмировать удалось - для этого был применен програматор производства "Миландр".
Положительные впечатления:
1) "Своя" IDE, на основе открытого проекта. В качестве компилятора использует MPASM/HTPICC. ПРоще будет с освоением.
2) У них хорошая тех. поддержка, по крайней мере по первым впечатлениям

Не понравилось:
3) Ужасная схема програмирования, просто идиотизм с переключателями придется делать...
4) С документацией не айс, к примеру, на програматоре нет ни серийного номера, ни пломбы, нихрена вообще - и что по этому поводу объяснять военпреду?


USB Программатор с "приемкой" в ближайшее время появится, там будет все и серийный номер и ромбики по кругу.

Схема программирования и переключатели на демоплате - сделаны исходя из стандартных требований по защите от дурака, т.е. если разработчик понимает, что так как программирование МК осуществляется через USART, и что одновременно иметь подлюченный программатор и например приемопередатчик RS232 нельзя, и как либо учтет это в своем проекте, то можено сделать и более простой способ переключения программирование/работа. Нам приходилось делать железобетонно и все равно некоторые умудряются жечь.
injen-d
Позволю себе вклиниться, чтобы не создавать лишней ветки, потому как вопрос почти по той же теме.
Мне довелось проводить опыты еще над инженерными образцами 1886ВЕ2У (без маркировки, и флеш приходилось до 50-и раз подряд стирать, чтобы она наконец стерлась 07.gif ), но тогда нам эти контроллеры не подошли из-за отсутствия их в перечне МОП. Сейчас решил "натаскать" на них молодого специалиста да так, чтоб сразу на С писал. Начал искать компилятор и с удивлением обнаружил отсутствие бесплатного компилятора! В руководстве пользователя IDE1886 написано:
Цитата
На закладке «Compiler», показанной на рисунке 7, установить один из типов компиляторов: «HT-PICC» для компиляции проектов на языке «C»; «MPASM» для компиляции проектов на языке ассемблер с синтаксисом фирмы «Microchip»; «PHYTON» для компиляции проектов на языке ассемблер с синтаксисом фирмы «Phyton».

бесплатного микрочиповского или GCC тоже вроде бы нет.
Я конечно понимаю, что есть таблетки от жадности, но мы обязаны указывать в документации все необходимое для разработки ПО, и если вдруг чего - могут возникнуть большие проблемы. В общем, начальник не позволит схитрить laughing.gif
Я че-то не доглядел, или действительно халявы не будет и придется на асме кодить?
ЗЫ: сначала хотел вообще все в Eclipse запихнуть (там уже в одном workspace несколько проэктов для AVR и ARM7, предназначенных для одного изделия, - очень удобно), но видно не судьба...
torik
MrYuran, вот тут пишут:
Цитата
но мы обязаны указывать в документации все необходимое для разработки ПО, и если вдруг чего - могут возникнуть большие проблемы.


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

Ну еще надо, похоже, приобретать эмулятор, без него трудновато.

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

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

Я почему так возмущаюсь и спрашиваю совета - мы заменяем микрочиповские на эти контроллеры, едва удалось впихнуть сам контроллер (он больше намного), а еще переключатель (попробуй найди микропереключатель с приемкой "5") куда-то деть надо sad.gif((
-=Sergei=-
Цитата(torik @ Jun 6 2008, 08:50) *
MrYuran, вот тут пишут:
С програматором проблемы из той же области. Конечно, я недеюсь, все будет нормально, но придраться к этому можно (вот так вот бывает).

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

Я почему так возмущаюсь и спрашиваю совета - мы заменяем микрочиповские на эти контроллеры, едва удалось впихнуть сам контроллер (он больше намного), а еще переключатель (попробуй найди микропереключатель с приемкой "5") куда-то деть надо sad.gif((


подтягивающие резисторы на линии DT, CK и RA1, Test и установлены для того, что бы при отсоеденненом программаторе эти линии были доопределены и не болтались в воздухе. При подсоеденненом программаторе они определены.

Напряжение питания (+5 вольт), формируемое программатором, предназначено только для питания микроконтроллера в момент программирования. Поэтому необходимо предусмотреть коммутацию напряжения питания при программировании. Номинальное значение тока программирования по линии 5 вольт 50 мА. Мы не можем предположить возможное потребление всей вашей схемы и например при достаточно большом его значении источники в нашем программаторе могут просто не справится.
Использование внешнего питания +5 вольт при программировании микроконтроллера не желательно, так как для обеспечения гарантированной записи/стирания, программатор производит тестирование микроконтроллера при нескольких напряжениях питания: 4.5, 5 и 5.5 вольт.
Схема «сброса» микроконтроллера, подключенная к выводу MCLR/Upp, должна обеспечи-вать возможность подачи на этот вывод напряжения программирования +12 вольт. В режиме программирования, но до подачи напряжения программирования, схема должна поддержи-вать на этом выводе напряжение логического нуля.
Вывод микроконтроллера “TEST” в рабочем режиме должен иметь уровень логического нуля, при программировании на этот вывод подается напряжение +12 вольт.

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

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

При развитии серии 1886ВЕ мы стараемя минимизировать корпуса, ВЕ3 и ВЕ4 упокаваны в 48 выводные, ВЕ5 и ВЕ6 в 42 выводные, ВЕ7 скорее всего в 28 выводной. Но и тут мы встречаем, что например некоторым нашим потребителям это все равно очень большие корпуса, а некоторым уже не хватает выводов. Сделать один и тот же кристалл но в разных корпусах фактически означает разработку еще одной микросхемы. так как для нее так же придется проводить полный цикл испытаний, а это минимум пол года и несколько миллионов рублей.

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

"Наше предприятие..... ведет разработку с применением ваших микросхем, и для ..... повышения .... улучшения ..... соответсвия требваниям ..... нам необходим компилятор с языка С. Просим Вас сообщить о возможность его РАЗРАБОТКИ и поставке"

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






Цитата(injen-d @ Jun 5 2008, 20:44) *
Я че-то не доглядел, или действительно халявы не будет и придется на асме кодить?


Если мы разработаем свой компилятор, то он будет поставляться бесплатно.

Мы рассматривали возможность включения в нашу среду компилятора HTPICC официально, т.е. с лицензированием итп, но наши российские их (якобы) представители не проявили к этуму интереса, а мои прямые заросы в фирму HTSoft остаются пока без ответов.
torik
Цитата
подтягивающие резисторы на линии DT, CK и RA1, Test и установлены для того, что бы при отсоеденненом программаторе эти линии были доопределены и не болтались в воздухе. При подсоеденненом программаторе они определены.


Т.е. как я понял, эти подтягивающие резисторы не дают контроллеру в рабочем режиме случайно перейти в режим програмирования и без них никак нельзя (особенно RA4,RA5)?
Хм..., а как же быть с альтернативной функцией RA4,RA5 - USART... Какие возникнут проблемы?

Что касается програматора, компиляторов и прочего - спасибо за разъяснение, все понятно.

Еще, мы провели эксперимент на отладке eval8:
- вместо того чтобы брать питание контроллера при програмировании с програматора, соединили его с внешним питанием. При этом все прошилось нормально. Нам желательно не вводить в схему переключатель на данном этапе, ибо некуда. А будем выкручиваться...
-=Sergei=-
Цитата(torik @ Jun 6 2008, 10:57) *
Т.е. как я понял, эти подтягивающие резисторы не дают контроллеру в рабочем режиме случайно перейти в режим програмирования и без них никак нельзя (особенно RA4,RA5)?
Хм..., а как же быть с альтернативной функцией RA4,RA5 - USART... Какие возникнут проблемы?

Что касается програматора, компиляторов и прочего - спасибо за разъяснение, все понятно.

Еще, мы провели эксперимент на отладке eval8:
- вместо того чтобы брать питание контроллера при програмировании с програматора, соединили его с внешним питанием. При этом все прошилось нормально. Нам желательно не вводить в схему переключатель на данном этапе, ибо некуда. А будем выкручиваться...



RA4, RA5 - просто необходимо доопределить, обычно если в рабочем режиме используется USART в качестве RS232, то они доопределяюся до "1". Если у Вас другая функция, на этих выводах, то смотрите в соотвествии со своей функцией, главное что бы они не конфликтовали с подключенным программатором.

По поводу питания, с внешним питанием прошьется, но для гарантии качественного программирвоания флеш, после загрузки очуществляется контрольное считывание всей памяти при 4,5 и 5,5В, это позволяет гарантировать, что при скачках напряжения из флеш будет считано именно то что в нее записано, так как "0" или "1" это всего навсего заряд на затворе и если он каким либо образом попал близко к граничному значению, то при изменении питания он может вывалится из допустимого.
Какое потребление в целом всего вашего устросйтва ? Уж лучше запитайте его все от программатора при программирвоании, чем наоборот. Или придусмотрите, что бы при программировании МК все остальное было в Standby или Shotdown, для минимизации потребления.
torik
Спасибо, мы подумаем над этим. По крайней мере, часть схем очень низкопотребляющие и програматор потянет вполне...
В последующих разработках, которые еще не находятся на стадии производства, мы будем делать все согласно рекомендациям во избежание проблем...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.