Кодовый замок на pic16f628a

Кодовый замок на atmega8 схема. кодовый замок на микроконтроллере avr attiny2313

Кодовый замок на микроконтроллере. Схема и описание.

Данный кодовый замок на микроконтроллере собран на достаточно простом микроконтроллере AVR ATtiny13. Его можно применить для ограничения допуска в различные складские помещения, запирание ворот гаража и дверь дома, а также для включения различных приборов, включение которых нужно ограничить.

Принцип работы

Работа замка на микроконтроллере основана на поочередном вводе трех чисел. Размер каждого числа может быть в диапазоне от 0 до 255. Это в свою очередь повышает уровень секретности кодового замка по сравнению с другими замками, у которых каждое секретное число имеет размер от 0 до 9.

В том случае если введенная последовательность этих трех чисел совпадает с тремя числами, которые внесены в память микроконтроллера кодового замка, то на выходе (вывод 3) появится управляющий сигнал ( лог.1),   на 15 секунд  загорится светодиод HL4 сигнализируя о правильности ввода и сработает реле К1 управляющее исполнительным механизмом замка. По истечении 15 секунд на выводе 4 микроконтроллера появится лог. 0 и замок перейдет в первоначальное состояние ожидания.

Управление работой кодового замка осуществляется всего двумя кнопками, руководствуясь только индикацией светодиодов. Причем ввод секретного кода осуществляется только одной кнопкой SB2, которая находится на наружной панели замка. Вторая кнопка SB1 предназначена для программирования, и она расположена на самой плате.

Этапы управления кодовым замком

Внесение в энергонезависимую память микроконтроллера три кодовых числа.

Рассмотрим это на конкретном примере. Допустим, нам нужно задать следующий секретный код: первая цифра 8, вторая цифра 12, третья цифра 9.  Для этого подаем  питание на устройство, затем нажимаем и удерживаем обе кнопки (SB1 и SB2). После этого отпускаем кнопку SB1, и как только начал мигать светодиод HL1 отпускаем и кнопку SB2. После этих манипуляций светодиод HL1 будет гореть постоянно, а светодиоды HL2 и HL3 не будут гореть. Это состояние светодиодов говорит о том, что устройство перешло в режим программирования.

Теперь чтобы записать первое число нам нужно нажать и удерживать кнопку SB2, при этом все три светодиода начнут мигать. Нужно отсчитать необходимое количество вспышек (в нашем случае это 8) и отпустить кнопку. После этого, в подтверждении правильности введенного числа, светодиоды промигают такое же количество раз (8 раз). Все, первое число записано. Далее загорается светодиод HL2 – напоминая нам, что необходимо записать второе число.

Поступаем точно так же как и с записью первого числа: нажимаем и удерживаем кнопку SB2 и отсчитываем необходимое число вспышек светодиодов (в нашем примере это 12), отпускаем кнопку и проверяем правильность ввода по повторным вспышкам. Затем загорается светодиод HL3 для третьего числа, и повторяем туже процедуру и для третьего числа (число 9).

После того так мы записали в память микроконтроллера все три числа и для выхода из режима программирования нужно нажать кнопку SB1.

 Набора секретного кода

Рассмотрим так же это на примере. До этого мы записали секретный код 8-12-9. Для ввода вначале нажимаем кнопку SB1 и отпускаем ее сразу, после того как загорится светодиод HL1, тем самым переводим наш замок в режим ввода кода. Свечение светодиода HL1 свидетельствует, что нужно ввести первую цифру. Процедура ввод цифр  аналогична тому, как вводились цифры при программировании. То есть, нажимая на кнопку SB1, отсчитываем необходимое количество, после чего отпускаем кнопку и наблюдаем подтверждение наборной цифры путем мигания светодиодов. Затем переходим ко второй и третьей цифре.

В том случае если все три цифры секретного кода введены верно, сработает реле и на 15 секунд включится светодиод HL4, светодиоды HL1,HL2,HL3 будут светиться в режиме бегущих огней.

Для ввода секретного кода предоставляется три попытки. Если в третий раз код введен неверно, возможность ввода блокируется на 2,5 минуты. По прошествии этого времени замок снова будет готов к вводу кода.

 При программировании микроконтроллера следует выставить следующие фьюзы:

  • CKDIV8 = 0
  • BODLEVEL0 = 0
  • SPMEN = 0

