Sida 3 av 5

Postat: 29 augusti 2004, 00:31:41
av Fredrick
Nja 4Mhz kör jag på.

Jag mäter PulsIn i 10 us, vilket ínte valbart utan det beror på klock hastigheten.

men skall inte 10us räcka?

Postat: 29 augusti 2004, 00:32:51
av RDX*
Om du inte håller på med något annat så kan du a vända polling för att mäta upp Tx.
Dvs. du gör en loop som bara räknar upp ett register så länge T1 är hög. På detta sätt kan du själv "ställa in" din noggrannhet.

Postat: 29 augusti 2004, 00:36:53
av Fredrick
Skall det verkligen vara så svårt att läsa ut temperatueren med en PIC? finns det inget lättare sätt, annan temp sensor kanske???

Postat: 29 augusti 2004, 00:38:11
av danei
som det är nu så går det 6° på ett steg i T1. Du skulle behöva öka upplösnigen med en fakor 10 eller liknande.

Postat: 29 augusti 2004, 00:41:36
av Fredrick
Jo visst men hur gör jag det?

PIC´en vill ju inte äns veta av tal med decimaler.


Är jag den ända här som försöker läsa ut temeraturen från en PIC?

Postat: 29 augusti 2004, 00:52:03
av danei
picken vill inte ens räkna med talöver 255. Allt annat får man fixa till på något sätt. Jag vet inte vilka möjligheter som finns i din kompilator. Men det går att räkna med en PIC. Och det går att mäta pulser med bra nogranhet. Det är med kompilatorn det hänger på. Jag har bara jobbat med asm och C. asm är inte att rekomendera för matten. Men kanske för avläsningen.

Postat: 29 augusti 2004, 00:53:58
av RDX*
Du är säker på att du har deklarerat dina variabler rätt, så att det inte finns någon som inte drar ner på noggrannheten.

Postat: 29 augusti 2004, 00:54:20
av Fredrick
Nja tal under 65536 klarar PBP iallafall.

Postat: 29 augusti 2004, 00:56:09
av Fredrick
Alla variabler är deklarerade som WORD i PicBasic vilket innebär tal upp till 65536.

Postat: 29 augusti 2004, 00:57:04
av RDX*
Om alla är word hur kan du då få fram kvoten?

Postat: 29 augusti 2004, 01:01:32
av RDX*
Testa deklarera kvoten som Single.

Postat: 29 augusti 2004, 01:04:32
av Fredrick
Single stöds inte i PBP

Postat: 29 augusti 2004, 01:06:46
av RDX*
finns det någon variabel som stöder decimaltal?


Pic :doh: nä, tacka vet jag AVR :wink:

Postat: 29 augusti 2004, 01:07:16
av danei
Som jag sa. Det är kompilatorn det hänger på. 32bitars flytal är inget problem. Men picen klara bara 8bitar. Så över det är det många asm instruktioner för att få fram ett svar. Men din kompilator kör nog med mer än vanliga 16bits tal. Annars skulle det inte gå alls.

Postat: 29 augusti 2004, 01:18:31
av EagleSpirit
Fredrick skrev:Jo visst men hur gör jag det?

PIC´en vill ju inte äns veta av tal med decimaler.


Är jag den ända här som försöker läsa ut temeraturen från en PIC?
det finns trådar och det finns massor av personer som läser av temperaturen med PIC men med andra kretsar. Antingen med NTC motstånd eller riktiga IC kretsar som skickar ett värde med antingen parallell eller seriekommunikation. Den där varianten du använder har jag själv aldrig hört talats om.

om vi säger att det är hastighetsproblem så är det ju pga pic basic eftersom det inte blir så smidig kod.

om det är räknefel så har jag ingen aning. Kör lite debug. Skriv ut T1, T2 och temperatur på lcdn. Skriv upp värdena. Testa att hålla fingret på den eller något liknande så att temperaturen stiger. Kolla om värdena hoppar mycket eller om det ökar stabilt