1 Mikrokontrollerlar va isis proteus dasturi haqida asosiy tushunchalar


Harorat va harorat o'chash haqida



Yüklə 1,92 Mb.
səhifə4/12
tarix19.02.2022
ölçüsü1,92 Mb.
#52829
1   2   3   4   5   6   7   8   9   ...   12
температура

Harorat va harorat o'chash haqida.

Raqamli harorat datchiklarining kodini o'zgartirish.

Raqamli harorat datchiklari chi?ish malumotini ko'prazryadli ikkilik kodi shaklida yuzaga keltiradi. Uning tarkibiga, ko'pincha, butun va bo'lak qismlar kiradi, hamda belgi.

Zamonaviy yarimo'tkazgich datchiklarda harorat qiymati, ko'pincha, odatiy ikkilik kodida keltirilgan, uning uzunligi 16 bitga etishi mumkin. 8 bitdan kattalar -55°C dan 125°C gacha diapazonda butun qiymatlar ostida qaytariladi. Bunda katta baytning eng katta biti haroratning belgisiga javob beradi. Kichik bayt o'zgargan qiymatning bo'lak qismlarini saqlaydi. Termometrning ruhsatiga bog’liq holda kichik baytda 1 dan 8 bitgacha ishlatilishi mumkin. ADT7410 kabi ba'zi kengaytirilgan o'lchash diapazonli yuqorianiq modellarda butun qiymat ostida 8 emas 9 bitlik kod qaytariladi. O'zgartirishni amalga oshirishda mazkur faktni hisobga olish kerak. Quyida faqat keng tarqalgan 8 bitlik butun qiymatli varianlar ko'rib chiqiladi.

DS1621 yoki LM75 kabi ancha oddiy va arzon daichiklar 9 bitlik Raqamli kodni amalga oshiradi. Bu holatda kichik baytning faqat katta biti ishlatiladi, 0.5°C ruhsatni ta'minlagan holda. Keng tarqalgan datchik DS18B20 12 bitlik kodga ega bo'lishi mumkin, bu 0.0625°C gacha ruhsatli haroratni aks ettirishga imkon beradi. ADT7410 uchun huddi shunday ruhsat 13 bitli kod bilanamalga oshiriladi. Haroratning belgilangan bitlari, ko'pincha, nollar bilan to'ldiriladi.

Haroratning ikkilik kodini o'zgartirish maqsadi keyinchalik qayta ishlash yoki indikatsiya uchun Raqamli qiymat olish hisoblanadi. Birinchi holatda kerakli natija suzuvchi nuqtali sonlar shaklida ifodalangan bo'lishi kerak, ikkinchisida- o'nlik Raqamlar to'plamida yoki BCD-kodda.

Haroratning 12 razryadli datchigi kodiga misol

1-jadval.


Ikkilik kodi

Harorat qiymati

01111101 00000000

125,0°C

01011111 11110000

95,9375°C

01000101 10010000

69,5625°C

00111111 10000000

63,5°C

00101010 10100000

42,625°C

00100001 01100000

33,375°C

00011011 01110000

27,4375°C

00011001 00000000

25,0°C

00000001 00010000

1,0625°C

00000000 00000000

0°C

11111111 10000000

-0,5°C

11110110 11100000

-9,125°C

11101000 11110000

-23,0625°C

11011111 00000000

-33,0°C

11010011 00010000

-44,9375°C

Butun qiyiat o'zgartirilishi.

O'zgartirishning ancha oddiy holatida gradusning faqat butun qiymati yetarlicha bo'lgan variant bo'ladi. Bu holatda kichik bayt olib tashlanishi mumkin. Keyinchalik son belgisini aniqlash kerak bo'ladi, bosh bitni solishtirib o'qigan holda. Agar bu bit 0 ga teng bulsa harorat musbat va ikkilik kodi qiymati izlangan songa teng bo'ladi. Agar bosh bit 1 ga teng bo'lsa- harorat Selsiy shkalasi bo'yicha manfiy va 1 gacha ikkilik qo'shimcha sonni topish kerak. Buning uchun kod urib invertirlanadi va olingan qiymatga 1 qo'shiladi. Mazkur operatsiyani qanday qilib ayirishga olib borilishi quyida ko'rsatiladi. Keyingi foydalanishlar uchun hisobga olish kerakki, topilgan qiymat “minus” belgisi bilan ilova qilinishi kerak.

8 razryadli kodni o'zgartirishga misol:

