movf Dig_x, W ; Значение единиц для индикации.
call segment ; Преобразование DEC в семисегментный код.
movwf portb ; Вывод цифры на индикатор.
bcf porta, 0 ; Активизировать индикатор.
call Delay ; Задержка времени для сканирования.
bsf porta, 0 ; Отключить индикатор.
movf Dig_y, W ; Значение десятых для индикации.
movwf Dig_y
movwf Dig_z
movwf Dig_exp
return
report ; Коррекция значений десятичных регистров.
movlw 05 ; Установить счетчик разрядов,
movwf cnt_r movlw U ; Загрузить адрес строки десятичных разрядов для косвенной адресации.
movwf fsr
loop_rep
clrf i ; Очистить поправку следующего разряда.
movf indf, W
movwf N ; Загрузить значение во временный регистр.
calc_rep
movf N, W
movwf indf ; Сохранить значение.
incf i, f ; Инкремент поправки следующего разряда.
movlw 0А
subwf N, f ; Вычесть 10.
btfsc status, 0 ; Результат отрицательный?
goto calc_rep ; Нет, продолжить коррекцию.
decf i, f ; Скорректировать поправку следующего разряда.
incf fsr, f
movf i, W
addwf indf, f ; Прибавить поправку к следующему
разряду.
decfsz cnt_r, f ; Все разряды скорректированы?
goto loop_rep ; Нет, продолжить коррекцию.
sessn ; Преобразование значения двоичного разряда в десятичное.
movf N, W ; Загрузить номер разряда.
call tab_dec ; Получить смещения в таблице для разряда.
movwf E
call tab_dec ; Получить значение десятков тысяч.
addwf DM, f
incf E, f
movf E, W
call tab_dec ; Получить значение единиц тысяч.
addwf M, f
call tab_dec ; Получить значение сотен.
addwf H, f
incf E,f
call tab_dec ; Получить значение десятков.
addwf D, f
call tab_dec ; Получить значение единиц.
addwf U, f
END
1.5 Выбор и обоснование элементов
Для PIC-контроллерного устройства измерения временных велечин сигналов применяются не только отечественные детали, но и импортные, поскольку наша промышленность не освоила производство аналогов микроконтроллеров данного класса. За счет такой комбинации удалось достигнуть наименьшей стоимости прибора и максимально увеличить надёжность работы, а также во много раз увеличить помехоустойчивость.
1.5.1 Отличительные особенности микроконтроллера
PIC16F84 относится к семейству КМОП микроконтроллеров. Расположение выводов данного микроконтроллера представлено на рисунке 1.4 , а описание выводов — в таблице 1.6
Рисунок 1.4 — Расположение выводов PIC16F84
Название вывода
Номер вывода
RA0
RA1
RA2
RA3
RA4/RTCC
17
18
1
2
3
PORTA — двунаправленный порт ввода–вывода
Может быть использован как вход внешнего тактового сигнала
RB1
RB2
RB3
RB4
RB5
RB6
RB7
RB0/INT
7
8
9
10
11
12
13
6
PORTB — двунаправленный порт ввода–вывода
Может быть использован как вход внешнего прерывания
OSC1/CLKIN
16
Используется для подключения кварца, RC или вход внешней тактовой частоты
OSC2/CLKOUT
15
Генератор, выход тактовой частоты в режиме RC генератора, в остальных случаях используется для подключения кварца
MCLR
4
Вход сброса устройства с активным низким уровнем
Vdd
14
Положительный вывод питания
Vss
5
Общий провод (земля)
Используемый микроконтроллер имеет внутреннее 1K x 14 бит Flash памяти для программ, 8-битовые данные и 64байт Flash памяти данных. Все команды состоят из одного слова (14 бит шириной) иисполняются за один цикл (400 нс при 10 МГц), кроме команд перехода, которые выполняются за два цикла (800 нс). PIC16F84 имеет прерывание, срабатывающее от четырех источников, и восьмиуровневый аппаратный стек. Периферия включает в себя 8-битный таймер/счетчик с 8-битным программируемым предварительным делителем (фактически 16 - битный таймер) и 13 линий двунаправленного ввода/вывода. Высокая нагрузочная способность (25 мА максимальный втекающий ток, 20 мА максимальный вытекающий ток) линий ввода/вывода. Максимально допустимые значения электрических параметров для данного микроконтроллера представленны в таблице 1.7
Максимальное
значение
Ед. изм.
Допустимая рабочая температура
-55°С +125
°С
Температура хранения
-65°С +150
Напряжение VDD относительно Vss-0,3
7,5
В
Напряжение -MCLR относительно Vss
-0,3 — 14
Напряжение на остальных вы водах относительно VSS
-0.6 — VDD+0.6
Потребляемая мощность
800
мВт
Максимальный ток на Vss
150
мА
Максимальный ток на VDP
100
Входной запирающий ток IIK
±20
Выходной запирающий ток IOK
Максимальный выходной ток стока канала ввода-вывода
25
Максимальный выходной ток истока канала ввода-вывода
20
Максимальный выходной ток стока PORTA (суммарный)
80
Максимальный выходной ток истока PORTA (суммарный)
50
Максимальный выходной ток стока PORTB (суммарный)
Максимальный выходной ток истока PORTB (суммарный)
PIC16F84 отличается низкой стоимостью и высокой производительностью. Малый размер корпуса делает этот микроконтроллер пригодным для портативных приложений. Низкая цена, экономичность, быстродействие, простота использования и гибкость ввода/вывода делает PIC16F84 привлекательным даже в тех областях, где ранее не применялись микроконтроллеры.
1.5.2 Описание используемых транзисторов
Для разрабатываемого устройства тарнзисторы выбирались по исходному материалу, рассеиваемой мощности, диапазону рабочих частот, принципу действия. Для PIC контроллерного устройства измерения временных величин сигналов, а именно для его входной части усилителя–формирователя подошли транзисторы
КП313А (маломощный полевой транзистор) и КТ368А (высокочастотный маломощный транзистор). Их основные параметры представлены в таблицах 1.8 и 1.9.
Таблица 1.8
Значение
Обратный ток коллектора при Uкб
0,5/15 мкА
Обратный ток эмиттера при Uэб
1/4 мкА
Входное сопротивление
6 Ом
Коэффициент передачи тока
50…300
Коэффициент обратной связи
—
Граничная частота коэффициента передачи
900 МГц
Емкость коллекторного перехода
1,7 пФ
Коэффициент шума
3,3 Б
Рассеиваемая мощность без теплоотвода
225 мВт
Температура окружающей среды
+125 — -60
Общее тепловое сопротивление
0,36 оС/мВт
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9