MEMS cvičenie 6: Rozdiel medzi revíziami
Zo stránky SensorWiki
|  Vytvorená stránka „ == Oboznámenie so zbernicou i2c ==   '''Úlohy:'''   # Pripojte k procesoru pamäť podľa schémy zapojenia # Schému upravte tak, aby adresa zariadenia bola ?? # Zap...“ | |||
| (17 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'''=== | |||
| * [ | * 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 | |||
| * --- | |||
| * [ht-ps://www.arduino.cc/en/Reference/Wire Wire Library] Reference | |||
| * [https://www.arduino.cc/en/Serial/Print Serial Library - Print] 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 === | |||
| [[Súbor:i2c_schematic.png|400px|center]] | |||
| [[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); | |||
|   Serial.println(); | |||
|   Serial.print("Temperature = "); | |||
|   Serial.print(c); | |||
|   Serial.print(' '); | |||
|   Serial.write(176); | |||
|   Serial.println("C [OK]"); | |||
| } | |||
| void setup() | |||
| { | |||
| } | |||
| </source> | |||
| [[MEMS inteligentné senzory a aktuátory#Cvi.C4.8Denia|Návrat na zoznam cvičení...]] | |||
| [[Category:MEMS]][[Category:I2C]] | |||
Aktuálna revízia z 06:51, 3. apríl 2018
Oboznámenie so zbernicou i2c
Úlohy:
- Pripojte k procesoru pamäť podľa schémy zapojenia
- Schému upravte tak, aby adresa zariadenia bola ??
- Zapíšte na prvé pamäťové miesto (adresa 0x00) znak 'A'
- Prečítajte, či je znak správne zapísaný
- 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
- 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
- ---
- [ht-ps://www.arduino.cc/en/Reference/Wire Wire Library] Reference
- Serial Library - Print Reference
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()
{
}

