Помощь в написании студенческих работ
Антистрессовый сервис

Микропроцессорный тахометр

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

Использование микроэлектронных средств в изделиях промышленного и культурно-бытового назначения не только приводит к повышению технико-экономических показателей изделий (стоимости, надежности, потребляемой мощности, габаритных размеров) и позволяет многократно сократить сроки разработки и отодвинуть строки «морального старения» изделий, но и придет им принципиально новые потребительские качества… Читать ещё >

Микропроцессорный тахометр (реферат, курсовая, диплом, контрольная)

ФГАОУ ВПО «УРАЛЬСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ ИМЕНИ ПЕРВОГО ПРЕЗИДЕНТА РОССИИ Б.Н.ЕЛЬЦИНА»

КАФЕДРА АВТОМАТИКИ Отчет по курсовой работе на тему «Микропроцессорный тахометр»

Руководитель Мокрецов В.П.

Студент Сажин М.А.

Группа Р-390 102

Екатеринбург

Содержание Введение

1. Разработка структурной схемы устройства

2. Разработка принципиальной схемы устройства

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

2.2 Устройство индикации

3. Разработка алгоритма управляющей программы

4. Разработка управляющей программы Заключение Список использованной литературы Приложение, А Введение Развитие микроэлектроники и широкое ее применение в промышленном производстве, в устройствах и системах управления самыми разнообразными объектами и процессами является в настоящее время одним из основных направлений научно технического прогресса.

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

В микроэлектронике бурное развитие получило направление, связанное с выпуском однокристальных микроконтроллеров, которые предназначены для «интеллектуализации» оборудования различного назначения. Однокристальные микроконтроллеры представляют собой приборы, конструктивно выполненные в виде БИС и включающие в себя все составные части микроЭВМ: микропроцессор, память программ и память данных, а также программируемые интерфейсные схемы для связи с внешней средой. Использование микроконтроллеров в системах управления обеспечивает достижение исключительно высоких показателей эффективности при столь низкой стоимости (во многих применениях система может состоять только из одной БИС микроконтроллера), что микроконтроллерам, видимо, нет разумной альтернативной элементной базы для построения управляющих и регулирующих систем, и в будущем микроконтроллеры будут находить все большее применение.

Структурная организация, набор команд и аппаратурно-программные средства ввода/вывода информации микроконтроллеров лучше всего приспособлены для решения задач управления и регулирования в приборах, устройствах и системах автоматики, а не для решения задач обработки данных.

1. Разработка структурной схемы устройства Составим структурную схему проектируемого устройства.

Рисунок 1 — Структурная схема устройства Основной задачей решаемой при составлении структурной схемы является определение блоков устройства.

Проектируемое устройство содержит следующие узлы:

Кварцевый резонатор с частотой f, работает совместно со встроенным тактовым генератором микроконтроллера (далее МК). Резонатор обеспечивает повышенную стабильность частоты тактового генератора МК.

МК — микроконтроллер PIC16F886.

Индикатор — четырехразрядный семисегментный индикатор для отображения информации.

2. Разработка принципиальной схемы устройства Принципиальная электрическая схема и перечень использованных элементов приведены в приложении А.

Устройство состоит из:

микроконтроллера;

устройства индикации.

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

Микроконтроллер PIC16F886 выбран согласно задания.

Характеристики МК PIC16F886 [3]:

Высокоскоростная RISC архитектура.

35 инструкций.

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

Тактовая частота (макс.)

DC — 20 МГц, тактовый сигнал,

DC — 200 нс, один машинный цикл.

8к х 14 слов FLASH памяти программ.

368×8 байт памяти данных (ОЗУ).

256×8 байт EEPROM памяти данных.

Система прерываний (13 источников).

8-уровневый аппаратный стек.

Прямой, косвенный и относительный режим адресации.

Сброс по включению питания (POR).

Таймер сброса (PWRT) и таймер ожидания запуска генератора (OST) после включения питания.

Сторожевой таймер WDT с собственным RC генератором.

Режим энергосбережения SLEEP.

Выбор параметров тактового генератора.

Высокоскоростная, энергосберегающая CMOS FLASH/EEPROM технология.

Программирование в готовом устройстве (используется два вывода микроконтроллера).

Широкий диапазон напряжений питания от 2,0 В до 5,5 В.

Повышенная нагрузочная способность портов ввода/вывода (25мА).

