Извличане на знание
/ Knowledge Discovery >> Извличане на знание >> тек >> електроника >> твърдотелни електроника >>

Как микроконтролери Work

ва е основната линия" - чете и показва температурата на всеки secondmain_loop: висока RST "изберете 1,620 b0 = $ AA '$ ОО е байт 1620 команда" за четене на температура GOSUB shift_out "го изпраща на 1620 GOSUB shift_in" Прочети температурата "от 1620 ниска RST" махнете отметката от DS1620. GOSUB дисплей "показва темп на градуса С пауза 1000" чакай secondgoto main_loop "подпрограмата The shift_out изпраща каквато е в" най b0 байт на 1620shift_out: изход DQ "настроите DQ щифт на" изход modefor b2 = 1-8 ниска CLK "подготвят за часовник на бита" в 1620 DQ_PIN = bit0 "Изпрати бита данни с висока CLK" резе битов данни в 1,620 b0 = b0 /2 "измести всички битове право" към битов 0nextreturn "подпрограмата The shift_in получава 9-битов 'температура от 1620shift_in: входно DQ "настроите DQ щифт на" вход modew0 = 0 "ясна w0for b5 = 1-9 W0 = W0 /2" вход изместване надясно. ниска CLK "поиска 1620 за следващата битов bit8 = DQ_PIN" прочетете малко висока CLK "превключване часовник pinnextreturn" Показва температурата в градуси Cdisplay: ако bit8 = 0 тогава поз ", ако bit8 = 1" и след това температурата е отрицателна b0 = b0 &усилвател; /b0 "обръщаща b0 от NANDing това със себе си b0 = b0 + 1pos: serout LCD, n2400, (254, 1)" изчистите LCDserout LCD, n2400, (" Temp = ") "дисплей " Temp = " "Върху displaybit9 = bit0" спаси половината degreeb0 = b0 /2 'конвертирате в degreesif bit8 = 1 тогава NEG "виж, ако температурата е отрицателна serout LCD, n2400, (# b0)" дисплей положителен темп Гото halfneg: serout LCD, n2400 , (" - ", # b0) "дисплей отрицателно temphalf: ако bit9 = 0, тогава дори serout LCD, n2400, (" 0,5 C ")" покаже половината степен Гото doneeven на: serout LCD, n2400, (" 0.0 C ") "показва половината degreedone: връщане

Ако стартирате тази програма, вие ще откриете, че той показва температурата на по Целзий с точност до половин градус

Температурите на мерки DS1620. в Целзий половинки градуса. Тя връща температурата в 9-битов номер 2s-комплемента с набор от -110 до 250 F (-55 до 125 ° С). Вие се разделят на броя получавате по 2, за да получите реалната температура. 2s-комплемента двоични числа са удобен начин за представяне на отрицателни стойности. Следният списък показва стойностите за 4-битово число 2s-комплемента:
<предварително> 0111: 70 110: 60 101: 50 100: 40 011: 30 010: 20 001: 10 000: 01 111: -11110: -21101: -31100: - 41011: -51010: -61001: -71000: -8 <р> Можете да видите, ч

Page << [11] [12] [13]