Скачать прошивку (1,3 Mb, скачано: 1 613)

Оценка ключевого значения

Определение глобальной переменной

Функция оценки ключевого значения Getch

Значение заголовка

Зачем вводить файлы заголовков, вводить модули в MCU и вводить функции, вы должны вводить файлы заголовков, потому что есть функции, какой формат использовать и какие MCU определены в файлах заголовков, 24c02, например, I2C.H

Название декларации Введите заголовочный файл reg52 и введите контакты Определите контактный разъем микросхемы 24c02, контактный вывод тактового сигнала SCL 2.1, контактный вывод данных SDA 2.0 Определить связанные функции определение конца endif

методы typedef и sbit

typedef используется для упрощения определения переменных, typedef unsigned int u16, тогда u16 a эквивалентен unsigned int a sbit определяет имя контакта Конечно, файл заголовка модуля также может быть объявлен как таковой, но это не рекомендуется, чтобы избежать ненужных проблем. Рекомендуется использовать полное имя и определять его только в основной функции, но это определение файла заголовка в порядке. из

Решение по значению ключа 0xeb

Итак, как появился 0xeb, мы видим принципиальную схему, Теперь я установил P17 на высокий уровень, который установлен на 1, когда я нажимаю s14, p17 и p10 проводят, p10 получает высокий уровень от p17 В это время микроконтроллер может оценить, если p10 = 1: XXX, и в действительности мы обычно устанавливаем P14 на P17 на 1, P10 на P13 на 0, то есть P1 составляет 0x0f, oxfo преобразуется в двоичную систему, которая: 0000 1111; Очевидно, тот же уровень временно изменился из-за ключа для изменения значения P1.

Принцип работы

Работа замка на микроконтроллере основана на поочередном вводе трех чисел. Размер каждого числа может быть в диапазоне от 0 до 255. Это в свою очередь повышает уровень секретности кодового замка по сравнению с другими замками, у которых каждое секретное число имеет размер от 0 до 9.

В том случае если введенная последовательность этих трех чисел совпадает с тремя числами, которые внесены в память микроконтроллера кодового замка, то на выходе (вывод 3) появится управляющий сигнал (лог.1), на 15 секунд загорится светодиод HL4 сигнализируя о правильности ввода и сработает реле К1 управляющее исполнительным механизмом замка. По истечении 15 секунд на выводе 4 микроконтроллера появится лог. 0 и замок перейдет в первоначальное состояние ожидания.

Управление работой кодового замка осуществляется всего двумя кнопками, руководствуясь только индикацией светодиодов. Причем ввод секретного кода осуществляется только одной кнопкой SB2, которая находится на наружной панели замка. Вторая кнопка SB1 предназначена для программирования, и она расположена на самой плате.

Принцип работы

Работа замка на микроконтроллере основана на поочередном вводе трех чисел. Размер каждого числа может быть в диапазоне от 0 до 255. Это в свою очередь повышает уровень секретности кодового замка по сравнению с другими замками, у которых каждое секретное число имеет размер от 0 до 9.

В том случае если введенная последовательность этих трех чисел совпадает с тремя числами, которые внесены в память микроконтроллера кодового замка, то на выходе (вывод 3) появится управляющий сигнал (лог.1), на 15 секунд загорится светодиод HL4 сигнализируя о правильности ввода и сработает реле К1 управляющее исполнительным механизмом замка. По истечении 15 секунд на выводе 4 микроконтроллера появится лог. 0 и замок перейдет в первоначальное состояние ожидания.

Управление работой кодового замка осуществляется всего двумя кнопками, руководствуясь только индикацией светодиодов. Причем ввод секретного кода осуществляется только одной кнопкой SB2, которая находится на наружной панели замка. Вторая кнопка SB1 предназначена для программирования, и она расположена на самой плате.

Работа кодового замка на PIC12F675

Для записи 4 цифр секретного кода сперва необходимо нажать кнопку “CODE” и удерживать ее до того момента когда загорится светодиод LED. Затем поочередно нужно набрать 4 цифры секретного кода. По завершению ввода, данный код будет записан в энергонезависимую память микроконтроллера.

Теперь если набрать данный код на клавиатуре произойдет включение реле на 5 секунд. При десятикратной неверно набранном секретном коде прозвучит сигнал тревоги.

Работаю я электромонтером в районе Крайнего Севера. Зимой у нас всегда возникала проблема, замерзает замок на входе в электроцех. И вот попался мне на глаза журнал «Радио» №5 за 2008 год. Там была опубликована статья Е. Переверзева «Цифровой кодовый замок».Решил и сделал. Перерисовал печатку из журнала. Спаял схему.Залил прошивку и схема заработала сразу, хотя это моя первая схема на микроконтроллере.

Электронный кодовый замок — принципиальная схема

К561ИЕ8, К561ИЕ9, К176ИЕ8, CD4022CD4017CD4017К561ИЕ8, К176ИЕ8EL4017AEскачайте тут

   Итак, работа схемы электронного кодового замка очень проста. При вводе правильного четырёхзначного последовательного кода на выходе микросхемы (Q4) появляется логическая единица, которая приводит к открыванию замка. При наборе неверной цифры (кнопки S5-S10), не являющаяся частью кода, схема переходит в исходное состояние, то есть обнуляется через 15 вывод микросхемы (RESET). При нажатии S1 единичное состояние на третьем выводе Q0 микросхемы поступает на вход полевого транзистора VT1 открываясь он поддает напряжение на вывод 14 (CLOCK) который переключает единичное состояние на второй вывод Q1, потом при последовательном нажатии кнопок S2, S3, S4, сигнал переходит на Q2, Q3, и в конечном итоге при вводе правильного кода с выхода Q4 сигнал открывает транзистор VT2 на короткое время, определяемое емкостью конденсатора С1, включая реле К1 который своими контактами подает напряжение на исполнительное устройство (электрозамок, защелка, или автомобильный «активатор” (актуатор)).

О моей сборке

Версия печатки из статьи Е. Переверзева

Саму схему, кнопки «Открытие», «Закрытие», блок питания разместил к коробочке из под блока управления вакуумным выключателем.

Блок питания использовал от старого сканера. Соленоид использовал от старой электоролаборатории, один минус — соленоид потребляет 1,5 А.

Клавиатуру взял от старого телефона.


Спасибо за внимание!
Игорь Котов,
главный редактор журнала «Датагор»

Оригинальная статья из «Радио»: ▼

20/12/11 ️ 512,66 Kb ⇣ 111

Здравствуй, читатель!
Меня зовут Игорь, мне 45, я сибиряк и заядлый электронщик-любитель.
Я придумал, создал и содержу этот замечательный сайт с 2006 года.Уже более 10 лет наш журнал существует только на мои средства.

Хорош! Халява кончилась. Хочешь файлы и полезные статьи — помоги мне!

Этот электронный кодовый замок можно использовать для открытия электромеханического затвора. Функциональность реализована в программном обеспечении. Реле управления замком включается (обычно, чтобы открыть дверь) в течение нескольких секунд, если кто-то вводит правильный код.

Ток потребления схемы является низким, потому что микроконтроллер спит большую часть времени, и просыпается только для обработки нажатий клавиш. Контроллер 16F628A уже работает от внутреннего RC генератора, так что никаких внешних кристаллов не требуется. Каждое нажатие на клавишу дублируется звуковым сигналом зуммера BM1. Зуммер используется с внутренним генератором. Состояние прибора высвечивается на LCD индикаторе типа 16×02 с контроллером HD44780. В замке используется стандартная матричная клавиатура с количеством столбцов 3 и количеством строк 4. Схема замка на рисунке ниже.

Для того чтобы открыть замок введите правильный код и используйте «#» в качестве клавиши «ввод». Первоначальный код 623342. Код может быть изменен в любое время после ввода действующего кода. Клавиша «*» используется для изменения кода. Введите фактический код, и нажмите «*». Если код введен правильно, индикатор изменения кода HL1 загорится, после этого введите новый код дважды подтверждая ввод клавишей «#». Так же можно изменить длину кода.