Малое энергопотребление:

— < 0.6 мА @ 3.0 В, 4.0МГц,

— 20 мкА @ 3.0 В. 32кГц,

— < 1мкА в режиме энергосбережения (SLEEP).

Характеристики периферийных модулей:

Таймер 0: 8-разрядный таймер/счетчик с 8-разрядным программируемым предделителем.

Таймер 1: 16-разрядный таймер/счетчик с возможностью подключения внешнего резонатора.

Таймер 2: 8-разрядный таймер/счетчик с 8-разрядным программируемым предделителем и выходным делителем.

Два модуля сравнение/захвата/ШИМ (ССР):

— 16-разрядный захват (макс. разрешающая способность 12,5 нс),

— 16-разрядное сравнение (макс. разрешающая способность 200 нс),

— 10-разрядный ШИМ.

Многоканальный 10-разрядный АЦП.

Последовательный синхронный порт MSSP (ведущий/ведомый режим), SPI (ведущий/ведомый режим), I2C.

Последовательный синхронно-асинхронный приемопередатчик USART с поддержкой детектирования адреса.

Детектор пониженного напряжения (BOD) для сброса по снижению напряжения питания (BOR).

Основные температурные и электрические характеристики МК PIC16F886 приведены в таблице 2.1.

микропроцессорный тахометр микроконтроллер Таблица 2.1 Температурные и электрические характеристики МК PIC16F876

Название параметра (характеристики)

Значение

Предельная рабочая температура

от -55°С до +125?С

Температура хранения

от -65°С до +150?С

Напряжение VDD относительно VSS

от -0,3 В до +7,5 В

Напряжение относительно VSS

от 0 В до +14 В

Напряжение на остальных выводах относительно VSS

от -0,3 В до VDD+0,3 В

Максимальный ток вывода VSS

300 мА

Максимальный ток вывода VDD

250 мА

Макс. выходной ток стока канала ввода/вывода

25 мА

Макс. выходной ток истока канала ввода/вывода

25 мА

Макс. выходной ток стока

портов ввода/вывода PORTA, PORTB и PORTС

200 мА

Максимальный выходной ток истока портов ввода/вывода PORTA, PORTB и PORTС

200 мА

Цоколёвка МК приведена на рисунке 2.1.

Рисунок 2.1 — Цоколевка МК PIC16F886

Назначение используемых выводов приведены в таблице 2.2.

Таблица 2.2 Назначение используемых выводов МК

Обозн. вывода

Номер выв.

Назначение вывода

OSC1, OSC2

9, 10

Подключается кварцевый резонатор

Вход сброса МК

Vdd

Питание

Vss

8, 19

Общий вывод

RA0…RA3

2…5

Порт A

T0CKI

Подсчет внешних импульсов

RB0…RB7

21.28

Порт B

Кварцевый резонатор (ZQ1) служит для увеличения стабильности генерируемой частоты. Конденсаторы C1 и C2 предназначены для согласования работы кварцевого резонатора и микроконтроллера. Согласно их емкость составляет 30 пФ для частоты менее 1 МГц.

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

2.2 Устройство индикации В качестве устройства индикации выбран четырехразрядный семисегментный светодиодный индикатор GNQ-3641ALS красного цвета с общими анодами.

Его характеристики:

потребляемый ток от 10 до 25 мА на сегмент;

рабочее напряжение сегмента (при токе 20 мА) — 2,5 В.

Семисегментный код отображаемой цифры выдается на линиям RB1-RB7. Линии RA0-RA3 управляют общими анодами индикатора. Резисторная сборка предназначена для ограничения тока сегментов индикатора.

Рассчитаем номинал резисторной сборки по формуле

где U — выходное напряжение высокого уровня порта МК,

US — рабочее напряжение сегмента индикатора,

IS — потребляемый сегментом ток.

Ом В ряду E24 такой номинал есть, подбирать его не нужно.

3. Разработка алгоритма управляющей программы МК подсчитывает импульсы, поступающие на вход T0CKI за 1 секунду. Для того, чтобы получить число оборотов в минуту, необходимо полученное число умножить на 60. Т.к. при умножении на 60 последняя цифра всегда получается 0, то он отбрасывается. Получается, что полученное число оборотов в секунду умножается на 6. Потом число оборотов в минуту, деленное на 10, выводится на индикатор.

Интервал в 1 секунду отсчитывается с помощью таймера 1.

