Lahko vidite, da namesto 4 bitov, ki predstavljajo vrednosti od 0 do 15, na 4 bitov v številnih 2s-komplementa predstavljajo vrednote -8 do 7. You lahko ogledate na levi-najbolj bit, da ugotovi, če je število negativno ali pozitivno. Če je število negativno, se lahko obrnemo bitov in dodamo 1 do dobili pozitivno zastopanosti števila
Evo, kaj se dogaja z digitalnim programom termometer je prikazan tukaj.
- Uporablja ključno besedo simbol za ustanovitev več konstante, da bi bil program nekoliko lažje branje (in bi tudi bilo enostavno za vas, da se premaknete čip za različne I /O zatiči na žig).
- To nastavi . CLK in RST zatiči na DS1620 do njihovih pričakovanih vrednosti
- To piše ukazni bajt v EEPROM na DS1620 povedati čip deluje v " način termometer. " Ker je način shranjen v EEPROM, morate le, da to storite enkrat, tako da boste lahko tehnično vzeli ta del kode iz programa, ko boste enkrat zaženete program (za shranjevanje programski prostor).
- Program pošlje ukaz $ EE (" $ " sredstva " šestnajstiško število " - $ EE je 238 na decimalko), da povem, termometer za zagon svoj proces pretvorbe
Program takrat. vstopi v zanko. Vsako sekundo, da pošlje ukaz za DS1620 pripoveduje o DS1620 vrniti trenutno temperaturo, nato pa ga prebere 9-bitno vrednost, ki jo DS1620 vrne v spremenljivko w0. Žig pošilja in sprejema podatke 1 bit na času, ki ga preklop med CLK črto na DS1620. Ne pozabite, da je w0 (16-bitni) spremenljivka prekrivne B0 /B1 (8-bitni) spremenljivke, ki je prekrila bit0 /bit1 /.../bit15 (1-bit) spremenljivk, tako da, ko vstavite košček iz DS1620 v bit 8 in razkorak W0 za 2, kaj počnete seli vsak bit v desno za shranjevanje temperature 9-bitno od DS1620 v W0. Ko je temperatura shranjena v W0, funkcijsko podprogram odloči, če je število pozitiven ali negativen in ga prikaže ustrezno na LCD kot temperaturi Celzija. Pretvorba iz stopinj C do stopinj F:
DF = DC * 9/5 + 32Na tej točki, smo uspeli ustvariti izjemno drago termometer.