Operácie

MEMS cvičenie 6: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Bez shrnutí editace
Balogh (diskusia | príspevky)
 
(16 medziľahlých úprav od rovnakého používateľa nie je zobrazených.)
Riadok 10: Riadok 10:
# Prečítajte, či je znak správne zapísaný
# Prečítajte, či je znak správne zapísaný
# Prečítajte obsah celej pamäte a vypíšte ho na terminál.
# Prečítajte obsah celej pamäte a vypíšte ho na terminál.
# Zapíšte do pamäte  10 bytov nejakej informácie a zistite, ako dlho trvá zápis jedného byte, t.j. aká veľká musí byť prestávka medzi jednotlivými zápismi.


==='''Literatúra'''===
==='''Literatúra'''===
Riadok 15: Riadok 17:
* Official I2C Specification Version 6 http://www.nxp.com/documents/user_manual/UM10204.pdf
* Official I2C Specification Version 6 http://www.nxp.com/documents/user_manual/UM10204.pdf
* Official List of assigned NXP / Philips I2C addresses http://www.diolan.com/downloads/i2c-address-allocation-table.pdf
* Official List of assigned NXP / Philips I2C addresses http://www.diolan.com/downloads/i2c-address-allocation-table.pdf
* ---
* [ht-ps://www.arduino.cc/en/Reference/Wire Wire Library] Reference
* [https://www.arduino.cc/en/Serial/Print Serial Library - Print] Reference
=== Datasheets ===
* [http://www.atmel.com/images/doc0180.pdf AT24C02 EEPROM memory]
[[Obrázok:i2c_M24C02.jpg]] [[Obrázok:i2c_M24C02_pinout.jpg]]
=== 1. Schéma zapojenia ===


* [https://www.arduino.cc/en/Reference/Wire Wire Library] Reference
[[Súbor:i2c_schematic.png|400px|center]]
* [https://www.arduino.cc/en/Serial/Print Serial Library - Print] Reference
 
[[Súbor:i2c_breadboard.png|400px|center]]
 
 
Správnosť zapojenia si môžete vyskúšať programom [[Médiá:i2c_scan.ino]] - nájde všetky obvody pripojené na zbernici.
 
=== 2. Device address ===
 
[[Súbor:i2c_address.png|400px|center]]
 
=== 3. Zápis ===
 
[[Súbor:i2c_write.png|600px|center]]
 
=== 4. Čítanie ===
 
[[Súbor:i2c_read.png|600px|center]]
 
[[Súbor:i2c_readRandom.png|400px|center]]
 
=== 5. Pomôcka k Serial Print ===
 
[[Súbor:TerminalScreenshot01.png|right]]
<source lang="cpp">
void setup()
{
  byte c = 78;
 
  Serial.begin(9600);
 
  Serial.print("Hello, World!");
  Serial.println("Hello, World!");
 
  Serial.println(78);
  Serial.println(c);
  Serial.println('c');
  Serial.println(1.23456);
  Serial.println();
}
 
void loop()
{
  Serial.println("Hello, World!");
}
</source>
 
 
[[Súbor:TerminalScreenshot02.png|right]]
<source lang="cpp">
 
void setup()
{
  byte c = 85;      // c = 'U';
 
  Serial.begin(9600);
 
  Serial.println(c);
  Serial.println(c, BIN);
  Serial.println(c, DEC);
  Serial.println(c, HEX);
  Serial.println((char)c);
  Serial.println();
 
  Serial.println(1.23456, 0);
  Serial.println(1.23456, 2);
  Serial.println(1.23456, 4);


* Arduino TWI Library  https://www.arduino.cc/en/Reference/Wire
  Serial.println();
* http://playground.arduino.cc/Main/WireLibraryDetailedReference


  Serial.print("Temperature = ");
  Serial.print(c);
  Serial.print(' ');
  Serial.write(176);
  Serial.println("C [OK]");
}


* http://fritzing.org/projects/readwrite-serial-eeprom-via-i2c  - DO PPT
void setup()
* https://learn.sparkfun.com/tutorials/i2c    - DO PPT
{
}


</source>


=== Datasheets ===
[[MEMS inteligentné senzory a aktuátory#Cvi.C4.8Denia|Návrat na zoznam cvičení...]]


* [http://www.atmel.com/images/doc0180.pdf AT24C02 EEPROM memory]
[[Category:MEMS]][[Category:I2C]]

Aktuálna revízia z 06:51, 3. apríl 2018

Oboznámenie so zbernicou i2c

Úlohy:

  1. Pripojte k procesoru pamäť podľa schémy zapojenia
  2. Schému upravte tak, aby adresa zariadenia bola ??
  3. Zapíšte na prvé pamäťové miesto (adresa 0x00) znak 'A'
  4. Prečítajte, či je znak správne zapísaný
  5. Prečítajte obsah celej pamäte a vypíšte ho na terminál.
  6. Zapíšte do pamäte 10 bytov nejakej informácie a zistite, ako dlho trvá zápis jedného byte, t.j. aká veľká musí byť prestávka medzi jednotlivými zápismi.


Literatúra

Datasheets


1. Schéma zapojenia


Správnosť zapojenia si môžete vyskúšať programom Médiá:i2c_scan.ino - nájde všetky obvody pripojené na zbernici.

2. Device address

3. Zápis

4. Čítanie

5. Pomôcka k Serial Print

void setup()
{
  byte c = 78;

  Serial.begin(9600);

  Serial.print("Hello, World!");
  Serial.println("Hello, World!");

  Serial.println(78);
  Serial.println(c);
  Serial.println('c');
  Serial.println(1.23456);
  Serial.println();
}

void loop()
{
  Serial.println("Hello, World!");
}


void setup()
{
  byte c = 85;      // c = 'U';

  Serial.begin(9600);

  Serial.println(c);
  Serial.println(c, BIN);
  Serial.println(c, DEC);
  Serial.println(c, HEX);
  Serial.println((char)c);
	
  Serial.println();

  Serial.println(1.23456, 0);
  Serial.println(1.23456, 2);
  Serial.println(1.23456, 4);

  Serial.println();

  Serial.print("Temperature = ");
  Serial.print(c);
  Serial.print(' ');
  Serial.write(176);
  Serial.println("C [OK]");
}

void setup()
{
}

Návrat na zoznam cvičení...