Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat Hőmérséklet mérése Makan Gergely, Mellár János, Mingesz Róbert V 5.0 2015. március 23.

Hasonló előadás


Az előadások a következő témára: "Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat Hőmérséklet mérése Makan Gergely, Mellár János, Mingesz Róbert V 5.0 2015. március 23."— Előadás másolata:

1 Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat Hőmérséklet mérése Makan Gergely, Mellár János, Mingesz Róbert V március 23.

2 Termisztor használata 2

3 TermisztorTermisztor 3 oldal U ref* UtUtUtUt RtRtRtRt R ref A/D

4 I2C szenzor 4

5 LM75 miconductor/DS PDF miconductor/DS PDF Kommunikáció: – Bit-bang – Beépített I2C periféria használata (SMbus) 5

6 SMBus  Hardverfelépítés – open-drain I/O 6 FILTER SHIFT REGISTER SDA CONTROL ACK CLOCK CONTROL CROSSBAR SCL SDA FILTER

7 SMBus  Buszrendszer 7 Master 1 Vdd=5V Master 2 Vdd=3V Slave 1 Vdd=5V Slave 2 Vdd=3V SDA SCL RR RR Vdd=5V

8 8-bit data 7-bit address and direction bit 7-bit address and direction bit STOP NACK ACK START SMBus  Tipikus tranzakció Bármelyik vezetéket az adó és vevő is 0-ba tudja húzni SCK: csak a masterek húzhatják 0-ba Több byte is küldhető egy tranzakcióban ACK minden byte vételekor szükséges a vevőtől NACK: nem nyugtáz a vevő, vagy utolsó byte (master) STOP: a tranzakció befejezése 8 R/W A6 A0 D7 D0 SCL SDA

9 SMBus  Master (fogad)  Slave (küld) 9 SLAVE MASTER S S ADDR R R A A DATA N N P P A A S S ADDR R R A A DATA N N P P A A IRQ

10 BitBang Szükséges jelalakok emulálása OC kimenet: a 0 érték „győz” Főbb elemek: – Várakozás (pl. 5 us, egyszerű ciklus) – Impulzus kiadása (közben érték beolvasása) – Bájtok forgatása (bitenként küldeni, beolvasni) Követni az idődiagramot 10

11 SMbus Adatlapok: – Mikrovezérlő – Szenzor IC Előadáson elhangzott példakód (1 byte beolvasása helyett 2 byte-ot kell beolvasni!) Port I/O konfigurálás SMbus órajel (config wizard segít) SMbus konfiguráció (Inhibit slave = true) 11

12 SMBus  Mechanizmus Master SFR-bitek – STA, STO írása a jelek generáláshoz – ACK írása és olvasása is – SI flag (megszakítás is) 1-re vált, ha egy fázis kész – A busz áll, amíg SI=1, folytatódik, ha töröljük – Ezért mindig SI=0 előtt kell írni az SFR regisztereket 12

13 SMBus  Példák (nem teljes!) 13 unsigned char SMBusIn(unsigned char address) { STO = 0; STA = 1; // start transfer while (!SI); // wait for start complete STA = 0; // manually clear STA SMB0DAT = (address << 1) | 1; // A6..A0 + read SI = 0; // continue while (!SI); // wait for complete if (!ACK) // not acknowledged, stop { STO = 1; // stop condition bit SI = 0; // generate stop condition return; } ACK = 0; // NACK, last byte SI = 0; // continue while (!SI); // wait for complete STO = 1; // stop condition bit SI = 0; // generate stop condition return SMB0DAT; }

14 Érték megjelenítése A magasabb helyiérték: °C-ban a hőmérséklet 14

15 Feladatok (következő 3 alkalom) 15

16 1. feladat Készítsen el egy termisztoros hőmérőt, ami °C-ban jelzi ki a hőmérsékletet! Megjegyzés: a mikrovezérlő lebegőpontos (float) számokkal is tud számolni. Double számokkal viszont nem! 16

17 2. feladat Bővítse a programot a következő funkciókkal: – Riasztás megadott hőmérséklet elérésekor – Potenciométerrel szabályozható termosztát – Maximum/minimum kijelzése – Konstans/csökkenő/növekvő hőmérséklet kijelzése (a megoldás ne legyen érzékeny a zavarokra) 17

18 3. feladat Készítsen el egy a LM75-ön alapuló hőmérőt, ami °C-ban jelzi ki a hőmérsékletet! Részletezze a megvalósítás lépéseit, a kommunikációt oszcilloszkóppal is vizsgálja! 18

19 4. feladat Bővítse a programot a következő funkciókkal: – Riasztás megadott hőmérséklet elérésekor – Potenciométerrel szabályozható termosztát – Maximum/minimum kijelzése – Konstans/csökkenő/növekvő hőmérséklet kijelzése (a megoldás ne legyen érzékeny a zavarokra) 19


Letölteni ppt "Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat Hőmérséklet mérése Makan Gergely, Mellár János, Mingesz Róbert V 5.0 2015. március 23."

Hasonló előadás


Google Hirdetések