Съдържание:

PIC интерфейс на ротационен номер: 7 стъпки
PIC интерфейс на ротационен номер: 7 стъпки

Видео: PIC интерфейс на ротационен номер: 7 стъпки

Видео: PIC интерфейс на ротационен номер: 7 стъпки
Видео: Полезные функции IPhone / Как настроить камеру и делать фото на Айфоне более удобно? 2024, Юли
Anonim
PIC интерфейс на ротационен номер
PIC интерфейс на ротационен номер

Намерих се с изобилие от ротационни телефони. Всъщност те са навсякъде, където погледна. С надеждата някой ден да видя по-малко от тях, започнах да ги разглобявам и използвам повторно частите за други цели.

По някаква причина си научих, че свързването на въртящото се управление с PIC чип би било добра идея. В момента мога да се сетя само за няколко неясни употреби за него и нито една не е особено полезна, но се надявам да направя нещо готино с това в бъдеще.

Стъпка 1: Вземете неща

Отидете да вземете неща
Отидете да вземете неща

Ще ви трябват: 1 - Ротационен телефон 3 - 220 ома резистори 2 - 0,1uF кондензатори 2 - 20K резистор (може да замени всичко между 10K и 47K) 2 - LED1 или кристал1 - Платка1 - 5V източник на захранване1 - Крак или повече от свързващ проводник1 - Отвертка1 - Машина за отстраняване

Стъпка 2: Разделете телефона

Разделете телефона
Разделете телефона
Разделете телефона
Разделете телефона
Разделете телефона
Разделете телефона

Отворете своя ротационен телефон. От вътрешната страна ще забележите няколко основни части; въртящият се циферблат, звъненето, двата жака, превключвателя на куката и основната схема, която обикновено е затворена в нещо подобно на метална кутия.

Ще има четири проводника, вървящи от въртящия се набирач към това нещо, подобно на съединителната кутия. Проводниците трябва да се държат на място с малко повече от затегнати винтове. Разхлабете винтовете и изключете проводниците. След това изключете въртящия се номер от самия телефон.

Стъпка 3: Определете какво правят проводниците

Определете какво правят проводниците
Определете какво правят проводниците
Определете какво правят проводниците
Определете какво правят проводниците

Свържете два светодиода, както е показано на диаграмата по -долу.

Двата бели проводника трябва да са двойката, която затваря превключвателя, която ви позволява да знаете кога циферблатът е завъртян. Синият и зеленият проводник трябва да са двойката, която ви позволява да знаете кой номер е набран. По този начин, когато завъртите циферблата, светодиодът, свързан с белите проводници, трябва да се включи, а когато пуснете циферблата, светодиодът, свързан със сините и зелените проводници, трябва да мига и изключва толкова пъти, колкото номера набрани (вижте видеоклипа). Например, ако наберете 8, светодиодът, свързан към зеления и синия проводник, ще се изключи и включи 8 пъти. Това се случва, защото един от начините за набиране на телефонен номер е бързото прекъсване на връзката колко пъти за цифрата, която се опитвате да наберете. Така че отново, за да наберете 8, трябва бързо да прекъснете връзката 8 пъти.

Стъпка 4: Свържете набирача към PIC чипа

Свържете набирача към PIC чипа
Свържете набирача към PIC чипа
Свържете набирача към PIC чипа
Свържете набирача към PIC чипа

Свържете въртящия се дайлер към PIC чипа, както е показано на диаграмата. Забележете, че чета в състояние на въртящо се набиране чрез използване на RC-синхронизация. С други думи, PIC чипът отчита броя пъти, необходими за разреждане на кондензатор (което се променя, когато се добави съпротивление).

Това е мястото, където 20K резистор идва. Добавянето на това към входа позволява ясно разграничаване на сигнала от затворена и отворена връзка с въртящ се превключвател.

Стъпка 5: Съберете кода

Съберете кода
Съберете кода

За програмиране на чипа използвах средата за разработка MBasic, достъпна от Basic Micro. MBasic, съвсем просто, е вариант на Basic, предназначен за използване с PIC чипове. Той лесно се конвертира в по -универсален (полезен) език. Кодът по същество определя кога някой е завъртял циферблата и след това извършва откриване на ръба на сигнала (определяне на ниско-високи преходи), докато циферблатът се върне в първоначалното си състояние. След като изчисли броя пъти, когато измерва прехода на сигнал, той съответно мига светодиода. Например, ако наберете 3, PIC ще преброи три ниско-високи прехода и след това ще премигне 3 пъти светодиод. Както може би сте предположили, светодиодът не е необходим, за да работи и е само там, за да ви даде видима обратна връзка. Можете да замените всяко изходно устройство, което сметнете за необходимо. ********************* Ето малко код: ********************* CPU = 16F877MHZ = 20CONFIG 16254clicker var wordstartcountin var wordcountclicks var wordrepvar var wordclacker var wordlargefig var wordmain: countclicks = 0repvar = 0 'задава/нулира стойностиhigh B2rctime B2, 1, startcountincountclicks = 0if startcountin се върна до 10 отива на подпрограма, ако има mainto '================ countmeup: висока B1rctime B1, 1, clacker'sets сравни valuegoto countmeuploop' =========== ===== countmeuploop: висока B1 време на работа B1, 1, clicker'проверява стойност на броенеlargefig = clacker + 100'задава стойност за прага, който ще бъде по-голям 'от 0, но по-малък от възможните pin-high стойности, ако bigfig <clicker thencountclicks = countclicks + 1endif'adds 1 стойност всеки път, когато се записва нисък към висок преход високо B2rctime B2, 1, startcountinif startcountin <10 thenif countclicks> 0 thengoto blinkelsegoto mainendifendif 'проверява дали циферблатът е отстъпил обратно към i нормално състояние "ако има и е набран номер, той отива в рутината за LED" в противен случай, ако не е набран номер, той отива в mainclacker = clicker "нулира сравнителната стойност към текущата стойност на щифта, за да преброи meuploop'no паузи на всички в тази рутина ! '================ мигач: repvar = repvar + 1'брои всяко повторение на тази рутина висока B3 пауза 1000 ниска B3пауза 1000' мига светодиода, ако repvar = countclicks thenrepvar = 0 goto mainendif' ако повторения, равен на броя пъти, когато светодиодът трябва да мига, след това се връща към основната рутина, за да преминете

Стъпка 6: Тестване

Тестване
Тестване

Ако сте направили всичко същото като мен, трябва да работи (вижте видеото).

Ако не работи, уверете се, че сте свързали всичко правилно и кодът е копиран правилно. Също така бъдете сигурни, че вашият резонатор (или кристал) е 20 MHZ. Ако сте написали свой собствен код, уверете се, че няма паузи в рутината, която проверява за ниско-високи преходи.

Стъпка 7: Преминете

Надхвърля
Надхвърля

Помислете за някаква друга употреба на въртящия се циферблат, различна от мигането на светодиод.

Препоръчано: