PIC16F72-i/sp нужно собрать таймер

Здесь обсуждаем устройства на МК и программы для них
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение rhf-admin »

По-поводу программатора, - с LPT-портом всё гораздо проще, чем с COM.
С COM-портом основная проблема в том, что у него всего 3 линии на выход (TxD, RTS, DTR), а нам надо управлять 4-мя сигналами (Data_Out, Vpp, Vdd, Clock), поэтому обычно все извращаются как могут, чтобы завязать Vpp и Vdd на один сигнал (я так вообще просто линией Vpp не управляю, благо большинству современных pic-ов на это плевать).
У LPT-порта линий - куча и такой проблемы нет. Единственное, что нужно сделать - умощнить эти линии, через транзисторы, логику или ещё как-то.

Недавно тут рассказали про чудную прогу - PICPGM, так вот, там в настройках железа для всех типов программаторов указано, какие ноги используются. С такой инфой задача сильно упрощается - выбираешь любой программатор из списка, который использует ноги с номером больше девятки (чтоб это не оказался случайно сериальный программатор), смотришь какие ноги он юзает, умощняешь через транзисторы ноги, которые используются на выход, и получаешь в итоге совместимый девайс. Я так пробежался по списку глазами, можно сваять, например, аналог "Tait classic PIC programmer" или "Microchip AN589". В последнем, ещё используется управление включением/отключением некоторых ног, но это всё тоже можно на транзисторах наваять.
А можно, кстати и в инете, наверное, оригинальные схемы этих девайсов найти.
С уважением, администрация сайта.
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Да, я натыкался на эти схемы, только засада с микросхемой 74ls244, или её аналогами - купить сложно, старых материнок нет. Есть принтер Epson, кажется - LS100, хотя и могу ошибиться с маркой, матричный. Сейчас я от него далеко. Может в нем быть такая микруха или аналог?
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение rhf-admin »

:shock: Засада с логикой?!?!?!
Да она везде где угодно может быть. Это же логика, ширпотреб. Напиши мне адрес в личку, я тебе маленькое ведёрко таких микрух пришлю. :lol:
С уважением, администрация сайта.
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Сначала таблеток от жадности высылайте :D , а то мне ведерко маленьким покажется :lol2:
За отзывчивость - спасибо, а по поводу "где угодно" - хорошо бы в принтере нашлась. Вероятно, вечером туда заехать будет оказия.
Тут же ситуация с доставкой сложная, то поезда не ходят, то переправу штормит. Что бы "там в зомбоящике" ни говорили, моста не будет, а самолетами почту не особо дёшево получится.
Я тут вот в каком направлении задумался - как эти шинные формирователи рассыпухой повторить?
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Вот, наваял схемку в протеусе 7,24.
На схеме указаны действительные соединения клавиатуры, а также светодиоды (только насчёт их полярности я не уверен) - это всё верхняя часть схемы (клавиатура слева)
Справа - это я таку вижу свой трёх-разрядный семисегментный индикатор ("я - художник, я так вижу" :) )
Внизу слева - типа симистор управляет сварочным трансформатором :oops:
Разъём возле МК - это разъём к клавиатурно-индикаторному блоку, теперь на нём есть человеческие номера пинов, а не "менее левый" ;) , всё по отзвоненной схеме.
Возле него есть кнопка Door - это микрик открытия двери, из которого я планирую сделать педаль запуска сварочного процесса.
Сам МК на схеме указан 16F873, так как в протеусе нет модели 16F72, как сказано где-то в интернетах: "уж очень древний, и нигде более не используется, и модели никогда не будет" :cry: , а по пинам и функционалу 873-и наиболее близкий аналог 72-го