После индикации таймеры обнуляются и процесс повторяется.

Общий алгоритм управляющей программы представлен на рисунке 3.1.

Рисунок 3.1 — Общий алгоритм управляющей программы

4. Разработка управляющей программы

MPASM 5.05 TAHOMETR. ASM 1−26−2010 18:09:07 PAGE 1

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

2 #INCLUDE P16F886. INC

1 LIST

2; P16F886. INC Standard Header File, Version 1.00 Microchip Technology, Inc.

614 LIST

3; ПОДСЧЕТ ИМПУЛЬСОВ С ПРОИЗВОДИТСЯ 1 СЕКУНДУ.

4; ЗА 1 ОБОРОТ ПРОХОДИТ 1 ИМПУЛЬС. ЗНАЧЕНИЕ В СЧЕТЧИКЕ БУДЕТ

5; N ЗА СЕКУНДУ. ЗА МИНУТУ НАДО УМНОЖИТЬ НА 60. НА 10 МЫ ДЕЛИМ,

6; УБРАВ РАЗРЯД ЕДИНИЦ ИЗ ИНДИКАЦИИ

7; ПОЛУЧИМ: Nx60=>Nx6=n ОБ/МИН. 1 СЕК. ПОЛУЧАЕМ С TMR0, С ПРЕДДЕЛИТЕЛЕМ К=32:

8;ОПРЕДЕЛЕНИЕ РЕГИСТРОВ.

0 9 INDF EQU 00h;ДОСТУП К ПАМЯТИ ЧЕРЕЗ FSR.

1 10 TMRO EQU 01H;TMR0.

81 11 OPTION_REG EQU 81H;OPTION (RP0=1).

2 12 PC EQU 02H;СЧЕТЧИК КОМАНД.

3 13 STATUS EQU 03H;РЕГИСТР СОСТОЯНИЯ АЛУ.

4 14 FSR EQU 04H;РЕГИСТР КОСВЕННОЙ АДРЕСАЦИИ.

5 15 PORTA EQU 05H;ПОРТ, А ВВОДА;ВЫВОДА.

6 16 PORTB EQU 06H;ПОРТ В ВВОДА;ВЫВОДА.

85 17 TRISA EQU 85H;НАПРАВЛЕНИЯ ДАННЫХ ПОРТА А.

86 18 TRISB EQU 86H;НАПРАВЛЕНИЯ ДАННЫХ ПОРТА В.

00B 19 INTCON EQU 0BH;РЕГИСТР ФЛАГОВ ПРЕРЫВАНИЙ.

21; ОПРЕДЕЛЕНИЕ РЕГИСТРОВ ИНДИКАЦИИ.

10 22 DESI EQU 010H;ДЕСЯТКИ ИНДИКАЦИИ.

11 23 SOTI EQU 011H;СОТНИ.

12 24 TUSI EQU 012H;ТЫСЯЧИ.

26; РЕГИСТРЫ ДЛЯ ОРГАНИЗАЦИИ ИНДИКАЦИИ.

13 27 ANOD EQU 013H;АНОД.

14 28 SEGD EQU 014H;СЕГМЕНТЫ.

30; ВРЕМЕННЫЕ, ДЛЯ ХРАНЕНИЯ ПРИ ПРЕРЫВАНИИ

15 31 W_TEMP EQU 015H;БАЙТ СОХРАНЕНИЯ РЕГИСТРА W ПРИ ПРЕРЫВАНИИ.

16 32 STATUS_TEMP EQU 016H;БАЙТ СОХРАНЕНИЯ РЕГИСТРА STATUS ПРИ ПРЕРЫВАНИИ.

17 33 FSR_TEMP EQU 017H;ВРЕМЕННЫЙ ДЛЯ FSR.

35; ОПРЕДЕЛЕНИЕ РЕГИСТРОВ СЧЕТА.

18 36 DES EQU 018H;МЛАДШИЙ РАЗРЯД РЕГИСТРА СЧЕТА.

19 37 SOT EQU 019H;СТАРШИЙ РАЗРЯД.

01A 38 SEC EQU 01AH;СЕКУНДЫ.

01B 39 SOTU EQU 01BH;ВРЕМЕННЫЙ РЕГИСТР.

42; ОСНОВНАЯ ПРОГРАММА.

0000 43 ORG 0

0000 2805 44 GOTO INIT

0004 45 ORG 4