Электронные замки бывают разных типов, в этой статье представлен еще один интересный вариант. Отличие этой конструкции в том, что клавиатура использует толко один вывод микроконтроллера. Для определения нажатой кнопки используется АЦП. Этот способ может использоваться только с микроконтроллерами, имеющими встроенный АЦП, в этой схеме использован PIC12F675.

Как это работает

Нажмите 4 кнопки в определенной последовательности, и реле замкнет цепь замка примерно на 5 секунд. Но снаала нужно запрограммировать код следующим образом: нажать и держать кнопку CODE, пока не загорится светодиод. Когда светодиод загорится, введите свой код. После введения четвертой цифры код запишется в eeprom, и включить реле будет возможно только используя этот код. Если при вводе кода ошибиться 10 раз, то включится второе реле, отвечающее за сигнал тревоги.

Распознавание кнопок с помощью АЦП

Как видно из схемы, клавиатура собрана из набора кнопок и резисторов. Клавиатура подключена только тремя проводами:, +5V, земля и сигнальный провод, подключенный к выводу 7 контроллера. Резисторы подключены последовательно, и в каждой точке соединения существует свое напряжение. Когда мы нажимаем кнопку, мы подаем определенное напряжение на вывод 7 микроконтроллера. Вывод 7 сконфигурирован как вход и подключен к модулю АЦП контроллера. PIC12F675 имеет 10-битный АЦП и диапазон значений варьируется от 0 до 1023. Так, если мы имеем 12 кнопок, диапазон между ними составляет 85 единиц. Кнопка “0” лежит в диапазоне 0-85, Кнопка “1” 86-170, Кнопка “2” 171-256 … и т.д.

Этапы управления кодовым замком

Рассмотрим это на конкретном примере. Допустим, нам нужно задать следующий секретный код: первая цифра 8, вторая цифра 12, третья цифра 9. Для этого подаем питание на устройство, затем нажимаем и удерживаем обе кнопки (SB1 и SB2). После этого отпускаем кнопку SB1, и как только начал мигать светодиод HL1 отпускаем и кнопку SB2. После этих манипуляций светодиод HL1 будет гореть постоянно, а светодиоды HL2 и HL3 не будут гореть. Это состояние светодиодов говорит о том, что устройство перешло в режим программирования.

Теперь чтобы записать первое число нам нужно нажать и удерживать кнопку SB2, при этом все три светодиода начнут мигать. Нужно отсчитать необходимое количество вспышек (в нашем случае это 8) и отпустить кнопку. После этого, в подтверждении правильности введенного числа, светодиоды промигают такое же количество раз (8 раз). Все, первое число записано. Далее загорается светодиод HL2 – напоминая нам, что необходимо записать второе число.

Поступаем точно так же как и с записью первого числа: нажимаем и удерживаем кнопку SB2 и отсчитываем необходимое число вспышек светодиодов (в нашем примере это 12), отпускаем кнопку и проверяем правильность ввода по повторным вспышкам. Затем загорается светодиод HL3 для третьего числа, и повторяем туже процедуру и для третьего числа (число 9).

После того так мы записали в память микроконтроллера все три числа и для выхода из режима программирования нужно нажать кнопку SB1.

Набора секретного кода

Рассмотрим так же это на примере. До этого мы записали секретный код 8-12-9. Для ввода вначале нажимаем кнопку SB1 и отпускаем ее сразу, после того как загорится светодиод HL1, тем самым переводим наш замок в режим ввода кода. Свечение светодиода HL1 свидетельствует, что нужно ввести первую цифру. Процедура ввод цифр аналогична тому, как вводились цифры при программировании. То есть, нажимая на кнопку SB1, отсчитываем необходимое количество, после чего отпускаем кнопку и наблюдаем подтверждение наборной цифры путем мигания светодиодов. Затем переходим ко второй и третьей цифре.

В том случае если все три цифры секретного кода введены верно, сработает реле и на 15 секунд включится светодиод HL4, светодиоды HL1,HL2,HL3 будут светиться в режиме бегущих огней.

Для ввода секретного кода предоставляется три попытки. Если в третий раз код введен неверно, возможность ввода блокируется на 2,5 минуты. По прошествии этого времени замок снова будет готов к вводу кода.

При программировании микроконтроллера следует выставить следующие фьюзы:

  • CKDIV8 = 0
  • BODLEVEL0 = 0
  • SPMEN = 0

