![]() | |
|
Главная Радио и связь Параллельно соленовду и сирене (индуктивные нагрузки) подключены диоды, они защищают транзисторы VT1, VT2 и VT3 контроллера от токов, возникающих в индуктивных нагрузках после снятия с них напряжения. Питание схемы осуществляется от автомобильного аккумулятора. Штриховой линией окружены компоненты, размещаемые на плате контроллера. 10-контактный разъем ХР1 предназначен для подключения к микроконтроллеру программатора. В устройстве используется микроконтроллер AT90S2313, для питания которого необходимо напряжение, не превышающее 6 В. Для получения стабилизированного напряжения питания +5 В применена микросхема 7805 (DA1). Если цепь DOOR замкнута на общий провод кнопкой SA1, то в цепи устанавливается НИЗКИЙ логический уровень; при отсутствии такого замыкания в цепи поддерживается ВЫСОКИЙ логический уровень через резистор Ri, соединенный с источником напряжения +5 В. То же справедливо для кнопок SA2, SA3, резисторов r2, и цепей CODE и OPEN. НИЗКИЙ логический уровень близок к О В, ВЫСОКИЙ логический уровень близок к напряжению питания микроконтроллера, составляющему для этой схемы +5 В. Резистор R4 с конденсатором С2 обеспечивают аппаратный сброс микроконтроллера при включении питания. При отсутствии напряжения или его пропадании конденсатор оказывается разряженным. После появления напряжения питания на контакте RESET микроконтроллера удерживается НИЗКИЙ логический уровень до тех пор, пока конденсатор С2 не зарядится через резистор R4. Для сброса программы (выключения сирены и светодиода после втор-жения) в схему введена кнопка SA4, при замыкании контактов которой на линии RESET микроконтроллера устанавливается НИЗКИЙ уровень, что вызывает аппаратный сброс микроконтроллера. Для управления мощной нагрузкой, питающейся большим напряжением, служат транзисторы VT1, VT2 и VT3. Если на выходе микроконтроллера, соединенного с базой транзистора через резистор, сформируется ВЫСОКИЙ уровень, транзистор откроется. Тогда подключенная к его коллектору цепь нагрузки соединится с общим проводом через малое сопротивление транзисторного перехода коллектор-эмиттер, почти все напряжение аккумулятора будет приложено к нагрузке. Когда на выходе микроконтроллера НИЗКИЙ уровень, транзистор закрыт, сопротивление его перехода коллектор-эмиттер очень велико, напряжение на нагрузке оказывается близким к нулю. Таким образом, для срабатывания одной из нагрузок, подключенных к схеме, на соответствующем выходе микроконтроллера надо сформировать ВЫСОКИЙ уровень, для прекращения работы нагрузки - низкий уровень. 2.1.4. Словесное описание алгоритма работы контроллера После включения питания по аппаратному сбросу • линии порта D микроконтроллера DDI, соединенные с контактами кнопок SA1, SA2 и SA3, должны быть сконфигурированы как входные; • линии порта В, управляющие нагрузками, необходимо сконфигурировать как выходные; • на линиях порта В установить НИЗКИЕ уровни (нагрузки - соленоид замка, сирена и светодиод - выключены). Режим ожидания Контроллер находится в состоянии ожидания, необходимо организовать циклическую проверку состояния линий порта D. Режим штатного отпирания двери При появлении НИЗКОГО уровня в цепи CODE (введен правильный код, переход в режим штатного открывания двери) сформировать ВЫСОКИЙ уровень на линии LOCK, управляющей соленоидом замка; удерживать уровень в течение 2 с для отпирания замка. Через пять секунд после запирания замка проверить уровень в цепи DOOR. Если в цепи ВЫСОКИЙ уровень (дверь не открывали ша успели закрыть), контроллер должен вернуться в режим ожидания. Если уровень НИЗКИЙ (дверь еще открыта) - ожидать появления ВЫСОКОГО уровня (запирания двери), после чего перейти в режим ожидания. Режим отпирания двери изнутри При появлении НИЗКОГО уровня в цепи OPEN сформировать ВЫСОКИЙ уровень на линии LOCK, управляющей соленоидом замка; удерживать уровень в течение 2 с для отпирания замка. Через пять секунд после запирания замка проверить уровень в цепи DOOR. Если в цепи ВЫСОКИЙ уровень (дверь не открывали или успели закрыть), контроллер должен вернуться в режим ожидания. Если уровень НИЗКИЙ (дверь еще открыта) - ожидать появления ВЫСОКОГО уровня (запирания двери), после чего перейти в режим ожидания. Режим вторжения При появлении НИЗКОГО уровня в цепи DOOR (дверь открыта) сформировать ВЫСОКИЙ уровень на линии HL для включения светодиода, на линии ALARM сформировать импульсную последовательность, вызывающую прерывистый звуковой сигнал сирены. Для этого чередовать импульсные последовательности с частотой повторения 1 кГц в течение 0.5 с (паузы также 0.5 с). Возвращение в режим ожидания должно происходить при временном появлении НИЗКОГО уровня на контакте RESET микроконтроллера, что обеспечивается нажатием кнопки SA4 или выключением-включением питания. 2.2. Начинаем работу с AVR Studio Установка AVR Studio обычно проходит гладко. Для начала установку стоит сделать, просто соглашаясь со всеми появляющимися предложениями программы-установщика. 2.2.1. Создание первой программы на Ассемблере Подготовка к работе Для начала необходимо распаковать архив avrOOO.zip. Распакуйте файл avrOOO.zip (его скачали вместе с AVR Studio, см. подраздел Ы) в папку C:\AVR\def. В результате произведенной распаковки папка C:\AVR\def будет содержать файлы *def.inc, в которых хранятся предопределенные имена регистров и констант микроконтроллеров AVR. Именно это имя папки для фагьпов *def.inc (C:\AVR\Def) будет использоваться в примерах программ, приведенных в книге. В папке C:\AVR для каждого нового проекта будем создавать новую папку для хранения всех файлов, относящихся к проекту. Запустите AVR Studio. Появившееся окно (Рис.2) предоставляет возможность открыть существующий или создать новый проект. Если флажок «Show this dialog on ореп», расположенный в левом нижнем углу, оставить установленным, окно будет появляться при каждом запуске программы. Так как в течение одного сеанса может понадобиться работать с разными проектами, закроем это окно, щелкнув по кнопке Cancel, а затем создадим новый проект, пользуясь меню AVR Studio. В оставшемся на экране окне AVR Studio в первой строке находятся заголовки меню File, Project, View, Tools, Debug и Help. Для ознакомления с возможностями AVR Studio откройте меню Help/AVR Studio User Guide. Для этого надо установить указатель мышки на слове Help, щелкнуть мышкой (нажать левую кнопку мыщки), в от- 0 1 [ 2 ] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 0.0052 |