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

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

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

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

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

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

TTL и CMOS логика Цифровая схемотехника на логических микросхемах. Счетчики, сдвиговые регистры, простая логика...

 
Опции темы
Непрочитано 04.03.2019, 15:34  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 722
Сказал спасибо: 363
Сказали Спасибо 803 раз(а) в 377 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

letter, макет - отлично.
В общем, для такой схемы:

Нажмите на изображение для увеличения
Название: curcuit.png
Просмотров: 0
Размер:	55.2 Кб
ID:	139452

во вложении вот такие прошивки:
1) PIC12F675.hex
2) PIC12F675_BOD.hex

При подаче питания и после любой активности МК следит за состоянием кнопки
в течение ~7 секунд (потребляя пол-миллиампера), затем уходит в режим сна.

В файле 2) включен детектор порогового напряжения питания (brown-out detector),
поэтому в режиме сна МК будет кушать около 100мкА.
В файле 1) он отключен, в режиме сна МК будет кушать пару микроампер.


При 'дребезге' питания МК будет сбрасываться.
После сброса на всех каналах и линии Power_switch - уровень лог 0.
Однако в состоянии сброса выводы МК находятся в высокоимпедансном состоянии.
Поэтому необходимо обеспечить гарантированный уровень лог. 0 на входе 'shutdown'
основного устройства, например, установить pull-down резистор, который, однако,
будет зря рассеивать тепло ) при лог 1. на этом входе.

'Модуль' А2 в схеме нужен лишь при макетировании.

P.S. Во вложении в архиве имеется такая же пара файлов для PIC12F683, они по
выводам полностью совместимы для данной схемы.

Сообщение от letter Посмотреть сообщение
- no capacitors on PGC/PGD/MCLR
- no pull-ups on PGC/PGD

1) такая маленькая емкость на выводе MCLR не будет мешать.
2) на выводах PGC/PGD висят светодиоды, которые также не будут мешать
процессу.

Я проводил эксперименты в железе с PIC12F683, Pickit3 был постоянно подключен.
В процессе программирования нельзя нажимать кнопку управления переключателем SW1.
И, как я уже упоминал, в разрыв цепей PGC/PGD/MCLR от программатора к МК я включаю
резисторы порядка 330 Ом для перестраховки.

UPD.
После окончания процедуры программирования МК сразу начинает выполнять программу и будет манипулировать линиями порта, на которых 'висит' программатор, и программатор (по идее и здравому смыслу) должен переводить свои линии в третье состояние.
Чтобы не добавлять дополнительный обвес (как это приведено в руководстве к программатору) в такую компактную схему, я просто этот обвес держу вне целевого устройства - в разрыве цепей PGC/PGD/MCLR, шлейф с 3-мя резисторами.
Вложения:
Тип файла: zip SmartSwitch.zip (4.8 Кб, 0 просмотров)
Реклама:

Последний раз редактировалось j-Roger; 04.03.2019 в 16:16.
j-Roger вне форума  
Сказали "Спасибо" j-Roger
letter (04.03.2019)
Непрочитано 04.03.2019, 17:16  
letter
Вид на жительство
 
Регистрация: 18.08.2008
Сообщений: 314
Сказал спасибо: 49
Сказали Спасибо 8 раз(а) в 7 сообщении(ях)
letter на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

Что-то не срастается у меня в смысле попробовать залить софт с помощью ICD2, который имеется в наличие : кабель от программатора, подключаемый к плате МК имеет на конце только 4 контакта, хотя в мануале к 675 требуется 5 контактов. Распиновку имеющегося я приводил выше : Vdd и VSS - с этими всё ясно - питание и земля. Ещё 2 - это Clock и DATA In/OUT, но отсутствует 5-й - MCLR/Vpp. И тут у меня "сбой программы" : используемый ICD2 обходится без этого 5-го, может и в нашем случае можно обойтись без него ? Или нет ? Если нет, то мне придётся что-то изобретать самому.
Моих познаний не хватает - что есть MCLR/Vpp и можно ли этот пин GP3 просто подцепить через резюк например к + питания ?
Этим 4-х контактным программируется у нас куча приборов и как-то же они обходятся без MCLR/Vpp.. Как пример - заливается софт в проц PIC18LF452.
Если я правильно понимаю - при программировании питать МК можно либо от внешнего источника, либо через программатор. На корпусе имеющегося есть переключатель 3.3V/5V. Возможно внутри програматора это напряжение подаётся через диод, так что в смысле питания особо без разницы.
letter вне форума  
Непрочитано 04.03.2019, 19:24  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 722
Сказал спасибо: 363
Сказали Спасибо 803 раз(а) в 377 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

