Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мироненко курсовая.docx
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
783 Кб
Скачать
☆
    1. Расчет принципиальной схемы устройства на базе микроконтроллера pic16f84a

В расчетной части необходимо произвести расчет и обоснование электронных компонентов, подключенных к микроконтроллеру.

Для работы МК необходимо подать напряжение в диапазоне 9-12В на стабилизатор КР142ЕН5А, который понижает напряжение до фиксированного значения 5В. Конденсатор С1 емкостью 470мкФ сглаживает пульсации напряжения, а С4 - конденсатор развязки емкостью 0.1 мкФ между шинами питания Vdd и земли GND, так как при переключении больших выходных токов в схеме могут возникать значительные импульсные помехи. Схема питания PICMicro представлена на рисунке 2.2.1.

Рисунок 2.2.1 – Схема питания PICMicro

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

Напряжение на выводе МК около 5 вольт, падение напряжения на светодиоде около 2 вольт.

Для подключения к МК будут использоваться 3 светодиода красного цвета АЛ112А с параметрами:

Uпр= 2В Iпр = 10mA

Таким образом, напряжение которое должен взять на себя ограничительный резистор будет 5-2= 3В.

Ток 10мА

По закону Ома рассчитаем номинал ограничительного резистора:

R=U/I= 3/10 = 300Ом.

R1=R2=R3 = 300Ом

Исходя из расчетов для резисторов R1-8 должны быть по 300 Ом.

Разработанная схема с номиналами компонентов приведена на рисунке 2.2.2.

Рисунок 2.2.2 – Принципиальная схема устройства

    1. Разработка блок схемы алгоритма работы микроконтроллера

Прежде чем разрабатывать программу на языке Assembler, составим блок схему алгоритма работы микроконтроллера. Вначале мы произведем настройку нашего микроконтроллера, затем настройку подпрограммы прерывания по переполнению таймера. После чего будет запрос прерываний. Если ответ положительный, то мы переключаем Д1, затем производим опрос кнопки, если же нет, то производим опрос кнопки. Если во время опроса кнопки она нажата, то Д2 будет гореть, если же нет, то Д2 не будет гореть. После чего цикл повторяется снова, пока программа не будет отключена пользователем. В соответствии с высказанным блок схема алгоритма работы МК будет иметь следующий вид, представленный на рисунке 2.3.1.

Рисунок 2.3.1 – блок схема алгоритма работы МК

    1. Разработка программы и hex-файла программы

LIST

P=16F84A;

INCLUDE

<P16F84A.INC>;

__CONFIG _WDT_OFF & _CP_OFF & _XT_OSC & _PWRTE_ON; XT кварц осцилятор, WDT выключен, PWRTE выключен, защита кода отключена

CBLOCK

0CH;

_W

_STATUS

ENDC

ORG

0;

GOTO

START;

С первой команды подпрограммы START

OUH

NOP

NOP

ORG

4;

GOTO

INT;

Безусловный переход

START

BSF

STATUS,5;

Заносим 1 в разряд 5 регистра STATUS

MOVLW

B’11110111’;

8-ми разрядную константу заносим в регистр W

MOVWF

TRISB;

TRISBзаписываем в регистр F

MOVLW

B’11100111’;

MOVWF

OPTION_REG;

BCF

STATUS,5;

Заносим 0 в разряд 5 регистра STATUS

BCF

PORTB,0;

CLRF

TMRO;

Заноси 0 во все рязряды регистра F

MOVLW

B’10100000’;

MOVWF

INTCON;

LOOP

BTFSC

PORTB,5;

Если значение разряда 5, то выполняется NOP

GOTO

SETBIT;

Переход по адресу SETBIT

BCF

PORTB,8;

GOTO

LOOP;

SETBIT

BSF

PORTB,8;

GOTO

LOOP;

INT

MOVWF

_W;

MOVF

STATUS,W;

MOVWF

_STATUS;

BCF

INTCON,2;

MOVLW

.1;

XORWF

PORTB;

MOVF

_STATUS,W;

MOVWF

STATUS;

SWAPF

_W;

Все разряды _W заносятся в W

SWAPF

_W,W;

RETFIE;

Возврат из прерывания

END