(1,3 Mb, скачано: 1 566)

О моей сборке

Версия печатки из статьи Е. Переверзева

Саму схему, кнопки «Открытие», «Закрытие», блок питания разместил к коробочке из под блока управления вакуумным выключателем.

Блок питания использовал от старого сканера. Соленоид использовал от старой электоролаборатории, один минус — соленоид потребляет 1,5 А.

Клавиатуру взял от старого телефона.


Спасибо за внимание!
Игорь Котов,
главный редактор журнала «Датагор»

Оригинальная статья из «Радио»: ▼

20/12/11 ️ 512,66 Kb ⇣ 111

Здравствуй, читатель!
Меня зовут Игорь, мне 45, я сибиряк и заядлый электронщик-любитель.
Я придумал, создал и содержу этот замечательный сайт с 2006 года.Уже более 10 лет наш журнал существует только на мои средства.

Хорош! Халява кончилась. Хочешь файлы и полезные статьи — помоги мне!

Приводим следующую простую схему кодового замка на микроконтроллере PIC16F628, который позволяет вводить четырехзначный код одной кнопкой, пользуясь индикацией всего одного светодиода. Кнопка может быть размещена одна сама по себе или же включена в состав блока кнопок для придания большей секретности.

Эта простая схема позволяет осуществлять контроль над различными вещами, например, импульс для открытия автоматических ворот, включение и выключение освещения, доступ в помещения, в системе безопасности снятие и постановка на охрану и так далее.

При правильно введенном коде, срабатывает . В зависимости от того какой режим работы реле выбран, оно либо активируется на определенный период либо только включается, и выключается при повторном наборе кода.

Этапы управления кодовым замком

Рассмотрим это на конкретном примере. Допустим, нам нужно задать следующий секретный код: первая цифра 8, вторая цифра 12, третья цифра 9. Для этого подаем питание на устройство, затем нажимаем и удерживаем обе кнопки (SB1 и SB2). После этого отпускаем кнопку SB1, и как только начал мигать светодиод HL1 отпускаем и кнопку SB2. После этих манипуляций светодиод HL1 будет гореть постоянно, а светодиоды HL2 и HL3 не будут гореть. Это состояние светодиодов говорит о том, что устройство перешло в режим программирования.

Теперь чтобы записать первое число нам нужно нажать и удерживать кнопку SB2, при этом все три светодиода начнут мигать. Нужно отсчитать необходимое количество вспышек (в нашем случае это 8) и отпустить кнопку. После этого, в подтверждении правильности введенного числа, светодиоды промигают такое же количество раз (8 раз). Все, первое число записано. Далее загорается светодиод HL2 – напоминая нам, что необходимо записать второе число.

Поступаем точно так же как и с записью первого числа: нажимаем и удерживаем кнопку SB2 и отсчитываем необходимое число вспышек светодиодов (в нашем примере это 12), отпускаем кнопку и проверяем правильность ввода по повторным вспышкам. Затем загорается светодиод HL3 для третьего числа, и повторяем туже процедуру и для третьего числа (число 9).

После того так мы записали в память микроконтроллера все три числа и для выхода из режима программирования нужно нажать кнопку SB1.

Набора секретного кода

Рассмотрим так же это на примере. До этого мы записали секретный код 8-12-9. Для ввода вначале нажимаем кнопку SB1 и отпускаем ее сразу, после того как загорится светодиод HL1, тем самым переводим наш замок в режим ввода кода. Свечение светодиода HL1 свидетельствует, что нужно ввести первую цифру. Процедура ввод цифр аналогична тому, как вводились цифры при программировании. То есть, нажимая на кнопку SB1, отсчитываем необходимое количество, после чего отпускаем кнопку и наблюдаем подтверждение наборной цифры путем мигания светодиодов. Затем переходим ко второй и третьей цифре.

В том случае если все три цифры секретного кода введены верно, сработает реле и на 15 секунд включится светодиод HL4, светодиоды HL1,HL2,HL3 будут светиться в режиме бегущих огней.

Для ввода секретного кода предоставляется три попытки. Если в третий раз код введен неверно, возможность ввода блокируется на 2,5 минуты. По прошествии этого времени замок снова будет готов к вводу кода.