Haroratning 8 razryadli kodi 1110011b ga teng bo'ladi. Bosh bit 1 ga teng, demak, harorat manfiy. 1 gacha qo'shimcha topamiz.

not(11100111b)+1=00011000b+1=00011001b

Olingan son o'nlik tizimda teng: 00011001b=25d

Natija belgi hisobi bilan teng: t°C=-25°C.

Bo'lak qismlar bilan haroratning o'zgartirilishi.

Bo'lak qismlarni hisobga olishda ancha qiyin o'zgartirish talab qilinadi. Bu erda yana olingan kodning razryadliligiga e'tibor qaratish kerak bo'ladi( yoki uni kerakli qiymatgacha kamaytirish). Shunday qilib, 9 razryadli kod uchun yuqorida keltirilgan misolga 0.5°C qo'shish etarli bo'ladi. Agar ko'proq razryadli koddan foydalanilsa, ancha tabiiy o'zgartirish sonni kichik razryad bahosiga ko'paytirish bo'ladi. 12 razryadli variant uchun o'zgartirish formulasi quyidagi ko'rinishga ega bo'ladi:

Musbat harorat uchun t°C=(ADC Code)* 0.0625

Manfiy harorat uchun t°C=(not(ADC Code)+1)* 0.0625

Haroratni topish maqsadida quyidagi ketma-ketlikni bajarish kerak:

-son belgisini tekshirish;

-agar “minus” bo'lsa, urilgan inversiya va 1ni qo'shish yo'li bilan ikkilik qo'shimchasini topish;

-ahamiyatsiz bit sonidan o'ngga ko'chish yo'li bilan ahamiyatsiz razryadlardan halos bo'lish;

-kod ruhsatiga ko'paytirish.

12 razryadli kodni o'zgartirishga misol:

Haroratning 12 razryadli kodi 11100110 11110000b ga teng. Bosh bitdan ma'lumki, harorat manfiy. Quyidagiga teng bo'ladigan qo'shimchani topish kerak:

not(11100110 11110000b) + 1 = 00011001 00001111b + 1 = 00011001 00010000b

Keyingi harakat bilan 4 bitga o'ngga ko'chish bo'ladi, natija 0001 10010001b = 401d ga teng.

Olingan qiymatni datchik ruhsatiga, bu holatda 0.0625°C ga teng, ko'paytirib, izlangan haroratni suzuvchi nuqtali sonlar shaklida olishimiz mumkin.

t°C =401d * 0.0625d = 25.0625°C

Tasvirlangan variant suzuvchi vergulli operaciyadan foydalanishni talab qiladi. Shuning bilan birga oddiy arifmetik operatsiyalarga olib keluvchi variantlar mavjud. Ularning qo'llanilishida ikkilik qo'shimchasi qo'llanilayotgan razryadlik maksimal-ehtimoliy sonlar ayirmasi bilan joylashadi. Ahamiyatsiz bitlarni o'chirish kerakligini hisobga olish lozim.

12 bitli kod.

Musbat harorat t°C = ADC Code / 16.

Manfiy harorat (belgili bit qatnashadi) t°C = (ADC Code ?4096)/16.

Manfiy harorat (belgili bit o'chgan) t°C = (ADC Code - 2048)/16.

9 bitli kod.

Musbat harorat t°C = ADC Code/2.

Manfiy harorat (belgili bit qatnashadi) t°C = (ADC Code ?512)/2.

Manfiy harorat (belgili bit o'chgan) t°C = (ADC Code -256)/2.

8 bitli kod (faqat butun qiymatlar):

Musbat harorat = ADC Code.

Manfiy harorat (belgili bit qatnashadi) t°C = ADC Code ?256.

Manfiy harorat (belgili bit o'chgan) t°C = ADC Code -128.

Soddalashtirilgan o'zgartirishga misol:

Yuqorida keltirilgan misol uchun haroratning 11100110 11110000b ga teng 12 razryadli kodi quyidagi harakatni talab qiladi:

-ahamiyatsiz bitlar o'chadi: 11100110 11110000b ~ 11100110 1111b = 3695d.

-hisoblash t°C = (ADC Code ?4096)/16 formula bo'yicha bajariladi.

t°C = (ADC Code ?4096)/16 = (3695d - 4096d)/16d = (-401)/16 = -25.0625°C

Natija t°C = -25.0625°C o'zgartirishning birinchi variantiga analog(o'hshash).




  1. Yüklə 1,92 Mb.

    Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   ...   12




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin