Global Informatics

- Информатика и вычислительная техника

Листинг ПО

;П/П сравнений Tx с уставками

;входные параметры:

;0x50 - адрес байта, где хранится число - сколько раз вызывалась П/П

;это число нужно, чтобы знать для какого датчика какие уставки

использовать

;что храниться в адресах:

;0x67h-0x70h - уставки для 1-го датчика

;0x71h-0x74h - уставки для 2-го датчика

;0x75h-0x78h - уставки для 3-го датчика

;0x79h-0x82h - уставки для 4-го датчика

;0x83h-0x86h - уставки для 5-го датчика

;выходные переменные:

;переменная FLFORERR - значение переменной опеределяет номер

датчика на ;котором выявлена ошибка

;переменная имеет место только когда ошибка выявлена, но значения

;присваиваются в любом случае, тк

;сначало определяется для какого датчика надо производить сравнение,

;присваивается значение переменной FRFORERR,

;А ЗАТЕМ уже происходит сравнение

;======================================================

==================_Tx:USING3R0,@0X50hR0@0x50h,R0R0,#1d,TO2R0,@67hR1,@68hR2,@69hR3,@70hFLFORERR,#1CHECK:CJNE R0,#1d,TO3R0,@71hR1,@72hR2,@73hR3,@74hFLFORERR,#2CHECK:CJNE R0,#1d,TO4R0,@75hR1,@76hR2,@77hR3,@78hFLFORERR,#3CHECK:CJNE R0,#1d,TO5R0,@79hR1,@80hR2,@81hR3,@82hFLFORERR,#4CHECK:MOV R0,@83hR1,@84hR2,@85hR3,@86h

CLR R0@0x50h,R0;ОЧИСТКА СЧЕТЧИКА ВЫЗОВОВ п/п ТК ЦИКЛ

ИЗМЕРЕНИЯ - ;5 ИМПУЛЬСОВ

MOV FLFORERR,#5

JMP CHECK

;R0.R1 - HIGH UST, R2.R3 - LOW UST FOR N D:MOV R4,@0X40hR5,@0X41h ;R4.45 - TX

;сравнение с нижней уставкойA,R2

SUBB A,R4ERR_LCHECK_HA,R3A,R5ERR_L

JMP CHECK_H

;сравнение с верхней уставкой

CHECK_H:MOV A,R2A,R0NOTERRERR_H: MOV A,R5A,R1ENDCHECKERR_H

ENDCHECK:USING0

;======================================================

==================

;подпрограмма вычисления значения температуры Т

;входные параметры:

;R0,R1,R2,R3-адреса ячеек памяти данных, где храняться значения

периодов Th ;и Tl датчика

;выходные параметры:

;0X40 - адрес ячейки, где храниться целое значение температуры(1

байт)

;0X41 - адрес ячейки, где храниться десятичный остаток значения

;температуры(1 байт)

;форма представления T: Х.У

;======================================================

===================_TEMP:

;перезапись адресов из банка 0 в банк 1

MOV A,R0B,R11R3,@AR4,@B0A,R2B,R31

;----------------------------------------------R5,@AR6,@B

;перевод Th из W в FP

MOV R3,@R0R4,@R1W_TO_FP@0x45h,R2@0x46h,R3@0x47h,R4

;перевод Tl из W в FP

MOV R3,R5R4,R6W_TO_FP

;----------------------------------------------

;деление Th на Tl

;загрузка делителя (Tl)R6,R3R7,R4

;загрузка делимого (Th)

MOV R2,@0x45hR3,@0x46hR4,@0x47hDIV_FP ;OUT - R2 R3 R4

;----------------------------------------------

;умножение Th/Tl на 751

;загрузка множителя Th/Tl

MOV R5,R2R6,R3

MOV R7,R4

;загрузка множителя 751R3,#00000010bR4,#11101111bW_TO_FP ;перевод в 754 из W в FP

LCALL MUL_FP ;OUT - R2 R3 R4

;запись результата как вычитательR5,R2

MOV R6,R3R7,R4

;вычитание

;загрузка вычитаемого 421R3,#00000001b

MOV R4,#10100101bW_TO_FP ;перевод 421 из W в FPSUB_FP ;OUT - R2 R3 R4 в формате FP

LCALL CREAT_MAIN_OST ;вызов подпрограммы вычисления целой

части ;значения Тх и дес.остатка в формате W

;-----------------------------------------------

;-----------------------------------------------

;подпрограмма вычисления целой части и десятичного остатка Tx из FP

в W

;входные параметры:

;R2,R3,R4 - ЧИСЛО Tx В ФОРМАТЕ FP

;выходные параметры:

;0X40 - адрес ячейки, где храниться целое значение температуры

;0x41 - адрес ячейки где хранится десятичный остаток

;выходные параметры передаются в формате W

;----------------------------------------------

;создание делителя_MAINOST:R0,R2B,#10 ;ПРОМЕЖУТОЧНЫЙ ДЕЛИТЕЛЬA,#1 ;ОСНОВНОЙ ДЕЛИТЕЛЬ

LOOP1: MUL AB

DJNZ R0,LOOP1R6,#0R7,AR5,#1DIV8 ;OUT - R5, R3 R4

MOV @0x40,R5R0,#5 ;СЧЕТЧИК

LOOP2: MOV R1,R5R6,#0R7,#10A,R3R5,R4: MOV R3,AR4,R5R5,#1DIV8R5,#0,LOOP2R0,LOOP3@0x41,R1

RETI

;=====================================================

Перейти на страницу: 1 2 3 4 5 6

Статья в тему

Модуляционно-легированные транзисторы MODFET, биполярные транзисторы на гетеропереходах. Резонансный туннельный эффект
Высокая степень интеграции, характерная для современной кремниевой технологии, не может быть достигнута при использовании полупроводниковых соединений AIIIBV, однако эти соединения обеспечивают большее быстродействие, прежде всего, за счет высокой подвижности р носителей и меньши ...

Главные разделы


www.globalinformatics.ru © 2025 - Все права защищены!