Микроконтроллер

Автор работы: Пользователь скрыл имя, 26 Сентября 2013 в 15:31, реферат

Описание работы

Описываемое устройство состоит из передатчика и приемника. На стороне первого передатчик подстыковывается к соединителям жгута. Контакты соединителей имеют свои номера (1,2,3 и т.д). Это может быть выполнено, наример, ввиде коробки, если типы и количество соединителей жгута на передающей стороне известны заранее. На второй стороне (приемной) щупом прикасаются к контактам соединителей. На цифровом табло приемника высвечивается номер контакта, к которому подключен тот или иной провод на передающей стороне. Перед проведением прозвонки требуется всего лишь выявить один исправный провод (в некоторых случаях им может служить металлический корпус агрегата, в котором закреплены жгуты) и использовать его в качестве общего провода приемника и передатчика.

Файлы: 1 файл

Микроконтро́ллер курсовая работа.docx

— 56.52 Кб (Скачать файл)

 

.  
Описываемое устройство состоит из передатчика и приемника. На стороне первого передатчик подстыковывается к соединителям жгута. Контакты соединителей имеют свои номера (1,2,3 и т.д). Это может быть выполнено, наример, ввиде коробки, если типы и количество соединителей жгута на передающей стороне известны заранее. На второй стороне (приемной) щупом прикасаются к контактам соединителей. На цифровом табло приемника высвечивается номер контакта, к которому подключен тот или иной провод на передающей стороне. Перед проведением прозвонки требуется всего лишь выявить один исправный провод (в некоторых случаях им может служить металлический корпус агрегата, в котором закреплены жгуты) и использовать его в качестве общего провода приемника и передатчика.

Кабельный пробник на РIC-контроллерах

Далее программа проверяет регистр К на наличие нуля. Если его нет, из регистра вычитается единица, что сопровождается переключением выхода в единичное состояние. Затем выдерживается пауза продолжительностью 24 мкс, и выход переводится в нулевое состояние, которое длится 30 мкс (т. е. период колебаний равен 54 мкс). После этого программа проверяет регистр на ноль. Если регистр пустой, она переходит в режим ожидания прерывания, а если его значение не равно нулю, весь цикл формирования импульса на выходе повторяется. Таким образом, на выходе формируется число импульсов, которое было записано в регистр К.

После инициализации регистров  включаются предделитель с коэффициентом деления 32 и таймер с коэффициентом деления, равным 137 (256 - 119). При частоте кварцевого резонатора 4 МГц прерывание по переполнению таймера должно происходить примерно через 4,38 мс (32-137 = 4384 мкс), но возврат из прерывания выполняется командой без разрешения прерывания. К этому времени прибавляется время циклов до разрешения прерывания и, собственно, время на само выполнение прерывания (общая средняя продолжительность этого времени равна 16 циклам). Кроме этого, предделитель обнуляется при каждой установке таймера, поэтому пауза между прерываниями составляет 4,4 мс. Как не трудно подсчитать, 80 периодов колебаний будут длиться 4,32 мс (54 мкс х 80 = 4320 мкс), т. е. это время укладывается в промежуток между прерываниями.

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

После того как сформированы импульсы на десятом выходе, регистр десятков увеличивается на единицу и весь цикл повторяется с команды записи двоичного кода десятков в порт А. В новом цикле число сформированных импульсов на каждом выходе увеличивается  на десять. Когда значение десятков станет равно восьми, цикл формирования импульсов начнется с обнуления  регистра десятков. Таким образом, максимальное значение десятков равно семи, а  максимальное число импульсов будет  на десятом выходе (10 + 70 = 80). Все 80 циклов прерываний длятся 0,352 с (4,4 мс х 80). Это время определяет гарантированную длительность паузы между выдачей импульсов на каждом выходе. Для одиночного импульса на первом выходе длительность паузы будет увеличена почти на время, равное времени между прерываниями, а для 80 импульсов на десятом выходе пауза между импульсами будет равна 0,352 с. Это необходимо отметить, чтобы лучше понять работу приемной части пробника.

Принципиальная схема передатчика  изображена на рис. 2. Все разряды порта В МК DD1 настроены на вывод и имеют коэффициенты от одного до восьми. Разряды RAO—RA2 используются для вывода значений регистра десятков в двоичном коде, RA3 и RA4 — как выходы с коэффициентами 9 и 10 соответственно. Поскольку выход RA4 имеет открытый сток, он нагружен резистором R1. Входы Y (вывод 3) мультиплексоров DD2—DD11 подключены к разрядам порта В, адресные входы (А, В, С) соединены параллельно и подключены к выходам десятков МК.