При программировании микроконтроллера следует выставить следующие фьюзы:

  • CKDIV8 = 0
  • BODLEVEL0 = 0
  • SPMEN = 0

(1,3 Mb, скачано: 1 566)

Приводим следующую простую схему кодового замка на микроконтроллере PIC16F628, который позволяет вводить четырехзначный код одной кнопкой, пользуясь индикацией всего одного светодиода. Кнопка может быть размещена одна сама по себе или же включена в состав блока кнопок для придания большей секретности.

Эта простая схема позволяет осуществлять контроль над различными вещами, например, импульс для открытия автоматических ворот, включение и выключение освещения, доступ в помещения, в системе безопасности снятие и постановка на охрану и так далее.

При правильно введенном коде, срабатывает . В зависимости от того какой режим работы реле выбран, оно либо активируется на определенный период либо только включается, и выключается при повторном наборе кода.

Кодовый замок для гаража

Данный кодовый замок имеет всего одну кнопку, которая монтируется на двери гаража.Кодовый замок построен на микроконтроллере ATtiny13, он дешевый и широко распространен. Применение ATtiny2313 означало, что я должен был весь код уместить в 1024 байт.

После подачи питания устройство ждет нажатия кнопки, после первого нажатия мигает светодиод, это означает, что он готов к набору кода. Вы нажимаете на кнопку несколько раз, пока не наберете первый цифровой код, затем нужно дождаться следующей светодиодной вспышкой и потом набираете следующий код. После того как набрали все цифры, микроконтроллер проверяет правильность кода и открывает дверь (или мигает, если код неверный). Этот код может быть изменен путем нажатия кнопки на плате (кнопка будет мигать непрерывно). Новый код записывается так же, как описано выше, код хранится в EEPROM. Ток в режиме ожидания составляет 7.68 мА.

Стабилизатор напряжения лучше применить в корпусе ТО220, на радиатор ставить не обязательно. Реле на 5 вольт, можно при желании включить его через резистор в 20-30 Ом для меньшего энергопотребления. Диод служит для защиты от обратного тока, вообще говоря схема проста и особых пояснений не требует.

Схема кодового замка

Внешний вид устройства

Список радиодеталей и примерная их стоимость:

Конденсатор 100uF — 1 руб Конденсатор 10 мкФ – 1 руб. Конденсатор 0.1uF – 50коп. Диод 1N4148 — 1 руб. Напряжение рег. LM7805 5 руб. Зажимы (винтовые клеммы) 1×6 — 30 руб. Транзистор 2N3904 — 6руб. Резистор (x2) 10k – 1 руб. Резистор 1k – 50 коп. Резистор 180 – 50 коп. Микропроцессор ATtiny13 — 55 руб. Реле — 35 руб. Печатная плата – 15 руб. Кнопка дверного звонка – 20 руб.

Для удобства, чтобы не размещать и кнопку и светодиод на двери, не сверлить несколько отверстий, светодиод размещен внутри кнопки, подробнее на фото:

Кнопку нужно разобрать и вынуть оттуда высоковольтную лампочку, вместо него нужно припаять светодиод.

Вывода светодиодов просовываются через заранее проделанные отверстия и запаиваются на клеммы.

Этапы управления кодовым замком

Рассмотрим это на конкретном примере. Допустим, нам нужно задать следующий секретный код: первая цифра 8, вторая цифра 12, третья цифра 9. Для этого подаем питание на устройство, затем нажимаем и удерживаем обе кнопки (SB1 и SB2). После этого отпускаем кнопку SB1, и как только начал мигать светодиод HL1 отпускаем и кнопку SB2. После этих манипуляций светодиод HL1 будет гореть постоянно, а светодиоды HL2 и HL3 не будут гореть. Это состояние светодиодов говорит о том, что устройство перешло в режим программирования.

Теперь чтобы записать первое число нам нужно нажать и удерживать кнопку SB2, при этом все три светодиода начнут мигать. Нужно отсчитать необходимое количество вспышек (в нашем случае это 8) и отпустить кнопку. После этого, в подтверждении правильности введенного числа, светодиоды промигают такое же количество раз (8 раз). Все, первое число записано. Далее загорается светодиод HL2 – напоминая нам, что необходимо записать второе число.

