Sunteți pe pagina 1din 11

Arhitectura şi configurarea sistemelor integrate

Comunicaţia serială I2C între 2


dispozitive

©A.Sarca 2014 ACSI C5-1


Arhitectura şi configurarea sistemelor integrate
Interpretor comenzi utilizator:
citire tastatură, butoane Tema 2 Arhitectura software
Nivel aplicatie
(Application Layer)
Afişare pe display Afişare pe display date de la
meniu comenzi sclav, semnalizări LED-uri

Generator comenzi Interpretor mesaje de Nivel intermediar


către sclav răspuns de la sclav (Middleware Layer)

Transmisie / recepţie mesaje


Nivel driver dispozitiv
(Device Driver Layer)
Transmisie / recepţie mesaje
Nivel sistem
(System Layer)
Interpretor comenzi master
Nivel intermediar
(Middleware Layer)
Generator traiectorie axe X,Y,Z

Generator semnale comandă Nivel driver dispozitiv


motoare de tip puls şi direcţie (Device Driver Layer)

©A.Sarca 2014 ACSI C5-2


Arhitectura şi configurarea sistemelor integrate

Placa experimentală conţine 2 procesoare:

• MSP430GF4618 conectat la LCD, butoane, cupla


seriala
• MSP430F2013 conectat la un touch pad în forma
unui “4” cu 16 pad-uri
– 8 pini I/O legati la 8 grupe de 2 pad-uri fiecare
– 4 perechi pini I/O. O pereche I/O → 2 grupe
– 4 rezistenţe de 5.1MΩ între perechile de pini
• Comunicaţia între procesoare: seriala sincronă
de tip I2C

©A.Sarca 2014 ACSI C5-3


Arhitectura şi configurarea sistemelor integrate

Detecţie touch
pad -> JP2 scos

Comunicatie I2C
CLOCK & DATA

©A.Sarca 2014 ACSI C5-4


Arhitectura şi configurarea sistemelor integrate

©A.Sarca 2014 ACSI C5-5


Arhitectura şi configurarea sistemelor integrate

• Alocarea liniilor I/O


• Selecţie pad-uri pentru
meniul de comenzi:
 “OK” = 1
 “→” = 2
 “←” = 5
 “↑” = 3
 “↓” = 7

©A.Sarca 2014 ACSI C5-6


Arhitectura şi configurarea sistemelor integrate

Comunicaţia serială sincronă I2C


• 2 linii: ceas (SCL) şi date (SDA)
• Un master + unul sau mai mulţi sclavi
• Master = dispozitivul care generează ceasul
• Viteze de transfer reduse:100-400kbiti/s
• Utilizări tipice: schimb date între procesoare, procesor –
circuit periferic sau memorie (EEPROM)

©A.Sarca 2014 ACSI C5-7


Arhitectura şi configurarea sistemelor integrate

• Iniţiere: master -> START : SCL→ 1 + SDA 1→0


• Datele în grupe de 8 biţi. Transmiţător → 8 biţi date,
receptor → un bit ACK (acknowledge) de confirmare
• Transmisie date: un bit la fiecare perioadă ceas SCL.
Receptorul citeşte datele când ceasul este sus (1 logic)
• Terminare: master -> STOP : SCL→ 1 + SDA 0→1

©A.Sarca 2014 ACSI C5-8


Arhitectura şi configurarea sistemelor integrate

• Primii 8 biţi după START: adresa sclav (7 biţi) + R/W bit


• Linia de date e bidirectională: e comandată de master la
Write şi de sclav la Read
• Linia de ceas e bidirectională: poate fi ţinută în zero de
receptor până când a preluat datele primite sau de
transmiţator între transmisii până când a reuşit să pună în
buffer-ul de transmisie următorul grup de date
• 4 moduri de operare: transmisie master, recepţie master,
transmisie sclav, recepţie sclav

©A.Sarca 2014 ACSI C5-9


Arhitectura şi configurarea sistemelor integrate

Programarea interfeţei I2C


• Prin regiştrii asociaţi:
– 1-2 regiştri de control/configurare
– 1 registru de programare ceas master
– 1 registru de programare număr de biţi de
date de transmis de către master
– 1 registru de date: aici se pun datele de
transmis sau se citesc datele recepţionate
• Generare întreruperi:
– La terminarea transmisiei/receptiei datelor
– La detecţia unui START

©A.Sarca 2014 ACSI C5-10


Arhitectura şi configurarea sistemelor integrate

Programare master I2C transmisie un octet de date:


• Tipic – o maşină de stare pe întreruperea de date
• La nivel inalt: o funcţie de iniţializari + o funcţie
“send_data”: data de transmis ->variabila globală folosită
pe întreruperi, apoi forţează o întrerupere şi aşteaptă
până când un flag de terminare transmisie e setat
• În întrerupere 6 stări:
– 1: transmisie START + adresă sclav + R/W
– 2: setare mod recepţie ACK bit de la sclav
– 3: analiză ACK bit şi transmisie octet date
– 4: setare mod recepţie ACK bit de la sclav
– 5: analiză ACK bit şi transmisie STOP
– 6: ieşire maşină de stare ->setare flag terminare transmisie

©A.Sarca 2014 ACSI C5-11

S-ar putea să vă placă și