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()
{
}