0004 2875 46 GOTO CONST

48; 1. ИНИЦИАЛИЗАЦИЯ

0005 49 INIT

0005 1683 50 BSF STATUS, 5;ПЕРЕХОДИМ В БАНК 1.

0006 30C4 51 MOVLW B'11 000 100';ПРЕДДЕЛИТЕЛЬ ПЕРЕД ТАЙМЕРОМ, К=32…100,

0007 0081 52 MOVWF OPTION_REG^80H;ПОДТЯГИВАЮЩИЕ РЕЗИСТОРЫ ВЫКЛЮЧЕНЫ, ФРОНТ

53;НАРАСТАНИЯ.

0008 30B0 54 MOVLW B'10 110 000';РАЗРЕШЕНИЕ ПРЕРЫВАНИЯ = ПРИ ПЕРЕПОЛНЕНИИ ТАЙМЕРА

0009 008B 55 MOVWF INTCON;И ИЗМЕНЕНИЮ ВХОДНОГО СИГНАЛА ПОРТА В.

000A 3018 56 MOVLW B'11 000';RA0-RA2 НА ВЫХОД, RA3, RA4-ВХОД.

000B 0085 57 MOVWF TRISA^80H

000C 3001 58 MOVLW B'1';RB0 НА ВХОД, RBI-RB7-ВЫХОД.

000D 0086 59 MOVWF TRISB^80H

000E 1283 60 BCF STATUS, 5;ПЕРЕХОДИМ В БАНК 0.

000 °F 0181 61 CLRF TMR0;ВСЕ ОБНУЛЯЕМ И УСТАНАВЛИВАЕМ.

0010 0190 62 CLRF DESI

0011 0198 63 CLRF DES

0012 0191 64 CLRF SOTI

0013 0199 65 CLRF SOT

0014 019B 66 CLRF SOTU

0015 0192 67 CLRF TUSI

0016 019A 68 CLRF SEC

70; 2. ОПРЕДЕЛЕНИЕ СОСТОЯНИЯ КНОПОК И ФЛАГОВ.

0017 1D0B 72 BTFSS INTCON, 2;ЕСЛИ НЕТ ПРЕРЫВАНИЯ,

0018 285B 73 GOTO INDZIKL0;ИДЕМ НА ИНДИКАЦИЮ.

75; 3. УМНОЖЕНИЕ

0019 0818 77 MOVFW DES;МЛАДШИЙ РАЗРЯД.

001A 0718 78 ADDWF DES, 0;1+1

001B 1803 79 BTFSC STATUS, 0;ЕСЛИ НЕТ ПЕРЕНОСА, ;

001C 0A9B 80 INCF SOTU, 1;+1 В СТАРШИЙ РАЗРЯД.

001D 1003 81 BCF STATUS, 0;0.

001E 0798 82 ADDWF DES, 1;2+1.

001 °F 1803 83 BTFSC STATUS, 0;ЕСЛИ НЕТ ПЕРЕНОСА,

0020 0A9B 84 INCF SOTU, 1;+1 В СТАРШИЙ РАЗРЯД.

0021 0819 85 MOVFW SOT;СТАРШИЙ РАЗРЯД.

0022 0719 86 ADDWF SOT, 0;1+1;

0023 0799 87 ADDWF SOT, 1;2+1.

0024 081B 88 MOVFW SOTU;ПРИБАВИМ ПЕРЕНОС ИЗ МЛАДШЕГО РАЗРЯДА.

0025 0799 89 ADDWF SOT, 1;ЗАПИШЕМ В СТАРШИЙ РАЗРЯД.

0026 019B 90 CLRF SOTU;ОБНУЛИМ ВРЕМЕННЫЙ.

92; 4. ПЕРЕКОДИРОВКА ИЗ 16-РАЗРЯДНОГО ДВОИЧНОГО В 3-Х РАЗРЯДНОЕ ДВОИЧНО-ДЕСЯТИЧНОЕ.

0027 93 RAS

0027 0064 94 CLRWDT

0028 0190 95 CLRF DESI;ОБНУЛИМ РЕГИСТРЫ ИНДИКАЦИИ.

0029 0191 96 CLRF SOTI

002A 0192 97 CLRF TUSI

002B 1103 98 BCF STATUS, 2;ОЧИСТКА БИТА «Z» РЕГИСТРА STATUS.

002C 0899 99 TSTF SOT;ПРОВЕРИМ НА НОЛЬ.

002D 1903 284B 100 BZ RAS1;ЕСЛИ РАВНО, ИДЕМ.

002 °F 101 RAS0

002 °F 3064 102 MOVLW 64;100.

0030 103 RAS2

0030 1403 104 BSF STATUS, 0;УСТАНОВКА БИТА «С» РЕГИСТРА STATUS.

0031 105 RAS3

0031 0298 106 SUBWF DES, 1;ВЫЧИТАЕМ ИЗ РЕГИСТРА 100 > DES.

0032 1C03 2836 107 BNC BINDES;ПЕРЕХОД ЕСЛИ ПЕРЕНОС.

0034 0A92 108 INCF TUSI, 1;ПРИБАВИМ 1 К ТЫСЯЧАМ РЕГИСТРА ИНДИКАЦИИ.

0035 2831 109 GOTO RAS3;ПОВТОРИТЬ.

0036 110 BINDES

0036 0064 111 CLRWDT

0037 1103 112 BCF STATUS, 2;ОЧИСТКА БИТА «Z» РЕГИСТРА STATUS.

0038 0899 113 TSTF SOT;ПРИВЕРИТЬ РЕГИСТР НА НОЛЬ.

0039 1903 283E 114 BZ RAD;ЕСЛИ 0, ИДЕМ.

003B 0399 115 DECF SOT, 1;ВЫЧЕСТЬ ИЗ РЕГИСТРА 1.

003C 0A92 116 INCF TUSI, 1;ПРИБАВИМ 1 К ТЫСЯЧАМ РЕГИСТРА ИНДИКАЦИИ.

003D 2830 117 GOTO RAS2;ПОВТОРИТЬ.

003E 118 RAD

003E 0798 119 ADDWF DES, 1;ВОССТАНОВИМ ДЕСЯТКИ (В АКК. — 100).

003 °F 300A 120 MOVLW.10;10.

0040 1403 121 BSF STATUS, 0;ОЧИСТКА БИТА «С» РЕГИСТРА STATUS.

0041 122 RAD0

0041 0298 123 SUBWF DES, 1;ВЫЧИТАЕМ ИЗ РЕГИСТРА 10 > DES.

0042 1C03 2846 124 BNC BINDED;ПЕРЕХОД, ЕСЛИ ПРОПАЛ ПЕРЕНОС.

0044 0A91 125 INCF SOTI, 1;ПРИБАВИМ 1 К СТАРШЕМУ РЕГИСТРУ.

0045 2841 126 GOTO RAD0;ПОВТОРИТЬ.

0046 127 BINDED

0046 0718 128 ADDWF DES, 0;+10.

0047 0090 129 MOVWF DESI;ЗАПИШЕМ В РЕГИСТР ИНДИКАЦИИ.

0048 0198 130 CLRF DES;ОБНУЛИМ.

0049 0199 131 CLRF SOT

004A 287D 132 GOTO RECONST

004B 133 RAS1

004B 1103 134 BCF STATUS, 2;ОЧИСТКА БИТА «Z» РЕГИСТРА STATUS.

004C 0898 135 TSTF DES;ЕСЛИ ЗНАЧЕНИЕ РЕГИСТРА = 0,

004D 1903 287D 136 BZ RECONST;ЗАВЕРШАЕМ ПРЕРЫВАНИЕ,

004 °F 282 °F 137 GOTO RAS0;ИНАЧЕ ИДЕМ СЧИТАТЬ.

140; 5. ТАБЛИЦА СЕГМЕНТОВ ДЛЯ ОБЩЕГО АНОДА.

0050 142 SEGDATA;7, б, 5, 4, 3, 2, 1, 0.

0050 0782 143 ADDWF PCL, F;G, F, E, D, С, B, A, PR

144;АНОД-ДЛЯ ОБЩИХ АНОДОВ

145;КАТОД — ДЛЯ ОБЩИХ КАТОДОВ

146;НЕНУЖНОЕ УДАЛИТЬ ИЛИ ЗАКОММЕНТИРОВАТЬ

147; АНОД КАТОД

0051 3481 148 RETLW B'10 000 001'; 0 B'1 111 111'

0052 34F3 149 RETLW B'11 110 011'; 1 B'1 101'

0053 3449 150 RETLW B'1 001 001'; 2 B'10 110 111'

0054 3461 151 RETLW B'1 100 001'; 3 B'10 011 111'

0055 3433 152 RETLW B'110 011'; 4 B'11 001 101'

0056 3425 153 RETLW B'100 101'; 5 B'11 011 011'

0057 3405 154 RETLW B'101'; 6 B'11 111 011'

0058 34F1 155 RETLW B'11 110 001'; 7 B'1 111'

0059 3401 156 RETLW B'1'; 8 B'11 111 111'

005A 3421 157 RETLW B'100 001'; 9 B'11 011 111'

159; 7. ИНДИКАЦИЯ.

005B 160 INDZIKL0

005B 0064 161 CLRWDT

005C 0193 162 CLRF ANOD;ОБНУЛЯЕМ АНОД, ЧТОБЫ ОЧИСТИТЬ СТАРШИЕ РАЗРЯДЫ.

005D 178B 163 BSF INTCON, 7;ЧТОБЫ НЕ ПРОПУСТИТЬ ПРЕРЫВАНИЕ.

005E 1413 164 BSF ANOD, 0;УСТАНОВИМ МЛ. РАЗРЯД АНОДА.

005 °F 3010 165 MOVLW 010H;ЗАПИСЬ НОМЕРА РЕГИСТРА МЛ. РАЗРЯДА

0060 0094 166 MOVWF SEGD;В РЕгИСТР АДРЕСА РАЗРЯДА.

0061 167 INDZIKL1

0061 0084 168 MOVWF FSR;В РЕГИСТР КОСВЕННОЙ АДРЕСАЦИИ.

0062 0800 169 MOVFW INDF;ВЫБИРАЕМ 2−10 ЗНАЧЕНИЕ.

0063 2050 170 CALL SEGDATA;ПРЕОБРАЗУЕМ В СЕМИСЕГМЕНТНОЕ ДЛЯ ИНДИКАЦИИ

0064 0086 171 MOVWF PORTB;В ПОРТ В.

0065 0813 172 MOVFW ANOD;ЗАГРУЖАЕМ ЗНАЧЕНИЕ АНОДА.

0066 0085 173 MOVWF PORTA;В ПОРТ А.

0067 2070 174 CALL REST;НА ОТДЫХ.

0068 1003 175 BCF STATUS, 0;ОБНУЛИМ.

0069 0D93 176 RLF ANOD, 1;+1 В РЕГИСТР АНОДА.

006A 1993 177 BTFSC ANOD, 3;ЗАПИСЬ ЧИСЛА 3.

006B 285B 178 GOTO INDZIKL0;ЕСЛИ РАВНО 0, ИДЕМ,

006C 0064 179 CLRWDT;ВРЕМЯ ТАЙМЕРА — 18 МС.

006D 0A94 180 INCF SEGD, F;+1 В РЕГИСТР АДРЕСА РАЗРЯДА.

006E 0814 181 MOVFW SEGD;ЗАГРУЖАЕМ ЗНАЧЕНИЕ

006 °F 2861 182 GOTO INDZIKL1;И ИДЕМ.

0070 183 REST

0070 300A 184 MOVLW.10;ЗАДЕРЖКА В 41 ЦИКЛ.

0071 185 REST0

0071 3EFF 186 ADDLW -01H;ВРЕМЯ НА ГОРЕНИЕ СЕГМЕНТА

0072 1D03 187 BTFSS STATUS, 2;64 ЦИКЛА=7,81 MCEK.

0073 2871 188 GOTO REST0;ЗАЦИКЛИВАЕМСЯ

0074 0008 189 RETURN

191; 8. СОХРАНЕНИЕ И ВОССТАНОВЛЕНИЕ ЗНАЧЕНИЙ РЕГИСТРОВ ПРИ ПРЕРЫВАНИИ.

0075 192 CONST

0075 138B 193 BCF INTCON, 7;ЗАПРЕТ ПРЕРЫВАНИЙ.

0076 0095 194 MOVWF W_TEMP;СОХРАНЕНИЕ ЗНАЧЕНИЙ РЕГИСТРОВ W И

0077 0803 195 MOVFW STATUS;STATUS

0078 0096 196 MOVWF STATUS_TEMP;

0079 0804 197 MOVFW FSR;FSR.

007A 0097 198 MOVWF FSR_TEMP

007B 188B 199 BTFSC INTCON, 1;ЕСЛИ ПРЕРЫВАНИЕ ПО ВХОДУ В,

