temp-station bygge

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Borre
Inlägg: 4610
Blev medlem: 14 juni 2007, 15:43:50
Ort: Hälsingland

Re: temp-station bygge

Inlägg av Borre »

Googla på 1-wire.
danielr112
Inlägg: 8092
Blev medlem: 18 januari 2009, 00:48:24
Ort: Alvesta, Småland

Re: temp-station bygge

Inlägg av danielr112 »

1-wire kan som bäst köras på 2 ledare och xx antal sensorer på samma slinga. (Detta var väldigt kort sammanfattat)
diman
EF Sponsor
Inlägg: 192
Blev medlem: 14 februari 2007, 09:58:06
Ort: Löddeköpinge

Re: temp-station bygge

Inlägg av diman »

finns det någon simulator / plug-in till mplab-sim som låter en generera "simulerat" input så att man kan testa även de programdelar som triggas av externa interrupt ?

Edit: Gratis naturligtvis :P
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: temp-station bygge

Inlägg av sodjan »

Ja, det är inbyggt.
diman
EF Sponsor
Inlägg: 192
Blev medlem: 14 februari 2007, 09:58:06
Ort: Löddeköpinge

Re: temp-station bygge

Inlägg av diman »

hittade det. Tackar :-). Blev aningen missledd av någons tidigare inlägg här på forumet att i just MPLAB Sim gick det ej att köra program som krävde aktiva input signaler...

Svaret på min fråga:
http://techtrain.microchip.com/websemin ... 092304.pdf
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: temp-station bygge

Inlägg av sodjan »

Man ska inte tro allt man läser... :-)
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: temp-station bygge

Inlägg av vfr »

Det låter motsägelsefullt för att komma från dig, Janne. :-) Du, och även jag i många fall, förespråkar ju just att man ska läsa.

Hehe, förstår att det kan vara lite olika saker.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: temp-station bygge

Inlägg av sodjan »

Man ska inte tro allt man läser (på forum)... :-)
Hur som helst, i detta fall fanns det ju ingen direkt
referens till källan, så det går inte att kommentera
vidare vad det var som diman hade läst.
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Re: temp-station bygge

Inlägg av BEEP »

"1-wire sensorer"
DS18S20 och DS18B20 är ganska populära: Du kan sätta flera på samma kabel eller varsin.
Det finns en uppsjö av bibliotek och kodexempel på nätet (man behöver inte använda Google för det finns andra sökmotorer :) ).

73-775-00 , 73-775-59
diman
EF Sponsor
Inlägg: 192
Blev medlem: 14 februari 2007, 09:58:06
Ort: Löddeköpinge

Re: temp-station bygge

Inlägg av diman »

snyggt!
dock har jag redan de sensorerna som ska användas i det här projektet.
Men det är intressant med 1-wire, kommer definitivt titta på ämnet.
Det finns säkert en uppsjö av komponenter som använder sig av 1-wire gränssnittet :)
danielr112
Inlägg: 8092
Blev medlem: 18 januari 2009, 00:48:24
Ort: Alvesta, Småland

Re: temp-station bygge

Inlägg av danielr112 »

1-wire växer för varje dag. Och är redan idag ganska stort.
diman
EF Sponsor
Inlägg: 192
Blev medlem: 14 februari 2007, 09:58:06
Ort: Löddeköpinge

Re: temp-station bygge

Inlägg av diman »

nu har jag sökt genom databladet
http://ww1.microchip.com/downloads/en/d ... 41262a.pdf (P16F690)
så bokstäverna håller på att dansa runt, hittar ej. Står säkert där, men jag kan nog lägga ytterliggare två timmar på att leta, så jag frågar istället:

Var ser jag vad som varje pinne är vid startup? som inte är digitala I/O by default så att säga.
t.ex. jag vet att för att använda RA2 som digital I/O måste TOCS nollas för att RA2 delar pinne med T0CKI
men detta vet jag endast pga en tutorial. Jag ser inte detta någonstans i databladet, och anmärkningen att detta måste göras för att använda RA2 som digital I/O hittar jag inte i databladet heller.
Så är inte fallet med t.ex. RB4, där räcker det med att ange den pinnen som output i TRISB.


Den andra frågan som är något lik den fösta:
tutorial säger följande:
Bild

makes sense...
dock, de program som följer med min pickit2 som använde PORTC 0-3 för att blinka led, struntar i detta helt och hållet, och de fungerar... Varför ?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: temp-station bygge

Inlägg av sodjan »

> Var ser jag vad som varje pinne är vid startup?

Det står ganska tydligt i databladet. Nej visst ja, du hade ju redan letat... :-)

Men det är i kapitlet I/O PORTS, PORTA, PORTB o.s.v.
Sedan är det bara att kolla för den eller de pinnar som man undrar.

Det finns vissa generella regler :
  • För de pinnar som *kan* ha analoga (ADC, komparator) funktioner så
    gäller att de analoga funktionerna alltid är *PÅ* efter en reset.
  • För den digitala delan av *alla* pinnar så gäller att de alltid är *input* efter en reset.
> t.ex. jag vet att för att använda RA2 som digital I/O måste TOCS nollas för att RA2 delar pinne med T0CKI
> och anmärkningen att detta måste göras för att använda RA2 som digital I/O hittar jag inte i databladet heller.

Kanske det, men vad är värdet efter en reset ? Det finns en speciell tabell som visar hur alla
kontroll-register (SFR) står efter en (eller olika slags) reset. Det står på många ställen för
övrigt, det är bara att kolla på beskrivningen av det aktuella registret så har du det.
Det finns även angivet på varje ställe/sida där man anger detaljerna för ett
visst register. Se t.ex "REGISTER 5-1" där OPTION_REG med bl.a T0CS finns med.

Generellt gäller att *om* du vill använda t.ex RA2, så läser du på om just RA2 i kapitlet I/O PORTS, PORTA.
Sedan sätter du allt som har med PORTA/RA2 att göra så som du vill ha det.
Det finns inget annat sätt att fixa det på !

Just i det speciella fallet med RA2 och Timer0, så är det nog inget problem.
T0CKI (extern klocka) som delas med RA2 en *ingång* så det speler ingen större roll
att den delas med RA2. Det är ju inte så att Timer0 *driver* RA2 på något sätt. Om
du inte använder Timer0 på något annat sätt så är det ju aldrig något som "syns"...

> dock, de program som följer med min pickit2 som använde PORTC 0-3 för att blinka led,
> struntar i detta helt och hållet, och de fungerar... Varför ?

Ja, ett lite slarvigt och otydligt exempel, men helt "enligt specifikationen".
Det är bara när man vill använda pinnen som digital *INPUT* som det blir
konflikt med de analoga funktionerna. För att köra dom som utgångar så
måste man inte slå av analoga funktionerna, men man gör det alltid ändå,
av diverse olika orsaker, det kan bli ganska spännande R-M-W buggar annars...
(Read-Modify-Write)
diman
EF Sponsor
Inlägg: 192
Blev medlem: 14 februari 2007, 09:58:06
Ort: Löddeköpinge

Re: temp-station bygge

Inlägg av diman »

Tackar :) Jag förstår!
Läser I/O kapitlet (varför har jag inte tittat där ... :vissla: )

så en bra vana är alltså att "nolla" ANSEL på samtliga utgångar ?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: temp-station bygge

Inlägg av sodjan »

> så en bra vana är alltså att "nolla" ANSEL på samtliga utgångar ?

En bra vana är att göra som databladet rekomenderar. Beroende på
vilken processor det gäller så kan det vara så som du säger.
Jag tänker inte slå upp det... :-)
Skriv svar