Таким образом, при нулевом значении регистра десятков на всех мультиплексорах  будет выбран нулевой адрес, а  на их выходах ХО (вывод 13) будет появляться число импульсов, равное коэффициенту выхода МК, который подключен к  входу Y мультиплексора. На выходе ХО микросхемы DD2 будет постоянно присутствовать только один импульс, а на одноименном  выходе DD11 — 10 импульсов. При увеличении адреса мультиплексора на единицу включится  его следующий выход (Х1), а число импульсов на нем увеличится на десять. Таким образом, на каждом выходе мультиплексоров последовательно будет появляться только свое число импульсов. Нижний (по схеме) выход передатчика (Общ) подключают, как отмечалось, к одному известному проводу, который будет общим для передатчика и приемника.

Приемник кабельного пробника работает по принципу двухразрядного счетчика. Алгоритм работы его программы показан  на рис. 3, а принципиальная схема — на рис. 4. После пуска и инициализации программа переходит к выполнению динамической индикации двух светодиодных цифровых индикаторов с общим катодом. Время на индикацию одного индикатора равно 5 мс, т. е. весь цикл индикации повторяется с частотой 100 Гц.

В приемнике используются два вида прерываний: по переполнению таймера TMR0 и от изменения сигнала на входе RB0. При поступлении импульса на этот вход сохраняются значения текущих  регистров. Далее программа проверяет  источник прерывания. Если оно произошло  не по переполнению таймера, то инкрементируется счетчик импульсов, переустанавливается  таймер (256 - 120 = 136) и сбрасывается счетчик  пред-делителя. Программа восстанавливает значения регистров, и продолжается работа по индикации. Таким образом, при поступлении импульсов с входа RBO таймер постоянно переустанавливается, поэтому прерывание от переполнения таймера невозможно до тех пор, пока на этом входе присутствуют импульсы.

Если же на входе длительное время  импульсы отсутствуют, происходит прерывание от переполнения таймера. Для надежности работы приемника время между  прерываниями немного уменьшено  по сравнению с передатчиком и  равно 4,38 мс. Прерывания от переполнения таймера подсчитываются счетчиком  прерываний. Пауза между импульсами на каждом выходе передатчика равна 80 прерываниям, поэтому счетчик прерываний в приемнике может считать  до 80. Если за это время не было входных  импульсов, программа переписывает значения регистров счетчиков импульсов  в регистры индикации и показания  обновляются. Происходит это каждые 0,35 с.

Коды «прошивок» МК передатчика  и приемника приведены в табл. 1 и 2 соответственно.

Выходы RB1— RB7 МК DD1 коммутируют элементы (сегменты) светодиодных индикаторов HG1, HG2, выходы RA0, RA1 — их катоды. Импульсы со щупа поступают на вход RB0. Зажим  Х1 подключают к известной жиле кабеля, которая служит общим проводом для приемника и передатчика. Если выход мультиплексора передатчика не выбран адресом, на нем будет присутствовать неопределенный уровень и при появлении импульсов на счетчике приемника будет одно ложное срабатывание (независимо от установленного перепада срабатывания счетчика: это может быть как перепад из нуля в единицу, так и из единицы в ноль). Чтобы не было ложных импульсов, вход зашунтирован резистором R1.

Питаются приемник и передатчик от батарей, составленных их трех элементов  АА или AAA каждая. Если предполагается длительная работа с приемником, желательно использовать батарею типа 3R12Х.

В приемнике и передатчике применены  кварцевые резонаторы на частоту 4 МГц. Без каких-либо изменений в схемах и программах можно использовать резонаторы с более низкой частотой, вплоть до 1 МГц. При этом соответственно уменьшится частота обновления показаний  индикаторов, но она останется на приемлемом для глаз значении —  до 25 Гц.

Передатчик монтируют на двух печатных платах, каждая из которых рассчитана на 40 выходов (вторая отличается от первой тем, что на ней отсутствует микросхема DD1 и предусмотрено место для  установки резистора R1). Платы располагают  одну под другой, соединяют с помощью  винтов и резьбовых стоек, а между  платами устанавливают пенал  для трех элементов батареи питания (в зоне нахождения микросхемы DD1).

 

Зажимы для подключения проводов на плате передатчика самодельные (рис. 5). Состоят они из двух одинаковых скоб 2, согнутых в виде буквы «Л»  из полосок листовой бронзы или хорошо пружинящей латуни толщиной 0,4...0,5 и  шириной 2,5 мм. Один из концов заготовок  опиливают до ширины примерно 1 мм (на длине 1,5...2 мм в зависимости от толщины  материала плат 1), в другом — сверлят  отверстие диаметром 1,2 мм, после  чего концы отгибают. Опиленные части  скоб впаивают в платы, как показано на рис. 5. Для подсоединения провода 3 нижний и верхний (по рисунку) концы скоб сжимают до совпадения отверстий. После монтажа зажимы нумеруют таким образом, чтобы, повернув передатчик (когда низ становится верхом, и наоборот), были видны их номера.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Информация о работе Микроконтроллер