Termostat/tempgivare
Termostat/tempgivare
Tänkte bygga en termostat med flera givare för att kunna styra fläktar och pumpar, en PIC 16F628 borde väl bli en bra början, NTC motstånd som givare.
Jag programmerar i PIC-Basic.
Tänkte först kommandot POT i PIC-Basic och koppla en kondensator/NTC-motstånd
PIC 16F628 har analoga portar, det måste väl gå att läsa dom direkt över NTC-motståndet.
Kan jag prorammera dom direkt med PIC-Basic eller har någon en färdig kod i assembler för att läsa analoga signaler.
Är nybörjare på PIC-kretsar och dess programmering.
Jag programmerar i PIC-Basic.
Tänkte först kommandot POT i PIC-Basic och koppla en kondensator/NTC-motstånd
PIC 16F628 har analoga portar, det måste väl gå att läsa dom direkt över NTC-motståndet.
Kan jag prorammera dom direkt med PIC-Basic eller har någon en färdig kod i assembler för att läsa analoga signaler.
Är nybörjare på PIC-kretsar och dess programmering.
Hmm... jag skulle rekommendera dig att beställa gratis samples av DS1620 från www.maxim-ic.com...
Det är 1-wire termometrar... gratis... B version har en känslighet på +-0,5grader C
Betydligt mkt mer korrekt avläsning än för det du hade tänkt använda... POT kommandot är inte jätte bra att använda för temperatur heller... blir lätt lustiga uträkningar då...
//Rille
Det är 1-wire termometrar... gratis... B version har en känslighet på +-0,5grader C
Betydligt mkt mer korrekt avläsning än för det du hade tänkt använda... POT kommandot är inte jätte bra att använda för temperatur heller... blir lätt lustiga uträkningar då...
//Rille
OK Rille, jag har lyssnat på dig, beställt lite sampler, nu är det bara att läsa på hur dom fungerar.
Tips mottages med största möjliga glädje.
DS1626 - High-Precision 3-Wire Digital Thermometer and Thermostat
DS1726 - High-Precision 3-Wire Digital Thermometer and Thermostat
DS18S20 - 1-Wire Digital Thermometer
Trevlig kväll
Tips mottages med största möjliga glädje.
DS1626 - High-Precision 3-Wire Digital Thermometer and Thermostat
DS1726 - High-Precision 3-Wire Digital Thermometer and Thermostat
DS18S20 - 1-Wire Digital Thermometer
Trevlig kväll
Låter gött... tror du reder ut det mesta med hjälp av sidan jag har lagt in i tidigare inlägg... hmm... inte utan att jag själv blir lite sugen på att testa bara för det... har nämligen ett projekt på G till bilen... ska ha 3 st temp givare och en LCD. temp från slutsteg, coupe och insug hade jag tänkt... det har dock legat nere ett tag nu pga skolan... kommer nog igång igen vecka 44... (har lov då ju
)
Om du hinner göra ngt innan så skicka ett PM eller gör ett inlägg här så att alla andra kan se hur det går vetja
//Rille

Om du hinner göra ngt innan så skicka ett PM eller gör ett inlägg här så att alla andra kan se hur det går vetja

//Rille
Tack Maxim, delarna har kommit.
DS18S20 blev mitt första val.
Det här var kul, kan läsa av värdet på display och jämföra temperaturer och ställa villkor.
Men när jag ska jämföra det binära talet med ett decimaltal slog jag huvudet i väggen.
Problem vid programmering i Basic, så här skriver man när man vill ha ut väderna KamTe på display som är ett hämtat värde från tempgivare DS18S20.
LCDOut $fe, 1, DEC (KamTe >> 1),".",DEC(KamTe.0 * 5)," grader C"
Nu vill jag jämföra dessa värden med decimala tal, eftersom jag klarar mig på hela grader försökte jag med
If DEC (KamTe >> 1)>5 then
Low PORTB.1
EndIf
Men det gillar inte PIC-Basic
Då försökte jag att göra om värdet till en sträng.
Okand=DEC (KamTe >> 1)
Ingen lycka där heller.
Kul att leka med PIC:en
Heeelp
DS18S20 blev mitt första val.
Det här var kul, kan läsa av värdet på display och jämföra temperaturer och ställa villkor.
Men när jag ska jämföra det binära talet med ett decimaltal slog jag huvudet i väggen.
Problem vid programmering i Basic, så här skriver man när man vill ha ut väderna KamTe på display som är ett hämtat värde från tempgivare DS18S20.
LCDOut $fe, 1, DEC (KamTe >> 1),".",DEC(KamTe.0 * 5)," grader C"
Nu vill jag jämföra dessa värden med decimala tal, eftersom jag klarar mig på hela grader försökte jag med
If DEC (KamTe >> 1)>5 then
Low PORTB.1
EndIf
Men det gillar inte PIC-Basic
Då försökte jag att göra om värdet till en sträng.
Okand=DEC (KamTe >> 1)
Ingen lycka där heller.
Kul att leka med PIC:en
Heeelp
Måste du verkligen specificera vad det är för ngt då?
Du har ju med DEC...
If KamTe>5 then
Low PORTB.1
EndIf
Kanske går... ta och titta i Pic Basic manualen annars... där ska det ju iaf finns svar...
Får man se koden du har skrivit för att kommunicera med DS18S20:on? Hade verkligen uppskattat att få se allt ihop!
//Rille
Du har ju med DEC...
If KamTe>5 then
Low PORTB.1
EndIf
Kanske går... ta och titta i Pic Basic manualen annars... där ska det ju iaf finns svar...
Får man se koden du har skrivit för att kommunicera med DS18S20:on? Hade verkligen uppskattat att få se allt ihop!

//Rille
Kolla igenom manualen... där finns dessutom ganska mkt smått och gått som gör att du förstår betydligt mkt mer av koden du nu "bara" har kopierat... t ex hur man skriver IF satser... jag är hundra på att du kommer få fram svaret på din egna fråga när du börjar glo i den! 
Manualen finns här -->> http://www.devinc.sytes.net/~rikard/pdf/pbpm502a.pdf
//Rille

Manualen finns här -->> http://www.devinc.sytes.net/~rikard/pdf/pbpm502a.pdf
//Rille