SPI komunikace pomocí PIC jako mistr

A

awan

Guest
Ahoj, Snažím se odesílat data z PIC16F88 na slave JENNIC mikrokontroléru. PIC16F88 lze odeslat jen 8bits údajů o SPI na jeden zátah. Ale pro JENNIC pro příjem dat, je třeba nejdříve dostat 0x02 (stav) a 0x00 (nulová výplň pro JENNIC pro odpověď) a pak očekává, že délka dat být poslán před vlastní data mohou být poslána. Nejsem si jistý, ale i dont přijímat data o JENNIC, může někdo prosím, veď mě na to. Je možné, že PIC odesílá data přes SPI v 8bits a JENNIC očekává, sekvenčního snímání. Odeslat data takto:, (! BF) (! BF) SSPBUF = 0x02 / / stav JENNIC pro příjem dat a zároveň, test = SSPBUF,, SSPBUF = 0x00 / / Zero padding pro JENNIC odpovědět, zatímco, test = SSPBUF; SSPBUF = 0x01, / / 32 bit délka slova, když poslal (BF!), test = SSPBUF, SSPBUF = 0x01, / / Next 4 bity dat while (BF!), test = SSPBUF, SSPBUF = 0x02; while ( ! BF), test = SSPBUF, SSPBUF = 0x03; while (BF)! test = SSPBUF, SSPBUF = 0x04; while (BF)! test = SSPBUF, díky,
 
Všechny komunikace SPI stane na 8 nebo 9 bitů, 9 bitů je zvláštní případ pro kontrolu chyb. Takže 8 bitů = 1byte bude fungovat. Oba regulátory musí mít stejnou konfiguraci SPI, stejnou rychlost (Baud rate), stejně délku slova (8 nebo 9 bitů), stejný počet stop bitů, atd. Jakmile jste si jisti, že oba mají stejnou konfiguraci, hardware připojení by měl být správný, stejně. Po tomto protokolu mezi JENNIC a regulátoru PIC by měl být správný. Na základě vašich komentářů: SSPBUF = 0x02, / / stav JENNIC pro příjem dat while (BF!), Test = SSPBUF, zde se čeká na JENNIC pro odpověď: SSPBUF = 0x00, / / Zero padding pro JENNIC odpovědět while ( ! BF), test = SSPBUF, ale vy nečtete, že informace zpět, aby se ujistil nějaké sdělení bylo vytvořeno. Předpokládejme, že komunikace mezi kontrolory úspěšném Další myslíte poslat, kolik byte bude zaslán. Takže pokud budete posílat 5 bajtů dat, která by měla poslat: SSPBUF = 0x05, / / 5 bytů k odeslání a zároveň, test = SSPBUF, pak budete posílat 5 bytů, bez ohledu na hodnoty (BF!). Doufám, že to může pomoci, snad může obsahovat více informací.
 

Welcome to EDABoard.com

Sponsor

Back
Top