Pic16f628 spi ds1620

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Pic16f628 spi ds1620

Inlägg av victor_passe »

Hej, jag ska läsa temperaturen från en ds1620 och visa den på en hd44780 lcd.
All kod sak skrivas i assembler, jag har redan fått ut text på displayen men hur använder jag spi?
Skickar jag bara ett värde till ett register och sedan aktiverar spi eller något?
om du ska skriva en bit kod för att skicka något värde över spi skulle jag bli mycket glad.

Finns det något lättare sätt att läsa temp på en pic? jag behöver inte någon hög upplösning, 2C duger fint.

Och allt måste kodas i asm.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Det heter "DS1620", "HD44780", "SPI" och "PIC".

> men hur använder jag spi?

Jag utgår från att DS1620 är en SPI krets...

Det står inte i inlägget vilken PIC du tänker använda, men en del
PIC modeller har en hårdvaru-SPI modul och då använder du den.
För andra PIC modeller (utan hårdvaru-SPI modul), så får du skriva
programvarurutiner...
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 en titt på denna
http://www.maxim-ic.com/appnotes.cfm/ap ... umber/2361
Sedan får du koppla MOSI och MISO och i sin tur MISO till DS1620 med ett motstånd, ex 1k eftersom du har 3wire spi och inte 4wire (om du vill använda koden rakt av).

Annars så går den modifiera så att det bara kräver 3 pinnar på processorn.
SPI:n i exemplet är mjukvaruemulerad, men du behöver inte någon hastighet så.
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Inlägg av victor_passe »

Jag skrev iof pic16f628 i rubriken.
Och visst, det saknas några versaler i mina texter.

Och jag tror att jag köper an av de kretsarna som ger ett pulståg på en pinne linjär med spänningen istället för då kan jag använda en pic16f84A och behöver inte skaffa en 628.
Men tack för svaren!
Användarvisningsbild
mri
Inlägg: 1165
Blev medlem: 15 mars 2007, 13:20:50
Ort: Jakobstad, Finland
Kontakt:

Inlägg av mri »

Du behöver inte hårvarustöd i MCU'n för att läsa av en DS1620! Det räcker bra med en vanlig I/O pinne som hanteras med mjukvara.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Jag skrev iof pic16f628 i rubriken.

Den syns inte när man skriver svaret.
All rellevant info bör finnas i själva inlägget.

> ...för då kan jag använda en pic16f84A

Skulle det vara en fördel ??
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

mri skrev:Du behöver inte hårvarustöd i MCU'n för att läsa av en DS1620! Det räcker bra med en vanlig I/O pinne som hanteras med mjukvara.
SPI kräver minst två I/O-pinnar (CLK + DATA) plus ev. chipselect ovanpå det. Men det går utmärkt att göra i mjukvara om man inte har en SPI-modul.
Användarvisningsbild
mri
Inlägg: 1165
Blev medlem: 15 mars 2007, 13:20:50
Ort: Jakobstad, Finland
Kontakt:

Inlägg av mri »

Varför SPI är med i diskussionen är jag inte helt säker på. Vad jag dock är säker på är att DS1820 använder ett så kallat 1-Wire protokoll och där räcker det med en vanlig I/O pinne som kan switchas mellan ingång och utgång. DS1820 har olika många ben beroende på kapsel, men bara tre av dem används: Vdd, GND och DQ.

När jag skulle koppla en DS1820 till min Renesas MCU hitta jag färdig C kod på nätet. Koden var iofs skriven för AVR men kunde med minimala förändringar användas på Renesas. Garanterat hittar du motsvarande kod för PIC i assembler. Att läsa av en DS1820 är inte triviellt så du sparar nog en massa tid på att låna färdig kod.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Jo, men det står DS1620, inte 1820.

I databladet står specifikt tre pinnar; DQ, CLK och /RST. Sedan om man måste använda /RST, vet jag inte.
Användarvisningsbild
mri
Inlägg: 1165
Blev medlem: 15 mars 2007, 13:20:50
Ort: Jakobstad, Finland
Kontakt:

Inlägg av mri »

Ahh! OK, mitt fel. Då är jag med. :)
Skriv svar