Отговори на тема  [ 42 мнения ]  Отиди на страница Предишна  1, 2, 3
Връзване на бутони към ПИК 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение 
kiiid написа:
Имах намерение да сложа тука схемата която аз ползвам основно в моите продукти. Обаче почнах да се съмнявам, че някои гении в областта може да ми намерят кусурите :lol:


Интересна идея!

Не бях се замислял че хабя 8 пина за 4х4 ;-)
Може би само едно детекторче липсва за натиснат клавиш трябва за да не се хаби ADC-то на халост... Ама тва е елементарно с един FET - BSS138 примерно като евентуално да се пипнат леко съпротивленията така че да се отпушва при кой да е клавиш...


Пон Юни 04, 2007 3:04 pm
Профил
Ранг: Популярен
Ранг: Популярен
Аватар

Регистриран на: Пет Яну 26, 2007 5:05 pm
Мнения: 310
Местоположение: из България
Мнение 
Ето още малко по въпроса с бутоните, и други интересни и ползни неща :)
http://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf


Пон Юни 04, 2007 3:08 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Юни 05, 2006 1:48 pm
Мнения: 4906
Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
Мнение 
Kiid, абе хубава схемка(пести наистина място и портове на микроконтролера)...
ама представи си работиш в среда(индустриална, не в камион ЗИЛ) и около твойто устройство има например телфер, банциг, струг и промишлен бойлер... може и поотделно...
и какво е поведението на тази схема с делителите.....
как бягаш от фалшиво сработване когато до него се комутира периодично няколко киловатов индуктивен товар :?:
хайде сега без излишни страсти обясни как се пазиш от такъв род смущения на другите - нали затова е форум ....все пак

_________________
... ако трети ден не ти се работи... това означава, че е сряда !


Пон Юни 04, 2007 3:11 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Чет Окт 06, 2005 2:06 pm
Мнения: 194
Местоположение: Sofia
Мнение 
Интересното при тази схема е защитата от едновременно натиснати бутони. В случая натискането на два бутона, може да се прочете като трети съвсем различен. Иначе подобна схема бях виждал за четене на бутоните на лицевия панел на видео Сони преди много години. Там проверявах как е реализирана тази защита, и така бяха подбрани резисторите и функциите на бутоните, че като се натиснеха два или повече бутони, сработваше стоп.


Пон Юни 04, 2007 4:54 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Мар 08, 2006 2:12 pm
Мнения: 2017
Местоположение: Котел
Мнение 
Интересно ми е колегата ка софтуерно е реализирал четенето и защитата от смущения. Аз лично съм ползвал такава матрица от 6 бутона само/ в индустриални условия и още настръхвам като си помисля за проблемите които срещнах. 30-тина осветителни тела с по 3 луминисцентни лампи, всичките се палят и гасят едновременно, 10-на метра жица към бутоните... ужас. Успях да ги укротя но с известни компромиси :(


Пон Юни 04, 2007 6:06 pm
Профил
Online
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
.... редактирано от мен ..... няма смисъл от мерене, аз си го знам колко ми е ;)


Пон Юни 04, 2007 8:44 pm
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Сеп 24, 2005 2:00 pm
Мнения: 787
Мнение 
Защитата от смущения при мен се състои в следното:
Първо и много важно е че всички резистори са с 1% толеранс. Иначе не става добре.
От другата страна на схемата на входа на АДЦ-то има едно CLC и другото е софтуер. Оказва се много трудна задача да поствам сорс понеже не е функция а е пръснато на няколко места, в прекъсвания и т.н. но ще се опитам да го обясня:

Имам в глобалните декларации:
const unsigned int vkeys[16] = {xx,xx,xx,xx,xx...}; (дето са ми записани стойностите които получавам от АДЦ-то за всеки от бутоните)
unsigned char kcnt=0;
unsigned char vkeyt=0xff;
unsigned char key=0xff;

На прекъсване от 1.95 мс правя следното:
Чета АДЦ-то, ако е <6 демек нямам натиснат бутон правя vkeyt=key=0xff; и kcnt=0; и излизам.
Ако >=6 сравнявам стойността с тия от таблицата с хистерезис +/- 3, ако не намеря нищо пак имам vkeyt=key=0xff; и kcnt=0; (това е ако има едновременно натиснати бутони)
Ако съм намерил нещо:
if (ix!=vkeyt) {
vkeyt=ix;
kcnt=1;
} else
if (++kcnt>=85) { // 166 ms филтър
key=vkeyt; // това е кода на натиснатия клавиш
vkeyt=0xff;
kcnt=0;
}

