Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Контрольные работы » Розробка термометра-термостата на інтегральному датчику температур DS18B20 і мікроконтролері PIC16F84

Реферат Розробка термометра-термостата на інтегральному датчику температур DS18B20 і мікроконтролері PIC16F84





GRAZR2T_ALARM, 7

BCF RAZR2, 6; Включення знака мінус при негативній температуреL10BCF FLAGS, 2; Відображення температури

BTFSC FLAGS, 3CONV_TFLAGS, 3

BTFSS FLAGS, 5L10

; Передається управління кожну секунду

BCF FLAGS, 5FLAGS, 3READ_TSTART_DS0xFFSTATUS, ZL10B'00000001'RAZR0RAZR1 RAZR2

BCF FLAGS, 3L10; Повертаємося на початок циклу

; ***************************************** ***************

; Процедура перетворення десяткового цифри з WREG в код 7-ми сегментного індикатора

DS7SEG ADDWF PCL, 1B'01000000 '; 0B'01111001'; 1B'00100100 '; 2B'00110000'; 3B'00011001 '; 4B'00010010'; 5B'00000010 '; 6B'01111000 '; 7B'00000000'; 8B'00010000 '; 9B'01111111'; ПробелB'00111111 '; Мінус

; ***************************************** ***************

; Процедура переведення числа формату HEX16 (змінні NumL, NumH) у формат BSD

; (змінні Thou, Hund, Tens, Ones) swapf NumH, wB'11110000'ThouThou, 10xE2Hund0x32OnesNumH, 00x0FHund, 1Hund, 1Ones, 10xE9TensTens, 1Tens, 1NumL, 00x0FTens, 1Ones, 1Tens, 1Ones, 1Ones, 1Ones, 1NumL, 00x0FOnes, 1Thou, 10x0A: addwf Ones, 1Tens, 13, 0Lb1: addwf Tens, 1Hund, 13, 0Lb2: addwf Hund, 1Thou, 13, 0Lb3: addwf Thou, 13, 0Lb4Thou; Видалення незначущих нулейFSR3IMOVF F0 , 00x0FSTATUS, Z; Розряд дорівнює 00x0AF0FSR IL54

; Процедура обчислення температури з точністю до 0.1 за даними отриманими від DS18В20

; Вхідні параметри: TEMP_READH, TEMP_READL, результат поміщається в екранний буфер

CONV_T MOVF TEMP_READL, 0NumLTEMP_READH, 0NumHTEMP_READH, 7; Обчислення цілої частини

GOTO L30; Температура нижче нуля.4; Виділяємо цілу частину значення температури діленням на.16d

MOVWF ABCF STATUS, CNumH, 1NumL, 1A, 1L61NumL, 0TH

MOVF TEMP_READL, 0; Обчислюємо десяткову частьB'00001111'L50MOVLW .4; Виділяємо цілу частину значення температури діленням на.16d

MOVWF ABCF STATUS, CNumH, 1NumL, 1A, 1L620xFFTHNumL, 0TH, 10xFFNumHTEMP_READL, 0; Обчислюємо десяткову частьB'00001111'NumH, 0B'00001111'MOVWF NumLNumH.6AMOVF NumL, 0NumH, 1A, 1L63NumH, 0NumLNumHConvert0x0ATens, 0STATUS, ZTens.5; ОкругленіеOnes, 0STATUS, CTens, 1

MOVF Tens, 0TL

; Порівняння температурT_ALARM, 7; Перевіряємо уставкуL72; Уставка нижче нуля, значить переходT_ALARM, 0; Уставка вище нуляNumL; Додамо до NumL значення уставки і.54; додамо 54, щоб не мучитися при сравненііNumL, 1; позитивної температури і негативною уставки (або навпаки) L73; ПереходMO...


Назад | сторінка 7 з 10 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Температура. Сучасні прилади вимірювання температури тіла
  • Реферат на тему: Порівняння методів вимірювання температури шліфування
  • Реферат на тему: Особливості річного ходу приземної температури повітря в різних частинах Зе ...
  • Реферат на тему: Розробка регулятора температури
  • Реферат на тему: Розробка мікроконтролерного пристрою стабілізації температури