letter, есть лишь догадка, что у приведенного на фото ICD2 разъем на конце шлейфа 'самопальный',
на который не выведен сигнал MCLR/Vpp. Думается, нужно уточнить у хозяина программатора )

Сигнал Vpp используется для перевода МК в режим программирования.
'Смысловая' же коммуникация между МК и программаторам осуществляется по линиям PGD/PGC.

Нажмите на изображение для увеличения
Название: memory_prog.png
Просмотров: 0
Размер:	20.1 Кб
ID:	139476

Есть пики, которые поддерживают, помимо обсуждаемого, еще и режим так называемого низковольтного программирования LVP - для перевода такого МК в режим программирования нужно подать на специально выделенный вывод уровень лог 1 ( к таковым пикам относится и PIC18LF452 ). Например, может устанавливаться что-то типа джампера, который нужно переключить перед прошивкой. Тогда от программатора требуются лишь PGD/PGC.

К сожалению, PIC12F675 этой фишки не поддерживает.
Возможно, как вариант, и через резистор подать сигнал в диапазоне VDD+3.5 - 13 Вольт.
Программаторы так и делают. Сам не экспериментировал, поэтому не могу советовать.
Также, к сожалению, про ICD2 ничего полезного сообщить не смогу.

При макетировании можно запитать все от программатора. Т.е. МК и 3..4 светика

Последний раз редактировалось j-Roger; 04.03.2019 в 19:33.
j-Roger вне форума  
Непрочитано 04.03.2019, 19:39  
letter
Вид на жительство
 
Регистрация: 18.08.2008
Сообщений: 314
Сказал спасибо: 49
Сказали Спасибо 8 раз(а) в 7 сообщении(ях)
letter на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

Цитата:
Возможно, как вариант, и через резистор подать сигнал в диапазоне VDD+3.5 - 13 Вольт.
Какой номинал должен иметь резистор и имеет ли значение - какое именно напряжение из диапазона +3,5 - +13 V подавать ?
Если я правильно понял - сигнад Vpp надо подать несколько ранее, чем VDD ?

Кажется понял - в чём прикол с 4-мя контактами : cразу просто не заметил, что на схемке, которую я вырезал из общей (мой пост 140 на стр. 14) - там конт. 1 маркирован Vpp а не VDD_ т.е. они подают Vpp_MCLR с адаптера на МК по шлейфу, а VDD подаётся непосредственно на плату с МК от внешнего источника. Очевидно имеет смысл и мне так-же сделать.

Последний раз редактировалось letter; 04.03.2019 в 20:57.
letter вне форума  
Непрочитано 04.03.2019, 21:37  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 722
Сказал спасибо: 363
Сказали Спасибо 803 раз(а) в 377 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

Да, так и следует сделать.
Питание от отдельного источника с напряжением как и у программатора.
Или оба 3.3V, или оба 5V для гарантии согласованности логических уровней,
ну и чтобы не попалить девайсы, что на концах шлейфа

Последний раз редактировалось j-Roger; 04.03.2019 в 21:39.
j-Roger вне форума  
Непрочитано 05.03.2019, 14:31  
letter
Вид на жительство
 
Регистрация: 18.08.2008
Сообщений: 314
Сказал спасибо: 49
Сказали Спасибо 8 раз(а) в 7 сообщении(ях)
letter на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