после където ми трябва просто чета key и ако е 0xff значи няма натиснат бутон


Ами това е горе-долу. Дано не съм пропуснал нещо.
Не знам как ще работи близо до банциг или бойлер :) не съм пробвал, но за моите цели в камионите си е ок

По принцип ако се пише много мераклийски може да се направи да познава и повече бутони ако по входното напрежение се изчисли съпротивлението а оттам и комбинацията бутони които могат да го произведат но аз не съм се занимавал понеже не ми е трябвало.


Вто Юни 05, 2007 3:08 am
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Сеп 24, 2005 2:00 pm
Мнения: 787
Мнение 
Ето това е на входа на АДЦ-то


Прикачени файлове:
kbd2.jpg
kbd2.jpg [ 9.81 KiB | Прегледано 2397 пъти ]
Вто Юни 05, 2007 4:24 am
Профил
Online
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Това с бобината спасява от високочестотни но при 50/400 хзц каквито са доста в завод ще и е по трудно.

Имам нещо подобно, матрица от 64 бутона, но работи на сканиране, всеки бутон всъщност е група от два бутона, всеки окъсява едно съпротивление като има и едно балансно. Това е система за хотел. Единия бутон е паник, втория е изход от енергоспестител. Бутоните се разпознават по съпротивлението на линията. Линията се захранва с генератор на ток. Разликата в съпротивленията е голяма, 300 Ом до 4 кОм, съпротивление на линията от 10-на до 200 Ом. Значи може да си го представиш като нормална клавиатура матрица, но е свързана към аналогови мултиплексори, единият подава захранване от генератора на ток, а втория затваря към маса. При мен има 32 измервания, усредняване, като преди това има филтър за максимумите, и усредняването е на останалите средни стойности. Та така изпълнено, работи но само в хотел, сигурен съм че ако е в завод ще загине. Като отида до офиса ще постна схемата, но така или иначе не съм голям привържени на тоя метод.
В твоя случй тъй като имаш голеи стойности, проводниците и съпротивлението на бутона са по малка грижа, но пък смущенията са значително по сериозно. В камиона няама от къде да дойдат, той сигурно е дизел, а и бензин да беше този LC филтър на входа те спасява. Радиостанцията ако има такава също не е особен проблем.
Та идеята ми не беше да се заяждам, но заключението ти че няма от къде да дойдат смущения и ако ги има схемата не е наред нещо не ми се понрави.


Вто Юни 05, 2007 8:05 am
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Сеп 24, 2005 2:00 pm
Мнения: 787
Мнение 
Приемам коментара и се извинявам за вчерашното ми избухване :) . Това което ме подразни беше последното ти изречение (не се познаваме лично).

Както казах при мен работи, не знам за другаде. Повече от явно е че зависи от конкретната обстановка. Но ако някой има желание нека опита и при него и после да сподели впечатления
:)


Вто Юни 05, 2007 9:06 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение 
още един вариант.........


Прикачени файлове:
keypad.JPG
keypad.JPG [ 131.42 KiB | Прегледано 1429 пъти ]
Вто Юни 05, 2007 9:31 am
Профил ICQ WWW
Online
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Ей го де е скенера, ама това май не е последна версия, като гледам гоняма генератора на ток тук, но идеята е тая. От CN1 отива към една плтка с конекторите а която е реализирана матрица 8х8, та имам само един RC филтър първи ред като хардуер, и естествено супрестори на входа. Другото нататък не е интересно, до 8 такива скенера се навръзват къмедин бекплейн и си работят ... там бях сътворил простотия, по незнайна причина реших да е паралелна шина, а нито трафика го изисква нито нещо друго :)

Сега погледнах кода, намалил съм измерванията до 8, като се замисля причината май беше във времената за обработка, нямам много спомени вече.


Прикачени файлове:
scaner.pdf [19.52 KiB]
185 пъти
Вто Юни 05, 2007 10:25 am
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 42 мнения ]  Отиди на страница Предишна  1, 2, 3

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 5 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни