I2C per AT89C51RD2

Sezione dedicata al sistema di sviluppo BASCOM-AVR per i micro AVR
At90s, Attiny, Atmega e Xmega

I2C per AT89C51RD2

Postby Henk » 20 Mar 2014, 18:17

Buonasera a tutti.

Dovrei far comunicare un AT89C51RD2 con una periferica in I2C. Quel micro non ha però una SPI dedicata con SCL/SDA per realizzare direttamente l'I2C.

Come si può fare in BASCOM-8051??

Grazie
Tiziano
Henk
 
Posts: 12
Joined: 21 Apr 2013, 10:51

Re: I2C per AT89C51RD2

Postby pier » 20 Mar 2014, 18:44

Se l'hw con il quale devi comunicare è "slave" la cosa è molto semplice (guarda l'help che descrive bene il tutto), diversamente mi pare si debba acquisire una libreria ad hoc (mcselec.com)
pier
 
Posts: 115
Joined: 11 Aug 2013, 22:05

Re: I2C per AT89C51RD2

Postby Henk » 20 Mar 2014, 19:18

Grazie pier,

in realtà non si è ancora stabilito chi è master e chi slave, si tratta di prevedere a livello di progettazione PCB una via di comunicazione I2C con un transponder e poi si vedrà il da farsi. Il punto adesso è sapere se la cosa è realizzabile in BASCOM-8051 (credo di sì, visti gli esempi in C presenti sul sito Grifo), quali pin vanno utilizzati quando il micro non li prevede e sapere come gestirli via FW (cosa altrimenti "normale" in BASCOM quando i pin dedicati ci sono).

Grazie
Saluti
Tiziano
Henk
 
Posts: 12
Joined: 21 Apr 2013, 10:51

Re: I2C per AT89C51RD2

Postby deluca » 20 Mar 2014, 19:29

@Henk,
Gestire l'I2C in modalità Master con implementazione software è possibile con Bascom-8051.
Il compilatore provvederà a inserire una porzione di codice assembly per emulare una porta TWI.
Quindi per prima cosa devi configurare arbitrariamente i pin destinati a SCL e SDA, inizializzare con I2Cinit e poi usare gli stataments relativi per avviare la comunicazione con la periferica I2C di tipo slave.
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)


Return to BASCOM-AVR

Who is online

Users browsing this forum: No registered users and 1 guest

cron