Кажется удалось залить софт. Собрал схему согласно последнего Вашего предложения, подключил как и говорили - 4-х пиновый вариант с питанием МК от внешнего источника. Светодиоды пока не подключал - только программирующие цепи и питание.
Попробовал сначала при +3.3 В - не прошло. Поставил оба в положение +5V - софт залился успешно, но MPLAB предупредил, что не поддерживает вариант чтобы были включены одновременно и внутренний осциллятор и внутренний MCLR. Не нашёл в настройках MPLAB где это можно изменить и продолжил процесс, получил сообщение "Programmed succeeded".
Дальше пока не стал что-то делать - жду Ваших комментариев. Сделал все скрины, они в приложении.
Миниатюры:
Нажмите на изображение для увеличения
Название: ICDWarn0033.jpg
Просмотров: 0
Размер:	23.4 Кб
ID:	139501   Нажмите на изображение для увеличения
Название: ICDWarn0044.jpg
Просмотров: 0
Размер:	15.6 Кб
ID:	139502   Нажмите на изображение для увеличения
Название: Step_1.jpg
Просмотров: 0
Размер:	71.9 Кб
ID:	139503  

Нажмите на изображение для увеличения
Название: Succeeded.jpg
Просмотров: 0
Размер:	85.3 Кб
ID:	139504  

Последний раз редактировалось letter; 05.03.2019 в 14:51.
letter вне форума  
Непрочитано 05.03.2019, 14:37  
letter
Вид на жительство
 
Регистрация: 18.08.2008
Сообщений: 314
Сказал спасибо: 49
Сказали Спасибо 8 раз(а) в 7 сообщении(ях)
letter на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

ещё один скрин - с первого раза не загрузился. Конечно они не по порядку во времени, но думаю Вы поймёте.
Миниатюры:
Нажмите на изображение для увеличения
Название: oscillator_MCLR.jpg
Просмотров: 0
Размер:	56.9 Кб
ID:	139505  
letter вне форума  
Непрочитано 05.03.2019, 15:21  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 722
Сказал спасибо: 363
Сказали Спасибо 803 раз(а) в 377 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

'Programmed succeeded' обнадёживает.

Можно попробовать подать питание на макет (лучше при отсоединенном ICD2),
нажать и удерживать кнопку SW1 секунд 5. Если все прошло успешно, то должен
мигать, а потом загореться непрерывно светодиод канала #1
j-Roger вне форума  
Непрочитано 05.03.2019, 15:43  
letter
Вид на жительство
 
Регистрация: 18.08.2008
Сообщений: 314
Сказал спасибо: 49
Сказали Спасибо 8 раз(а) в 7 сообщении(ях)
letter на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

Хорошо - подпаяю диоды и попробую работу.
Так непонятно - чего хочет MPLAB ? Раньше мне не попадались такие номера error-ов.
letter вне форума  
Непрочитано 05.03.2019, 16:02  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 722
Сказал спасибо: 363
Сказали Спасибо 803 раз(а) в 377 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Как сделать простой переключатель ?

У этого МК вывод MCLR может конфигурировться как порт ввода (только ввода) или как сигнал внешнего сброса.
В данной схеме вывод MCLR сконфигурирован как порт ввода для кнопки управления (из-за 'нехватки' выводов), и для перевода МК в режим программирования на этот вывод подается повышенное напряжение Vpp.

А предупреждение о том, что ICD2 не поддерживает программирование с отключенным MCLR и внутренним тактовым генератором - это, думается, особенность ICD2, а не среды разработки MPLAB.

На форумах народ упоминает о якобы '...So this is unique with the ICD2'
Тут ничего, к сожалению, не подскажу, т.к. у меня другой инструмент.
j-Roger вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать текущую копию BIOS ART-I Ремонт оргтехники 41 20.02.2018 00:05
Помогите сделать из внешней вай фай антенны nanostation сделать что то типо роутера Александр13 Автоматика и аппаратура связи 34 27.06.2016 00:00
Электронный переключатель topograff007 Электроника - это просто 33 04.11.2014 14:31
Удлинитель для пульта ДУ,как сделать? Zemlyanov Автоматика и аппаратура связи 33 24.12.2012 04:54
Ксенон, из чего сделать цоколь? soladko Источники питания и свет 29 29.04.2009 13:09


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


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