Vai al contenuto
PLC Forum


Protocolli I2C su Microcontrollore Atmel - è possibile averne due separati?


Skynai

Messaggi consigliati

Salve a tutti,

sto lavorando su un ATmega16 della Atmel montato su una scheda di I/O analogica.

Tale scheda comunica esternamente con la scheda CPU su cui è montato un fujitsu tramite I2C sui due fili SCL SDA (pin C0,C1).

Vorrei sapere se è possibile configurare i pin B0 (XCK/T0), B1(T1) per poter comunicare con due Convertitori digitali analogici su protocollo I2C montati sulla scheda.

In pratica avrei due mondi separati.

Uno con bus i2c che permette la comunicazione di più schede con la scheda CPU.

L'altro sempre su protocollo I2C che permette il funzionamento delle schede stesse.

L'ATmega 16 ha però solo due pin nativi per I2C. come posso implementare un secondo Bus interno?

come posso fare?

Link al commento
Condividi su altri siti


Perchè voglio mantenere il sistema il più possibile espandibile e standard. Identificando la scheda con un semplice jumper, l'ATmega16 in fase di avvio si identifica da sola. In caso di più schede basta impostare il jumper sulla seconda scheda e il gioco è fatto.

Collegare i DAC alla stessa interfaccia creerebbe problemi nell'indirizamento (e ormai la scheda ce l'ho wink.gif) ed un ulteriore intervento sul codice ogni volta che aggiungo una scheda.

Ad ogni modo, sapete come aiutarmi?

Link al commento
Condividi su altri siti

non ho capito bene cosa vuoi fare ma se hai solo una periferica I2C l'unico modo per crearne un'altra indipendente è quello di scriverrti il driver software. come credo abbia ipotizzato tu. L'operazione è molto semplice se devi realizzare il master perchpè devi scrivere solo delle macchine a stati che eseguono la sequenza di comunicazione

Più difficile è il driver slave e la gestione del multimaster.

Per le temporizzazioni io ho implementato I2C su micro lentissimi (1MHz di clock) quindi bastavano uno o due nop in fila. Se il tuo Atmel corre potresti dedicare un timer alla temporizzazione ad ogni interrupt la tua macchina a stati avanza di un passo.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...