Поступаем точно так же как и с записью первого числа: нажимаем и удерживаем кнопку SB2 и отсчитываем необходимое число вспышек светодиодов (в нашем примере это 12), отпускаем кнопку и проверяем правильность ввода по повторным вспышкам. Затем загорается светодиод HL3 для третьего числа, и повторяем туже процедуру и для третьего числа (число 9).

После того так мы записали в память микроконтроллера все три числа и для выхода из режима программирования нужно нажать кнопку SB1.

Набора секретного кода

Рассмотрим так же это на примере. До этого мы записали секретный код 8-12-9. Для ввода вначале нажимаем кнопку SB1 и отпускаем ее сразу, после того как загорится светодиод HL1, тем самым переводим наш замок в режим ввода кода. Свечение светодиода HL1 свидетельствует, что нужно ввести первую цифру. Процедура ввод цифр аналогична тому, как вводились цифры при программировании. То есть, нажимая на кнопку SB1, отсчитываем необходимое количество, после чего отпускаем кнопку и наблюдаем подтверждение наборной цифры путем мигания светодиодов. Затем переходим ко второй и третьей цифре.

В том случае если все три цифры секретного кода введены верно, сработает реле и на 15 секунд включится светодиод HL4, светодиоды HL1,HL2,HL3 будут светиться в режиме бегущих огней.

Для ввода секретного кода предоставляется три попытки. Если в третий раз код введен неверно, возможность ввода блокируется на 2,5 минуты. По прошествии этого времени замок снова будет готов к вводу кода.

При программировании микроконтроллера следует выставить следующие фьюзы:

  • CKDIV8 = 0
  • BODLEVEL0 = 0
  • SPMEN = 0

(1,3 Mb, скачано: 1 566)

Режимы работы кодового замка на PIC16F628

Схема кодового замка имеет два режима работы. Одним из них является обычный режим работы, когда схема ожидает ввода секретного кода. Второй режим — программирование. Данный режим используется для настройки работы замка.

Состояние ввода кода

Для ввода секретного кода необходимо поочередно ввести четыре цифры, каждая цифра соответствует количеству нажатий на кнопку SA1. После первой введенной цифры, светодиод мигнет один раз. Затем необходимо ввести следующую цифру. После набора четвертой цифры при верно набранном коде светодиод быстро мигнет три раза и активируется реле. При неверно набранном коде светодиод также мигнет три раза, но медленно. Затем можно повторить попытку ввода. Изначально в памяти микроконтроллера записан код 1234.

Состояние программирования кодового замка

В схеме предусмотрен переключатель SA2, который используется для изменения режима работы секретного замка. Когда переключатель замкнут, устройство находится в состоянии программирования

Необходимо обратить внимание, что состояние данного переключателя опрашивается только при подаче питания, поэтому при изменении его положения необходимо выключить и включить питание схемы

Меню программирования кодового замка состоит из трех пунктов:

  1. Запись нового секретного кода в память микроконтроллера PIC16F628. При переводе SA2 в режим программирования и включении питания, светодиод будет светить одинарными вспышками. Это свидетельствует, что вы находитесь в первом пункте меню. Для записи нового кода необходимо поочередно ввести каждую цифру, так же как и при обычном вводе. После ввода последней цифры устройство подтвердит успешное завершения серией быстрых вспышек светодиода. Теперь питание можно выключить и перевести SА2 в обычный режим, либо можно перейти ко второму пункту меню программирования кодового замка. Для этого необходимо нажать кнопку SA1 и удерживать ее не менее 3 секунд. После отпускания кнопки, светодиод будет мигать двойными вспышками.
  2. Изменения продолжительности включения реле. Каждое нажатие прибавляет одну секунду. Допусти если нужно чтобы реле было активно в течении 5 секунд, то необходимо нажать кнопку SA1 пять раз с частотой нажатий в одну секунду. После этого устройство подтвердит запись значения серией частых вспышек. Для перехода в 3 пункт меню также нажимаем кнопку на 3 и более секунды и отпускаем. Теперь светодиод будет мигать тройными вспышками.
  3. Режим работы реле кодового замка. При одном нажатии реле будет активироваться на период, установленный во втором пункте меню. При двойном нажатии – реле будет включаться при вводе секретного кода, и выключаться только при повторном вводе секретного кода.