007C 2810 200 GOTO DESI;+1 В РЕГИСТРЫ СЧЕТА.

007D 201 RECONST;ВОССТАНОВЛЕНИЕ СОХРАНЕННЫХ ЗНАЧЕНИЙ.

007D 0816 202 MOVFW STATUS_TEMP;ВОССТАНОВЛЕНИЕ РЕГИСТРОВ:

007E 0083 203 MOVWF STATUS;STATUS,

007 °F 0817 204 MOVFW FSR_TEMP

0080 0084 205 MOVWF FSR;FSR,

0081 0815 206 MOVFW W_TEMP;W.

0082 0009 207 RETFIE;ВОЗВРАТ ИЗ ПРЕРЫВАНИЯ.

208; 9. СЧЕТ

0083 209 DES1

0083 0818 210 MOVFW DES;ЗАГРУЗКА ЗНАЧЕНИЙ МЛ. РАЗРЯДА В РАБ. РЕГИСТР.

0084 3CFF 211 SUBLW 0FFH;ВЫЧЕСТЬ ИЗ РЕГИСТРА 255.

0085 1903 288A 212 BZ SOT1;СРАВНИТЬ НА О, ЕСЛИ РАВНО, ПЕРЕЙТИ,

0087 0A98 213 INCF DES, F;ИНАЧЕ ПРИБАВИТЬ 1 В РЕГИСТР МЛ. РАЗРЯДА.

0088 108B 214 BCF INTCON, 1;СБРОС ФЛАГА ПРЕРЫВАНИЯ.

0089 287D 215 GOTO RECONST

008A 216 SOT1

008A 0198 217 CLRF DES;ОБНУЛЕНИЕ РЕГИСТРА МЛ. РАЗРЯДА.

008B 0819 218 MOVFW SOT;ЗАГРУЗКА СТ. РАЗРЯДА В РАБ. РЕГИСТР.

008C 3CFF 219 SUBLW 0FFH;ВЫЧЕСТЬ ИЗ РЕГИСТРА 255.

008D 1903 2892 220 BZ FALSH;СРАВНИТЬ НА О, ЕСЛИ РАВНО, ЗНАЧИТ ОШИБКА.

008 °F 0A99 221 INCF SOT, F;ПРИБАВИТЬ 1 В СТ. РАЗРЯД.

0090 108B 222 BCF INTCON, 1;СБРОС ФЛАГА ПРЕРЫВАНИЯ.

0091 287D 223 GOTO RECONST

0092 224 FALSH

0092 0199 225 CLRF SOT;ОБНУЛЯЕМ.

0093 0198 226 CLRF DES

0094 287D 227 GOTO RECONST;НАЧИНАЕМ СНАЧАЛА.

229 END

MEMORY USAGE MAP ('X' = Used, '-' = Unused)

0000: X—-XXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0040: XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0080: XXXXXXXXXXXXXXXX XXXXX—————- ———————— ———————-;

All other memory blocks unused.

Program Memory Words Used: 146

Program Memory Words Free: 8046

Errors: 0

Warnings: 0 reported, 0 suppressed

Messages: 0 reported, 0 suppressed

Заключение

В результате выполнения курсового проекта был разработан тахометр, а так же следующая документация:

схема структурная, схема электрическая принципиальная, алгоритм работы управляющей программы, листинг программы.

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

Устройство может эксплуатироваться в диапазоне температур от 0оС до +70оС.

Список использованной литературы Предко М. Справочник по PIC-микроконтроллерам: Пер. с англ.-М.: ДМК Пресс, 2004.-512 с.

Тавернье К. PIC-микроконтроллеры. Практика применения: Пер. с фр. — М.: ДМК Пресс, 2003.-272 с.

Однокристальные 8-и разрядные FLASH CMOS микроконтроллеры компании Microchip Technology Incorporated: PIC16F882, PIC16F884, PIC16F886 (перевод технической документации DS30292С компании Microchip Technology Incorporated, USA). ООО «Микро-Чип»: Москва, 2004.

AN849. Basic PICmicro® Oscillator Design [Электронный документ] // Microchip Tecnology Inc.: [сайт] - Режим доступа: http://ww1.microchip.com/downloads/en/AppNotes/00849a.pdf, язык англ.

Приложение, А Схема электрическая принципиальная

Показать весь текст
Заполнить форму текущей работой