I2C - lezione - BaroneRosso.it - Forum Modellismo

Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 13 marzo 12, 18:22   #1 (permalink)  Top
User
 
L'avatar di faustog_2
 
Data registr.: 19-07-2008
Residenza: catania
Messaggi: 978
I2C - lezione

interessante questo link..
se avete mezz'oretta consiglio una buona lettura.. magari datemi un riscontro:

pic: basics I2C-Interface

spiega con precisione come usare i modulo hardware del Pic 16F877 e del 16F876 per gestire il protocollo I2C
con i 6 registri preposti.

Anche se in tedesco si intuisce bene, soprattutto dopo aver letto il datasheet dei due Pic sopra citati.
Per esempio come preparare il proprio Pic in modalità Master ovvero per inviare byte....


in sostanza il registro SSPBUF viene usato per caricare il valore da spedire in modalità master oppure il valore da leggere nel caso slave

per esempio vogliamo spedire il seguente byte 10110011 :

MOVLW B'10110011'
MOVF SSPBUF

NEL CASO SLAVE INVECE prende il valore ricevuto lo mette in W e poi lo mostra in PORTB come segue:
MOVF SSPBUF,W
MOVWF PORTB

Come inviare dati quindi Modalità Master:

movlw B'00001000' ; master mode, clock=Fosc/(4*(SSPADD+1))
movwf SSPCON

bsf STATUS, RP0
bsf SSPCON2, SEN
bcf STATUS, RP0

Abilita alla trasmissione Send Enable, di seguito controlla se lo SLAVE ha inviato l' Acknowledge segno che ha ricevuto i dati

i2c_t1
btfss PIR1, SSPIF ; Testa se lo slave ha inviato l' Acknowledge
goto i2c_t1 ; se NO allora ritorna su
bcf PIR1, SSPIF ; altrimenti Ok dato ricevuto dallo SLAVE !


vediamo di seguito come invece preparare la modalità SLAVE, per ricevere:

i2c_rx
bsf STATUS, RP0
bsf SSPCON2, RCEN ; Daten Empfang einschalten
bcf STATUS, RP0
i2c_r7
btfss PIR1, SSPIF ; Daten Empfang fertig?
goto i2c_r7 ; nein, noch nicht
bcf PIR1, SSPIF ; ja, nun noch SSPIF zurücksetzen

movf SSPBUF, w ; empfangene Daten -> W
movwf RXData ; empfangene Daten -> RXData

Ok adesso il dato sta dentro il registro RXData quindi invia un Acknowledge al MASTER

ECCO FATTO!

bsf STATUS, RP0
bsf SSPCON2, ACKEN ; ACK senden
bcf STATUS, RP0


ALTRO LINK BUONO DOVE POTER STUDIARE E' IL SEGUENTE
Interfacing PIC microcontrollers: embedded design by interactive simulation - Martin Bates - Google Libri
faustog_2 non è collegato   Rispondi citando
Vecchio 13 marzo 12, 20:36   #2 (permalink)  Top
User
 
L'avatar di faustog_2
 
Data registr.: 19-07-2008
Residenza: catania
Messaggi: 978
gtpa010

il protocollo I2C l'ho contemplato per la possibile applicazione GPS...

il modulo GPS di cui dispongo è il GTPA010 .. ho trovato il suo datasheet mi sono accorto che usa la UART e non I2C

ecco il datasheet

http://www.propox.com/download/docs/GPS_GMM_U1LP.pdf

a dopo
fausto
faustog_2 non è collegato   Rispondi citando
Rispondi

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
I2C - lezione faustog_2 Circuiti Elettronici 3 23 febbraio 12 11:06
Calibration or I2C Error... CRO_Fek Batterie e Caricabatterie 5 22 gennaio 12 12:56
I2C PIC SLAVE LeoPG Circuiti Elettronici 1 17 febbraio 05 19:51



Tutti gli orari sono GMT +2. Adesso sono le 18:26.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002