Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Программирование PIC-ов или как победить MCLR

Непрочитано 10.03.2009, 17:05  
MSMC
Временная регистрация
 
Регистрация: 28.06.2005
Сообщений: 56
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
MSMC на пути к лучшему
По умолчанию Программирование PIC-ов или как победить MCLR

Здравствуйте, Уважаемые.

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

Начал с простенького PIC16F84. Разработал небольшой проект в Протеусе. Написал прогу на ассемблере, засунул в Протеус, и, как ни странно, всё заработало.

Захотелось воплотить, так сказать, в железе.

Не отступая от традиций, решил собрать AN589 программатор. Ну и в азарте прикрутил к нему DC-DC преобразователь напряжения 5-›10…14 вольт (на MAX762), чтобы запитывать это всё от USB, т.к. толкового блока питания у меня нет. На макетке всё заработало. Вроде и PIC16F84A прошивался нормально.

Собрал всё на печатке и ВОТ НАЧАЛОСЬ:
Проблема №1: При подключении PIC16F84A (2 шт из разных партий), PIC16F877 напряжение на MCLR не превышает 10,5 вольт, хотя DC преобразователь выдаёт положенные 13,5. Греется транзистор VT2 по схеме.
Проблема №2: При подключении PIC16F877A напряжение на MCLR в норме, но чтение схемы идёт с ошибками (программатор подключён непосредственно к LPT). О программировании в таких условиях и говорить не приходится.
Проблема №3: И радость и разочарование. PIC16F874 и программируется и читается без проблем. И с кабелем LPT (1.5 м) и без него. MCLR в норме ничего не греется.

Подскажите, что может быть не так.
По форумам поискал. Путной информации нет.

Есть зацепки:
1. При понижении напряжения на MCLR ниже земли через контроллер может течь большой ток (до 80 мА), что может привести к большому падению напряжения на переходе транзистора и далее …. не знаю как это связано с моей схемой.
2. В новых контроллерах нужно отключать режим низковольтного программирования. Но PIC16F84A такого не имеет …. или я не прав.
3. Ещё есть, что-то с подачей питания на PIC и задержкой подачи напряжения программирования, в результате чего начинается исполнение программы и … далее непонятно.

Буду благодарен за любую помощь.
Схема программатора и печатной платы прилагается.

-- Прилагается рисунок: --


Прикрепленный файл: 6886725.rar
Реклама:
MSMC вне форума  
Непрочитано 10.03.2009, 18:39  
MisterDi
Почётный гражданин KAZUS.RUN
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,284
Сказал спасибо: 441
Сказали Спасибо 1,040 раз(а) в 701 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

Проблема №2 из-за буквы А. МК PIC16F87*А пишутся по другому алгоритму, поэтому алгоритм программирования для PIC16F87* дает ошибку(правильно пишется каждая 8-я ячейка памяти программ). Чтобы нормально работать нужно в свойствах проекта обязательно ставить правильный тип процессора.

Напряжение программирования должно быть точно 13,5В при меньшем - не записывается при большем 14 - горит, причем сильно зависит от экземпляра МК. Сейчас на столе лежит 16F628A, который в программаторе читается и пишется правильно, а в схеме не работает совсем. Ессть несколько таких же 12F675.
MisterDi вне форума  
Непрочитано 10.03.2009, 21:17  
otest
Почётный гражданин KAZUS.RUN
 
Регистрация: 29.01.2005
Адрес: Воронеж
Сообщений: 1,384
Сказал спасибо: 24
Сказали Спасибо 245 раз(а) в 183 сообщении(ях)
otest на пути к лучшему
По умолчанию

Сообщение от MisterDi
Напряжение программирования должно быть точно 13,5В при меньшем - не записывается при большем 14 - горит
.
Интересно откуда у вас эти сведения. Во у меня из datasheet
MSMC
Откройте окно теста в программе и проверти все напряжения.Вы не указали какую программу пользуете.

-- Прилагается рисунок: --
otest вне форума  
Непрочитано 10.03.2009, 21:40  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Послушайте, вас не задолбало собирать не известно что , а потом искать из за чего не шьется?
Не хотите мучений соберите пиккит2 или исд .
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 10.03.2009, 22:41  
MisterDi
Почётный гражданин KAZUS.RUN
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,284
Сказал спасибо: 441
Сказали Спасибо 1,040 раз(а) в 701 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

5+++ Работать надо на современном оборудовании. AN589 хоть и микрочиповский продукт, но уж очень стар.
MisterDi вне форума  
Непрочитано 10.03.2009, 22:45  
MisterDi
Почётный гражданин KAZUS.RUN
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,284
Сказал спасибо: 441
Сказали Спасибо 1,040 раз(а) в 701 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

Сообщение от otest
Сообщение от MisterDi
Напряжение программирования должно быть точно 13,5В при меньшем - не записывается при большем 14 - горит
.
Интересно откуда у вас эти сведения. Во у меня из datasheet
Написано больше 14В, т.е. out of spec. Остальные данные из практического опыта.

-- Прилагается рисунок: --
MisterDi вне форума  
Непрочитано 11.03.2009, 07:27  
MSMC
Временная регистрация
 
Регистрация: 28.06.2005
Сообщений: 56
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
MSMC на пути к лучшему
По умолчанию

Здравствуйте, Всем.

Я конечно понимаю, что нужно идти в ногу со временем и т.д. и т.п. Но для начинающих PikKit, ICD - это, как для Вас, например, температурная стратификация или лазерная абляция

Прототип схемы взят из журнала Радио №1, 2004 - не такой уж и старый источник.

Просьба была, подсказать, где могут быть проблемы в схеме, а послать на ICD или куда ещё, так это просто.

Что касается программного обеспечения:
Использовал DL4YHF's PIC Programmer for Windows (WinPicPr). В окне интерфейса программатор инициализируется нормально, все тесты по отдельным каналам проходит, напряжения в норме. Но это всё без PICа. С PICом ситуация, как описано в первом посте.
Использовал так же IC Prog всё тоже самое.

Может есть проблема с аналоговой и цифровой землёй на плате они объединены не в одной точке (заметил только после сборки устройства). Как проверить? Есть цифровой TDS на два канала.

Вчера подсоединил MCLR PIC16F84A через резистор 750 Ом - напряжение выросло до положенных 13.5В, но на программирование микросхемы это никакого действия не оказало.
MSMC вне форума  
Непрочитано 11.03.2009, 07:45  
MSMC
Временная регистрация
 
Регистрация: 28.06.2005
Сообщений: 56
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
MSMC на пути к лучшему
По умолчанию

Сообщение от MisterDi
Проблема №2 из-за буквы А. МК PIC16F87*А пишутся по другому алгоритму, поэтому алгоритм программирования для PIC16F87* дает ошибку(правильно пишется каждая 8-я ячейка памяти программ). Чтобы нормально работать нужно в свойствах проекта обязательно ставить правильный тип процессора.

Напряжение программирования должно быть точно 13,5В при меньшем - не записывается при большем 14 - горит, причем сильно зависит от экземпляра МК. Сейчас на столе лежит 16F628A, который в программаторе читается и пишется правильно, а в схеме не работает совсем. Ессть несколько таких же 12F675.
В программе выбирается соответствующий процессор !
Но проблема в том, что даже пустой PIC16F877A читается с ошибками, которые в зависимости от задержек выставляемых в программе располагаются в разных местах. LPT кабеля нет. Удивляет ещё то, что PIC16F874 и читается и пишется без проблем.

Напряжение менял от 12 до 14 вольт результат одинаковый.

Ещё что касается AN589. Конечно староват, но ведь разрабатывался для PIC16C84 и (по статьям) должен работать со всеми перечисленными PICами и уж тем более с PIC16F84A.

Так в чём причина отказа от его использования.
Если есть веские аргументы, хотелось бы услышать.
В противном случае можно сказать:"Используй ChipProg за 50 кРуб и всё будет хорошо".

Извиняюсь, если мои выскажывания кому-то пришлись не по душе.
MSMC вне форума  
Непрочитано 11.03.2009, 10:15  
MisterDi
Почётный гражданин KAZUS.RUN
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,284
Сказал спасибо: 441
Сказали Спасибо 1,040 раз(а) в 701 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

Основная проблема подобных программаторов - програмно формируемые временные интервалы, точно сформировать которые операционная система не в состоянии. Отсутствие оперативной поддержки в среде того же МП-ЛАБа - тоже минус. Как писал уважаемый dosikus, комплектация на ПикКит обошлась в 500р. На мой взгляд достойная альтернатива.
MisterDi вне форума  
Непрочитано 11.03.2009, 11:17  
MSMC
Временная регистрация
 
Регистрация: 28.06.2005
Сообщений: 56
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
MSMC на пути к лучшему
По умолчанию

Сообщение от MisterDi
Основная проблема подобных программаторов - програмно формируемые временные интервалы, точно сформировать которые операционная система не в состоянии. Отсутствие оперативной поддержки в среде того же МП-ЛАБа - тоже минус. Как писал уважаемый dosikus, комплектация на ПикКит обошлась в 500р. На мой взгляд достойная альтернатива.
Я не спорю с этим и со временем либо куплю оригинал PicKit, либо соберу сам.

Но есть вопросы сегодняшнего дня с которыми хотелось бы разобраться.
1. Почему программатор на макетке работал с PIC16F84A, а на плате(в сборе) не работает?
2. Может через MCLR идти такой ток, что на транзисторе VT2 падает 3,5 вольта или PIC не рабочий?
3. Почему F874 нормально программируется, а другие нет.
И далее...
Как видно вопросы связаны не только с процессом (временные интервалы и т.д.)и их важно понимать и при спользовании PicKit и AN589

В целом не нужно превращать ветку в обсуждение что лучше или хуже. Хотелось бы разобраться с конкретной железякой.
MSMC вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
последовательное программирование pic ctefan Микроконтроллеры, АЦП, память и т.д 9 17.08.2008 10:38
!!!объектное программирование для PIC`ов!!! hubble Микроконтроллеры, АЦП, память и т.д 7 14.02.2008 16:18
программирование PIC Lex_DJ Микроконтроллеры, АЦП, память и т.д 8 02.06.2007 05:18
Внутрисхемное программирование PIC lisergin Микроконтроллеры, АЦП, память и т.д 4 05.10.2005 00:02
Вопрос - программирование PIC-ов на языке высокого уровня GRIM Микроконтроллеры, АЦП, память и т.д 2 29.02.2004 09:03


Часовой пояс GMT +4, время: 03:41.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.