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

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

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

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

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

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

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

 
Опции темы
Непрочитано 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.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

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

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

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

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

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

5+++ Работать надо на современном оборудовании. AN589 хоть и микрочиповский продукт, но уж очень стар.
MisterDi вне форума  
Непрочитано 10.03.2009, 22:45  
MisterDi
Почётный гражданин KAZUS.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
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.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
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, время: 01:23.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot