RH och temp via i2c / 1-wire

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Efter lite pill med den minsta lödspetsen så är kretsen uppkopplad. Har plitat ihop ett litet program som bit-bangar kommunikationen också. Har dock lite problem. Skumt nog uppstår det bara när jag instruerar kretsen att mäta fukthalt. Under temp-mätning så uppstår inte samma problem. Skickar kommando till kretsen ca en gång per sekund, väntar en halv sekund och läser sedan av resultatet. Ibland får jag då bara ettor från kretsen. Ska ta och gå igenom programmet ordentligt och skriva om vissa delar från början.

Bilder på uppkopplignen kommer så snart jag får fart på min server. Det verkar ju vara obligatoriskt med bilder här :lol:

Men nu till en fråga:
http://www.sensirion.com/en/pdf/product ... HT7x_E.pdf

På sidan 3 i databladet ovan ser man ett timing-diagram. Tittar man på de delarna som visar när man läser data från kretsen så tolkar jag det som att man skall sätta SCK hög och sedan läsa av DATA innan man drar SCK låg igen. Stämmer det?

Mvh
Nisse
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Alltså, det funkar att köra den mot I2C(TWI) porten på din processor vilket borde vara enklae än att bitbanga.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Jo jag vet att det går att köra den mot TWI.
Tanken är dock att jag vill ha flera sensorer på en I2C-buss. Då är processorns uppgift vara ett interface mellan sensorn och I2C.

Eller menar du att jag kan hänga på både SHT11 och I2C på processorns TWI?

Mvh
Nisse
Användarvisningsbild
PHermansson
EF Sponsor
Inlägg: 4340
Blev medlem: 22 december 2004, 00:46:38
Ort: Särestad Grästorp
Kontakt:

Inlägg av PHermansson »

björn skrev:Alltså, det funkar att köra den mot I2C(TWI) porten på din processor vilket borde vara enklae än att bitbanga.
I databladet står det klart och tydligt att den inte är I2C-kompatibel?
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

PHermansson -> Jo, men så är ju inte TWI helt och hållet bara I2C heller.
TWI är Atmels universal tvåtrådsinterface som bara råkar vara I2C kompatibelt. Som jag lyckats förstå så skall TWI kunna prata SHT11 om jag skulle vilja. Men i detta fall vill jag inte det.

Mvh
Nisse
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Nisse skrev:Jo jag vet att det går att köra den mot TWI.
Tanken är dock att jag vill ha flera sensorer på en I2C-buss. Då är processorns uppgift vara ett interface mellan sensorn och I2C.

Eller menar du att jag kan hänga på både SHT11 och I2C på processorns TWI?

Mvh
Nisse
ok, då förstår jag. Jag har inte jämfört TWI/SHT11 så noga att jag vågar påstå att det kan blandas mellan i2c och SHT´ns avart. Men om jag skulle använda det som du tänkt hade jag iallafall kollat databladen för att veta vad som skiljer (nu har du kanske redan det och det är jag som sitter här o yray för mig själv bara....) och om det går att blanda.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Björn -> Jag är inte så skicklig att jag klarar av att skriva ett program som bit-bangar kommunikationen med SHT11 utan att läsa databladen. :D

Men så hade jag ju en fråga också: (även den tyder på att jag läst databladen)
http://www.sensirion.com/en/pdf/product ... HT7x_E.pdf

På sidan 3 i databladet ovan ser man ett timing-diagram. Tittar man på de delarna som visar när man läser data från kretsen så tolkar jag det som att man skall sätta SCK hög och sedan läsa av DATA innan man drar SCK låg igen. Stämmer det?

Mvh
Nisse
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Datan ändras vid negativ flank och är "valid" under nästa positiva puls.
EDIT: Så ja, du tänker rätt.
Björn -> Jag är inte så skicklig att jag klarar av att skriva ett program som bit-bangar kommunikationen med SHT11 utan att läsa databladen
Jo, det e klart :) Frågan är hur mycket som skiljer från "vanlig" I2C.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Inlägg av v-g »

björn:Troligen är det inte "I2C" bara för att slippa betala royalty.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

björn skrev:Jo, det e klart :) Frågan är hur mycket som skiljer från "vanlig" I2C.
När det gäller SHT11 så skiljer det en hel del från I2C. Största skillnaden är väl att det inte finns någon adressering, vilket gör att det inte går att sätta flera på samma buss.

Mvh
Nisse
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

Det går att lösa det också
http://www.maxim-ic.com/appnotes.cfm/appnote_number/955

Med detta så kan du ha 3 st SHT11
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Och hur skall jag då styra Maxim-kretsen?
Den lösningen kräver även den att SHT11 kan kopplas på samma buss som I2C enheter, vilket den inte kan.

Men det var en klart intressant appnote...

Mvh
Tobbe
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

Ta två pinnar till styra switchen och två pinnar för prata med SHT11.
SHT11 ser mer ut att ha bidirectional spi.

Edit: nu vet jag inte om antal pinnar på processorn var begränsade eller ej.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Men då får jag ju fortfarande bitbanga? (antingen I2C till switchen eller SHT11 protokoll).

I så fall skulle det vara enklare med en analog switch som inte hade I2C interface utan bara 2 adresspinnar. 2 utgångar från AVR för att välja mellan SHT11or och TWI för att prata med dom. Då slipper jag bitbanga I2C.

Ännu bättre skulle vara en AVR med dubbla TWI :lol:

Mvh
Nisse
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

Det går att använda TWI och en uart som halv duplex spi.
Switcharna finns i spi variant också.

Edit: beror på din atmega självklart.
Skriv svar