Для программирования микроконтроллера PIC16F628 модно воспользоваться несложным программатором, который описан

Режимы работы кодового замка на PIC16F628

Схема кодового замка имеет два режима работы. Одним из них является обычный режим работы, когда схема ожидает ввода секретного кода. Второй режим — программирование. Данный режим используется для настройки работы замка.

Состояние ввода кода

Для ввода секретного кода необходимо поочередно ввести четыре цифры, каждая цифра соответствует количеству нажатий на кнопку SA1. После первой введенной цифры, светодиод мигнет один раз. Затем необходимо ввести следующую цифру. После набора четвертой цифры при верно набранном коде светодиод быстро мигнет три раза и активируется реле. При неверно набранном коде светодиод также мигнет три раза, но медленно. Затем можно повторить попытку ввода. Изначально в памяти микроконтроллера записан код 1234.

Состояние программирования кодового замка

В схеме предусмотрен переключатель SA2, который используется для изменения режима работы секретного замка. Когда переключатель замкнут, устройство находится в состоянии программирования

Необходимо обратить внимание, что состояние данного переключателя опрашивается только при подаче питания, поэтому при изменении его положения необходимо выключить и включить питание схемы

Меню программирования кодового замка состоит из трех пунктов:

  1. Запись нового секретного кода в память микроконтроллера PIC16F628. При переводе SA2 в режим программирования и включении питания, светодиод будет светить одинарными вспышками. Это свидетельствует, что вы находитесь в первом пункте меню. Для записи нового кода необходимо поочередно ввести каждую цифру, так же как и при обычном вводе. После ввода последней цифры устройство подтвердит успешное завершения серией быстрых вспышек светодиода. Теперь питание можно выключить и перевести SА2 в обычный режим, либо можно перейти ко второму пункту меню программирования кодового замка. Для этого необходимо нажать кнопку SA1 и удерживать ее не менее 3 секунд. После отпускания кнопки, светодиод будет мигать двойными вспышками.
  2. Изменения продолжительности включения реле. Каждое нажатие прибавляет одну секунду. Допусти если нужно чтобы реле было активно в течении 5 секунд, то необходимо нажать кнопку SA1 пять раз с частотой нажатий в одну секунду. После этого устройство подтвердит запись значения серией частых вспышек. Для перехода в 3 пункт меню также нажимаем кнопку на 3 и более секунды и отпускаем. Теперь светодиод будет мигать тройными вспышками.
  3. Режим работы реле кодового замка. При одном нажатии реле будет активироваться на период, установленный во втором пункте меню. При двойном нажатии – реле будет включаться при вводе секретного кода, и выключаться только при повторном вводе секретного кода.

Для программирования микроконтроллера PIC16F628 модно воспользоваться несложным программатором, который описан

2023 cosmo19.ru. Строительный портал — Cosmo19.

Дополнительный узел

Обратите внимание, что если на выходах RA0 и RA1 микроконтроллера одновременно будет установлен высокий уровень напряжения, все транзисторы мостового коммутатора VT4-VT7 откроются и произойдёт замыкание источника питания замка. При работе микроконтроллера по хорошо отлаженной программе это явление маловероятно, но вполне может произойти в процессе её отладки после внесения каких-либо изменений. При работе микроконтроллера по хорошо отлаженной программе это явление маловероятно, но вполне может произойти в процессе её отладки после внесения каких-либо изменений

При работе микроконтроллера по хорошо отлаженной программе это явление маловероятно, но вполне может произойти в процессе её отладки после внесения каких-либо изменений.

Во избежание подобных случаев рекомендуется дополнить устройство узлом, схема которого показана на рис. 2, включив его в разрывы проводов, помеченных на рис. 1 крестами.

Рис. 2. Схема дополнительного узла для кодового замка.

Транзисторы VT8 и VT9 никогда не откроются одновременно, что предотвратит одновременное открывание транзисторов VT4-VT7.

Прошивка для микроконтроллера — Скачать.

А. Гетте, г. Рязань. Р-12_2015.

Понравилась статья? Поделиться с друзьями:
Зинг-Электро
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: