Разделы
MPASM 5.05 TAHOMETR.ASM 1-26-2010 18:09:07 PAGE 1OBJECT CODE LINE SOURCE TEXT
#INCLUDE P16F886.INC
LIST
; P16F886.INC Standard Header File, Version 1.00 Microchip Technology, Inc.
00614 LIST
; ПОДСЧЕТ ИМПУЛЬСОВ С ПРОИЗВОДИТСЯ 1 СЕКУНДУ.
; ЗА 1 ОБОРОТ ПРОХОДИТ 1 ИМПУЛЬС. ЗНАЧЕНИЕ В СЧЕТЧИКЕ БУДЕТ
; N ЗА СЕКУНДУ. ЗА МИНУТУ НАДО УМНОЖИТЬ НА 60. НА 10 МЫ ДЕЛИМ,
; УБРАВ РАЗРЯД ЕДИНИЦ ИЗ ИНДИКАЦИИ
; ПОЛУЧИМ: Nx60=>Nx6=n ОБ/МИН. 1 СЕК. ПОЛУЧАЕМ С TMR0, С ПРЕДДЕЛИТЕЛЕМ К=32:
;ОПРЕДЕЛЕНИЕ РЕГИСТРОВ.
00009 INDF EQU 00h;ДОСТУП К ПАМЯТИ ЧЕРЕЗ FSR.
00000001 00010 TMRO EQU 01H;TMR0.
00011 OPTION_REG EQU 81H;OPTION (RP0=1).
00000002 00012 PC EQU 02H;СЧЕТЧИК КОМАНД.
00013 STATUS EQU 03H;РЕГИСТР СОСТОЯНИЯ АЛУ.
00014 FSR EQU 04H;РЕГИСТР КОСВЕННОЙ АДРЕСАЦИИ.
00015 PORTA EQU 05H;ПОРТ А ВВОДА;ВЫВОДА.
00016 PORTB EQU 06H;ПОРТ В ВВОДА;ВЫВОДА.
00017 TRISA EQU 85H;НАПРАВЛЕНИЯ ДАННЫХ ПОРТА А.
00018 TRISB EQU 86H;НАПРАВЛЕНИЯ ДАННЫХ ПОРТА В.
B 00019 INTCON EQU 0BH;РЕГИСТР ФЛАГОВ ПРЕРЫВАНИЙ.
; ОПРЕДЕЛЕНИЕ РЕГИСТРОВ ИНДИКАЦИИ.
00022 DESI EQU 010H;ДЕСЯТКИ ИНДИКАЦИИ.
00023 SOTI EQU 011H;СОТНИ.
00024 TUSI EQU 012H;ТЫСЯЧИ.
; РЕГИСТРЫ ДЛЯ ОРГАНИЗАЦИИ ИНДИКАЦИИ.
00027 ANOD EQU 013H;АНОД.
00028 SEGD EQU 014H;СЕГМЕНТЫ.
; ВРЕМЕННЫЕ, ДЛЯ ХРАНЕНИЯ ПРИ ПРЕРЫВАНИИ
00031 W_TEMP EQU 015H;БАЙТ СОХРАНЕНИЯ РЕГИСТРА W ПРИ ПРЕРЫВАНИИ.
00032 STATUS_TEMP EQU 016H;БАЙТ СОХРАНЕНИЯ РЕГИСТРА STATUS ПРИ ПРЕРЫВАНИИ.
00033 FSR_TEMP EQU 017H;ВРЕМЕННЫЙ ДЛЯ FSR.
; ОПРЕДЕЛЕНИЕ РЕГИСТРОВ СЧЕТА.
00036 DES EQU 018H;МЛАДШИЙ РАЗРЯД РЕГИСТРА СЧЕТА.
00037 SOT EQU 019H;СТАРШИЙ РАЗРЯД.
0000001A 00038 SEC EQU 01AH;СЕКУНДЫ.
0000001B 00039 SOTU EQU 01BH;ВРЕМЕННЫЙ РЕГИСТР.
; ОСНОВНАЯ ПРОГРАММА.
00043 ORG 0
2805 00044 GOTO INIT
00045 ORG 4
2875 00046 GOTO CONST
; 1. ИНИЦИАЛИЗАЦИЯ
00049 INIT
1683 00050 BSF STATUS,5;ПЕРЕХОДИМ В БАНК 1.
30C4 00051 MOVLW B'11000100';ПРЕДДЕЛИТЕЛЬ ПЕРЕД ТАЙМЕРОМ, К=32 .100,
0081 00052 MOVWF OPTION_REG^80H;ПОДТЯГИВАЮЩИЕ РЕЗИСТОРЫ ВЫКЛЮЧЕНЫ, ФРОНТ
;НАРАСТАНИЯ.
30B0 00054 MOVLW B'10110000';РАЗРЕШЕНИЕ ПРЕРЫВАНИЯ = ПРИ ПЕРЕПОЛНЕНИИ ТАЙМЕРА
008B 00055 MOVWF INTCON;И ИЗМЕНЕНИЮ ВХОДНОГО СИГНАЛА ПОРТА В.
A 3018 00056 MOVLW B'00011000';RA0-RA2 НА ВЫХОД, RA3, RA4-ВХОД.
B 0085 00057 MOVWF TRISA^80H
C 3001 00058 MOVLW B'00000001';RB0 НА ВХОД, RBI-RB7-ВЫХОД.
D 0086 00059 MOVWF TRISB^80H
E 1283 00060 BCF STATUS,5;ПЕРЕХОДИМ В БАНК 0.
F 0181 00061 CLRF TMR0;ВСЕ ОБНУЛЯЕМ И УСТАНАВЛИВАЕМ.
0010 0190 00062 CLRF DESI
0198 00063 CLRF DES
0191 00064 CLRF SOTI
0199 00065 CLRF SOT
019B 00066 CLRF SOTU
0192 00067 CLRF TUSI
0016 019A 00068 CLRF SEC
; 2. ОПРЕДЕЛЕНИЕ СОСТОЯНИЯ КНОПОК И ФЛАГОВ.
1D0B 00072 BTFSS INTCON,2;ЕСЛИ НЕТ ПРЕРЫВАНИЯ,
285B 00073 GOTO INDZIKL0;ИДЕМ НА ИНДИКАЦИЮ.
; 3. УМНОЖЕНИЕ
0818 00077 MOVFW DES;МЛАДШИЙ РАЗРЯД.
A 0718 00078 ADDWF DES,0;1+1
B 1803 00079 BTFSC STATUS,0;ЕСЛИ НЕТ ПЕРЕНОСА, -
C 0A9B 00080 INCF SOTU,1;+1 В СТАРШИЙ РАЗРЯД.
001D 1003 00081 BCF STATUS,0;0.
E 0798 00082 ADDWF DES,1;2+1.
001F 1803 00083 BTFSC STATUS,0;ЕСЛИ НЕТ ПЕРЕНОСА,
0A9B 00084 INCF SOTU,1;+1 В СТАРШИЙ РАЗРЯД.
0819 00085 MOVFW SOT;СТАРШИЙ РАЗРЯД.
0719 00086 ADDWF SOT,0;1+1;
0799 00087 ADDWF SOT,1;2+1.
081B 00088 MOVFW SOTU;ПРИБАВИМ ПЕРЕНОС ИЗ МЛАДШЕГО РАЗРЯДА.
0799 00089 ADDWF SOT,1;ЗАПИШЕМ В СТАРШИЙ РАЗРЯД.
019B 00090 CLRF SOTU;ОБНУЛИМ ВРЕМЕННЫЙ.
; 4. ПЕРЕКОДИРОВКА ИЗ 16-РАЗРЯДНОГО ДВОИЧНОГО В 3-Х РАЗРЯДНОЕ ДВОИЧНО-ДЕСЯТИЧНОЕ.
00093 RAS
0064 00094 CLRWDT
0190 00095 CLRF DESI;ОБНУЛИМ РЕГИСТРЫ ИНДИКАЦИИ.
0191 00096 CLRF SOTI
A 0192 00097 CLRF TUSI
B 1103 00098 BCF STATUS,2;ОЧИСТКА БИТА "Z" РЕГИСТРА STATUS.
C 0899 00099 TSTF SOT;ПРОВЕРИМ НА НОЛЬ.
Другие материалы
Синтез системы автоматизированного управления электроприводом ленточного конвейера дозатора
Одним
из наиболее прогрессивных видов транспорта, обеспечивающих высокую
производительность при больших грузопотоках, является конвейерный транспорт. В
современном производстве конвейер ...
Разработка принципиальной схемы и конструкции приемного устройства шумоподобных сигналов
Проблема создания широкополосных приемных устройств (ШПУ) с
расширенным динамическим диапазоном традиционно является одной из основных
задач радиоэлектроники СВЧ. Основной причиной, препятст ...
Регулирующие малоканальные микропроцессорные контроллеры МПК Ремиконты Р-130
Для микропроцессорного регулирующего контроллера
МПК Ремиконты Р-130" (выбранного в соответствии с вариантом 2. Необходимо
кратко описать его техническую структуру и программно-алго ...