Вот теперь, я так думаю, самое время Вам давать мне подсказки - как в этих условиях добиться поставленной задачи. Особенно интересует работа с клавиатурой (светодиоды на ней меня не интересуют совсем, могу выпаять нафиг). Так как скачанный мной компилятор Бейсика для ПИКов подразумевает стандартную ("квадратно-гнездовую") клавиатуру, то к нему обращаться бессмысленно, так что думаю ваять прямо на ассемблере. Сижу вот, книжки читаю, но в голове - каша, а папка "Учёба" с примерами работы с КР580-ым осталась на нетбуке :( Замкнутый круг, блин
Вложения
LED3_3.ZIP
(25.25 КБ) 439 скачиваний
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение rhf-admin »

Тут же ситуация с доставкой сложная, то поезда не ходят, то переправу штормит.
:lol: Сложная ситуация с доставкой - в Анадыре, туда дороги по суше вообще нет (если Яндекс-карты нам не врут), но письмо с наложкой туда стоит почти столько же, сколько и по остальной России, значит и обычное письмо, скорее всего, тоже. Мне тут один чел в прошлом году из Львова письмо с платами прислал и то дошло. Так что это всё фигня.
Микрух этих у меня штук 15, только корпуса - soic. Если всё-таки надо - предложение в силе.
И ещё надо текстолит, принтер, утюг и хлорное железо (в сети, кстати, есть рецепты с солью, но я не пробовал, ничего сказать не могу). Лучше всё же собирать это всё не навесным монтажом, а на вытравленной специально под это дело плате.
Начать изучение программирования пиков можно отсюда. Кроме этого вот здесь полно примеров программ для пиков (все на асме, я для контроллеров других языков не признаю).
С уважением, администрация сайта.
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Сплошное расстройство - в принтере куча микрух, а пробивается только память (псевдостатическая - даже не знал о таком типе), драйвер шагового двигателя и сборки Дарлингтона. 64-ногий паук не опознан, нечто в панельке (ПЗУ?) на 40 ног - неопознано, контроллер (soic, ноги считать не стал) не опознан. Может, кто сталкивался, модель LQ-100+ ?
Админ, узнаю стоимость доставки из Уфы в Алушту - скину адрес (уж за доставку-то мне остатки гордости заставят раскошелиться ;) ).
А с солью и купоросом я травил платы ещё тогда, когда о лазерных принтерах у нас рассказывали историю, что луч изображение именно выжигает, потому и листы горячие вылазят :mrgreen:
Хотя soic и SMD тогда тут не использовали, а словосочетание "паяльная станция" вызывало образ между автомобиле-сборочным роботом и Звездой Смерти :lol2:
Вы удивитесь, но я никогда в жизни не травил хлорным железом :oops:
Статью о программировании я прочитал всю, потому здесь и зарегистрировался - процесс человечески расписан. Ну и ещё несколько книг качнул, оттого и каша в голове. Сейчас ещё до раздела с программами доберусь...
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Не-не-не, не надо думать, что я исчез и потерял интерес к устройству ;)
Просто выходные - на огороде, а потом в понедельник, 6-го числа, у нас тут маленькое семейное торжество было - 13-я годовщина свадьбы - так я такой порядок навёл, что было жалко снова расставлять аппаратуру :lol2:
Но я не бросил изучение вопроса, я изучал и программирование, и способы заставить Протеус зохавать фейковый лицензионный ключ, и ещё многое (особенно доставляет эпопея с интернетом, но это - совсем другая история).
Итак, к текущему моменту я составил таблицу соответствия клавиатурных комбинаций. То есть, насколько я понимаю работу клавиатуры, если на одном выводе порта выставить единицу, то на каком-то другом выводе порта можно слушать нажатие клавиши в виде появления на таком порту этой самой единицы (с подавлением дребезга, конечно), а если нажатия нет, то можно послушать другой вывод порта, и ещё один, и т.д., после чего сбросить поднятый вывод и поднять другой, а уж по нему снова слушать отдельные выводы.
Ниже попытаюсь изобразить таблицу, в которой имеется ввиду следующее: в шапке перечисляются выводы порта (RB1-RB7), которые я буду слушать на предмет нажатия клавиши (0-9, *, # и "Дверь", которая на выложенной ранее схеме называется "Door" - это будет педаль запуска процесса сварки); в строках в заголовке идёт вывод порта, который я буду поднимать для прослушивания клавиатуры (естественно, поднятый порт я слушать не буду :) ). На пересечении показаны кнопки, при нажатии которых в существующей топологии происходит передача сигнала. Также указаны светодиоды, которые должны гаснуть, если я правильно определил полярность включения, либо наоборот - гореть, если я с полярностью напутал :oops: .Данный геморрой делаю для максимальной утилизации имеющегося хлама при минимальном вмешательстве в имеющуюся плату.

__________rb1___rb2___rb3__rb4__rb5__rb6__rb7__СД
rb1_____________2__________5__ Door__________ Work
rb2________2__________3____1_________0___4___Taken
rb3/PGM________3__________6_________#_______Power
rb4________5____1_____6__________________8___Zone1
rb5______Door________________________*___9___Zone3
rb6/PGC_________0_____#________*_________7___Zone4
rb7/PGD________ 4__________8___ 9____7________Zone2

Слушать___3____5_____3____4____3____4____4
******************Подчёркивания добавлены в попытке выровнять отображение текста*********************

Вот это и напрягает, неравномерность числа прослушиваний. То есть, если я поднимаю rb2, то мне придётся слушать пять портов (1, 3, 4, 6, 7), а при поднятии rb1 надо слушать всего 3 (2, 4, 5).
Неужели придётся настолько код раздвигать??? Не циклами гонять 4 порта по 3 прослушки, а отдельными командами поднимать каждый порт и слушать ответы по соответствующим?

И ещё вопрос - а правильно ли я с полярностью светодиодов определился? Ведь они должны гореть при сбросе соответствующего порта (соответственно приложенной схеме). Либо я перепутал, и тот потенциал на "среднем верхнем" выводе разъёма (№ 8 по схеме) является "хвостом" от единицы на соответствующем порту, а где-то на плате неотслеженная дорожка имеет ещё один резистор на землю?
Я к чему - от этих светодиодов я мог бы и избавиться, так как мне же нужно присобачить сюда три разряда моего "индикатора", а портов уже "маловато будет", на порте С свободных (читай - непонятно куда идущих) линий всего 5 штук, да ещё на порте А 5 линий, но с теми же проблемами. Под проблемой я имею ввиду тот факт, что остальная часть платы для меня непонятна напрочь - там и детали сопряжения с телефонной линией, и охранные шлейфы, и реле - дорожек не видно, а обозначений оооочень мало. И очень мне бы хотелось использовать возможности порта В по управлению этими светодиодами для сработки моего индикатора, а уж 3 линии от какого-нибудь другого я отрезать смог бы.
То есть, программа могла бы чуть дольше опрашивать линии, на которых мне нужен был бы горящий светодиод нужного индикатора, и чуть быстрее - линии с погашенным сегментом (принцип динамической индикации я себе представляю, в общих чертах), а нужный разряд выбирать другим портом (тот же С рассмотреть немного пристальнее, оставив только микруху памяти и баззер в штатной распайке.
Но вот как это организовать - пока не понимаю (или уже заговенья дождаться? без пол-литры тут не разобраться ;) )
Да, вот ещё, во вложении - та же схема в формате bmp, для не имеющих нужной версии Протеуса. Буду благодарен за дельные советы - в каком направлении рыть дальше, просим-прооосим :clapping:
Вложения
LED3_3_BMP.ZIP
схема в формате bmp
(14.1 КБ) 406 скачиваний
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение rhf-admin »

А я тут всю неделю пытался сваять этот AN589. Так и не заработал. Сначала пробовал микруху поменять, думал может дохлая. Потом пробовал в режиме теста в PICpgm посмотреть мультиком сигналы. :( Странно, но на обоих моих LPT-портах ничего с сигналами не происходит как ты галочки не выставляй. Они не меняются вообще. Причём то ли тест не работает, то ли что-то непонятное, поскольку даже в режиме теста, на линии с которой должны идти клоки висит 3,5 вольта. Как бы может там клоки и идут, поэтому я такую напругу вижу. :?
С уважением, администрация сайта.
Аватара пользователя
dionisiu
Читатель
Читатель
Сообщения: 35
Зарегистрирован: 24 мар 2015, 10:40
Откуда: ЮжныйБерегКрыма

Re: PIC16F72-i/sp нужно собрать таймер

Сообщение dionisiu »

Ого, целую неделю посвятить устройству??? :clapping2:
Так, может, клоки идут с высокой частотой, отсюда и 3.5 В (типа, как у меня - прыгающее напряжение на клавиатурных выводах и на микруху памяти)? Осциллографом посмотреть бы, есть там меандр, или нет? Заодно и форму наведённого сетевого напряжения разглядеть можно ;)
Мне нашли СОМ-разъём :!: Со старой работы человек сегодня отзвонился, во вторник (у нас тут понедельник по ещё украинской традиции выходным объявили ;) ) принесёт. Надеюсь, всё же "мама" будет, а то "папу" я и сам у себя в хламе нашел :) (не я с ним разговаривал, жена... но она не поняла, а сейчас уже перезванивать несколько поздновато).
А раз так, то возвращаюсь я к RCD-программатору, тем более, что в хламе нашел несколько стабилитронов советских, завтра буду уже справочники рыть - какой из них на какую напругу.

Кстати, несколько офф-топный вопрос: в коробочке нашлись несколько одинаковых деталей без каких-либо буквенно-цифровых обозначений, имеют два вывода, корпус - такой себе бочонок из коричневого пластика, примерно 4 мм диаметром, примерно 6 мм в высоту, имеет небольшое сужение (как усечённый конус), возле одного вывода есть белая точка. Если его звонить плюсом мультиметра на белую точку, а минусом - на второй вывод, при пределе 2000 Ом (у меня обозначен в качестве проверки диодов) показывает от 494 до 483 Ом (3 испытания), а при смене полярности и переводе на предел 2 МОм (на других пределах не звонится), так вот, при смене полярности мультиметр выдаёт весьма странную последовательность: сначала "1" (типа - бесконечность), потом "-1" (это я про старший из 4-х разрядов!!!), потом - снова "1", ещё раз "-1", далее мелькает значение от 153 до 132 (в серии из трёх испытаний) и замирает на "1" в старшем разряде (в смысле - бесконечность). Под сериями испытаний я подразумеваю, что одну детальку я тестил трижды.
И что же это может быть, если всё лежит в коробочке, которую батя подписал "Стабилитроны", а?
Ответить

Вернуться в «Устройства на микроконтроллерах»