dotaz na ds18b20

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
filuta

dotaz na ds18b20

#1 Příspěvek od filuta »

Mám dotaz na teplotní èidlo ds 18b20 a to následující, mìøím teplotu s tímto èidlem s pomocí PIC 16F630.Pro snížení spotøeby mìøím teplotu jednou za minutu, použil jsem na to pøíkaz sleep a v druhém pøípadì i èasovou smyèku ,ale problém je stejný a to takový že když èidlo zahøívám rukou tak teplota roste, potom je ta minutová pauza po niž by teplota mìla už klesnout ale ona ještì vzroste a zaène klesat až po dalším minutovém intervalu. Prosím nevíte co s tím?Ze zaèátku jsem si myslel že je to tím probuzením než se procesor znovu rozjede, ale dneska jsem použil jenom minutovou èasovou smyèku a dìlá to taky, Použil jsem program teplomerds.asm z diskuze http://www.ebastlirna.cz/modules.php?na ... ight=18b20.

Uživatelský avatar
ViPali
Příspěvky: 524
Registrován: 21 lis 2005, 01:00
Bydliště: Bratislava

#2 Příspěvek od ViPali »

Nechce sa mi kontrolovať *.asm, ale ak dobre rozumiem, tak by malo byť:
meraj, zobraz, čakaj(1min),

skontroluj, či nie je:
meraj, čakaj(1min), zobraz
Ako elektrikár sa cítim slobodne.
Môžem hovoriť do vedenia!

filuta

#3 Příspěvek od filuta »

já jsem to asi špatnì napsal když dám ruku pryè tak teplota by po minutì mìla jít dolù ale ona ještì jde nahoru a po další minutì jde teprve dolù.
Mìlo by to být: mìø, zobraz, èekej(1min),...... mìø, zobraz, èekej(1min)

Uživatelský avatar
Chenzee
Příspěvky: 464
Registrován: 26 čer 2007, 02:00
Bydliště: Vysočina

#4 Příspěvek od Chenzee »

Myslím, že je problém ve sledu akcí tak, jak píše VIPALI. Musí se zadat převod teploty, počkat čas potřebný pro převod a nově převedenou hodnotu teprve načíst a zobrazit. Taky mě to připadá, že máš: načíst teplotu, zobrazit a pak teprve převést. Zkontroluj posloupnost příkazů. Kdyžtak sem dej přímo ten *.asm. Jukneme na to :wink:

filuta

#5 Příspěvek od filuta »

posílám ten .ASM soubor opravdu nevím kde muže být chyba poøát na to koukám a tak prosím o jakékoli nakopnutí?
Přílohy
teplomerds_FF.asm
(24.26 KiB) Staženo 197 x

Uživatelský avatar
Chenzee
Příspěvky: 464
Registrován: 26 čer 2007, 02:00
Bydliště: Vysočina

#6 Příspěvek od Chenzee »

Ahoj, tak jsem našel dvě věci. Jednak na řádku cca 424 je skok na neexistující návěstí (goto DS_KOM_1) a jednak máš špatně nastavené config word. Místo tvého 0x3FA1= VYPNUTÝ WATCHDOG musíš mít 3FA9 = zapnutý WATCHDOG. Jinak by to mohlo fungovat.

filuta

#7 Příspěvek od filuta »

dìkuji za radu ale nepomohlo to udìlal jsem to tak ,že mezera mezi mìøením je jenom než pøeteèe watchdog (asi 2,3 S) a už to neøeším chci se už vìnovat dalším konstrukcím

Uživatelský avatar
Chenzee
Příspěvky: 464
Registrován: 26 čer 2007, 02:00
Bydliště: Vysočina

#8 Příspěvek od Chenzee »

Ještě mě napadlo, zda máš krystal na 4MHz?

filuta1

#9 Příspěvek od filuta1 »

mám interní oscilátor 4Mhz i kalibraèní konstantu, zajímavé je že používám jenom jedenkrát pøeteèení WATCHDOGU což je s pøeddìlièkou tech 2,3S a funguje to ale když dám ještì smyèku aby èidlo mìøilo každých 23S tak už to nejde! Nevadí pøišly mi tlakové èidla od freescale tak zkusím udìlat barometr (A/D pøevodník jsem ještì nezkoušel)s dvouøádkovým displejem poøád jsem ještì zaèáteèník.

filuta

#10 Příspěvek od filuta »

neøíkám že mì to neštve, ale do budoucna bych chtìl dát mìøení teploty, tlaku ,vlhkosti do jednoho zaøízení s dvouøádkovým displejem taková malá meteostanice takže to doladím až pak , program bude stejnì jiný. Ještì jednou dìkuji za odpovìdi

Uživatelský avatar
Chenzee
Příspěvky: 464
Registrován: 26 čer 2007, 02:00
Bydliště: Vysočina

#11 Příspěvek od Chenzee »

Nebudu tedy do toho rýpat, ale něco mi tu nehraje. Config slovo je na externí krystal XT, takže by to asi fungovat nemělo (pokud ho nepřepíšeš v porgamátoru). jo a ještě se doporučuje po SLEEP dát jako první NOP instrukci ... tak čau

filuta

#12 Příspěvek od filuta »

konfiguraèní slovo je na INTERNI OSC, nahraju program do programu WIN PIC a vidím konfiguraèní slovo 3F9C nic už v prográmátoru nenastavuju ta poznámka (__CONFIG 0x3FA1)na øádku 69 je špatnì asi to vzniklo tím že jsem zkopíroval program a pak upravoval a nepøepsal poznámky. Instrukce nop jsem taky zkoušel a nepomuže to

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“