Sida 1 av 1
SPI slav med pic12f675
Postat: 15 december 2003, 13:59:35
av zus
Hejsan.
Någon intelligent människa (eller maskin?) som kan ge mig några tips på hur man implementerar SPI med en pic som saknar SSP?
Alla ledtrådar/exempel är välkomna...
// Erik
Postat: 15 december 2003, 14:42:46
av matseng
Du vill alltså ha tag på bitbangade SPI-slave rutiner för PIC?
Bitbangade SPI-masters är inga problem att få tag på-
http://pdfserv.maxim-ic.com/en/an/app2361.pdf, men det är inte lika enkelt att hitta slavsoftan.
Ska leta lite.[/url]
Postat: 15 december 2003, 14:55:19
av zus
Exakt.
Har tänkt mig att använda pic:en som en [u]billig[/u] flerkanals A/D-omvandlare...eller...jag behöver bara två kanaler....
Ska använda tillsammans med en 3120 Neuron...
Vore mkt. trevligt om någon hittade ett litet "slav-exempel", för jag gör det inte.
// Erik
Postat: 15 december 2003, 16:44:01
av matseng
Jag har letat i en timma nu och inte hittat något.
Men å andra sidan verkar SPI-protokollet oändligt mycket enklare än I2C-protokollet. Så länge man håller sig till mode 1 så verkar det bara vara att skifta ut databitarna på utpinnen i den takt som klockpinnen anger när slaven är selectad av selectpinnen.
I ditt fall kanske du inte ens skulle behöva ta emot nån data från mastern om du skickar ut alla a/d-portarnas värden direkt efter varandra. Vill du däremot kunna välja vilken a/d-port du ska läsa så behövs ju en dubbelriktad kommunikation.
Postat: 16 december 2003, 19:20:53
av zus
Ok.
Tack ändå. För fixa helt själv då...men...jag har ju hela jullovet på mig.
Delar med mig av eventuella resultat...
// Erik
Postat: 20 december 2003, 17:52:17
av zus
Så...nu är det fixat, var ju inte så svårt :)
Koden kanske kommer genomgå en liten optimering snart dock...
Om det är någon som vill kika på hur det är gjort finns relevanta filer på länken nedan...
http://www.halsius.net/erik/pic/
// Erik
Postat: 20 december 2003, 17:56:35
av matseng
Kul att du fick det att fungera. Det såg ju ganska smidigt och bra ut det där.
Nästa steg är att implementera en bitbangad i2c-slav utan att titta på någons färdiga kod. Då har du att göra över hela julhelgen förmodligen :-)