Hogyan használjuk a könyvet?
6
Digitális elérés, kiegészítések
6
1.1. Összetett kombinációs hálózatok vizsgálata
7
1.2.2. Dinamikus hazárd
8
1.2.3. Funkcionális hazárd
9
1.2.4. Hazárd mentesítése
10
2.1. Aszinkron hálózat
11
2.1.1. Állapotátmeneti tábla, állapotdiagram
11
2.2. Szinkron sorrendi hálózatok
12
2.2.1. A szinkron sorrendi hálózatok leírási módszerei
12
2.2.2. Állapotdiagram, állapotátmeneti tábla, ütemdiagram, kapcsolási vázlat
13
2.2.3. Tároló áramkörök
13
2.2.4. Tároló áramkörök típusai
14
2.2.5. Szinkron sorrendi hálózatok tervezése és analízise
15
3. Funkcionális sorrendi hálózatok
19
3.1. Funkcionális sorrendi hálózatok
19
3.1.1. A regiszterek elvi működése
19
3.1.2. Shift regiszterek
19
3.1.3. Puffer regiszterek
20
3.1.4. Párhuzamosan is írható shift regiszterek
20
3.1.5. Regiszter IC jelképi jelölése, bővítése
20
3.1.6. Shift regiszter alkalmazásai
21
4. Aritmetikai áramkörök
25
4.1. Aritmetikai áramkörök
25
4.1.2. Teljes összeadó
25
4.1.3. Soros 4 bites összeadó kialakítása
26
4.1.4. Az átvitelgyorsítás célja, elve és megvalósítása
27
4.1.5. Bináris összeadó IC jelképi jelölése, bővítése
27
4.1.7. BCD (Binary-Coded Decimal) összeadó kialakítása
31
4.1.8. Komparátorok elvi felépítése
32
4.1.8.1. Kétbites komparátor tervezése
32
4.1.8.2. Négybites komparátor tervezése
32
4.2. Aritmetikai-logikai egységek
34
4.3. Paritáselőállító és -vizsgáló áramkörök
36
4.4. Félvezetős memóriák
37
4.4.1. Memóriacellák felépítése
38
5.1. A multiplexerek feladata
39
5.1.1. Logikai függvények megvalósítása multiplexer segítségével
40
5.2. Dekódoló (demultiplexer) áramkörök
41
5.2.1. Dekódoló (demultiplexer) áramkör működése
41
5.2.2. Dekódoló áramkör tervezése
42
5.3. Kódátalakító áramkörök
43
5.3.1. Kódátalakító áramkörök elvi felépítése
43
5.3.2. Kódátalakító áramkör tervezése
43
6.1. Bináris és BCD számlálók
45
6.1.1. 4 bites aszinkron számláló
45
6.1.2. 4 bites párhuzamos átvitelű szinkron számláló
45
6.1.3. 4 bites soros átvitelű szinkron számláló
47
6.1.4. Aszinkron előre/hátra számláló
47
6.1.6. Számláló IC-k alkalmazása
50
6.1.7. Tetszőleges számlálási állapotú számláló tervezése
50
7.1. A/D és D/A átalakítók
51
7.1.1. Az A/D és a D/A konverterek felépítése, tulajdonságai
51
7.1.4. D/A konverterek jellemzői
55
7.1.4.1. Statikus jellemzők
56
7.1.4.2. Dinamikus jellemzők
57
7.1.5. Az A/D és a D/A konverterek alkalmazásai
58
8. Mikrovezérlők – bevezetés
59
8.1. Mikrovezérlők technikai alapjai
59
8.2. Mikroprocesszoros rendszertechnika
62
8.2.1. Mikroszámítógépek
63
8.2.2. Mikroprocesszor működése
64
8.2.2.1. Utasítások végrehajtása
64
8.2.2.2. Regiszterek és adatmozgatás
64
8.2.2.3. ALU (Arithmetic Logic Unit)
65
8.2.2.4. Memória és Cache
65
8.2.2.6. Flash memória és EEPROM
65
8.2.2.7. Utasítások felépítése
66
9. Mikrovezérlők alapjai
67
9.1. A mikrovezérlők belső egységei
67
9.1.2. Program memória
70
9.1.4. Órajel megoldások
71
9.1.6. Watchdog timer (WDT)
72
10.1. Digitális I/O portok
73
10.2. Időzítők és számlálók (timers and counters)
74
10.3. UART (Universal Asynchronous Receiver/Transmitter) modul
75
10.4. USART (Universal Synchronous/Asynchronous Receiver/Transmitter)
77
10.4.1. TXSTA (Transmit Status and Control Register)
77
10.4.2. RCSTA (Receive Status and Control Register)
78
10.4.3. SPBRG (USART Baud Rate Generator)
79
10.4.4. TXREG (USART átviteli regiszter)
79
10.4.5. RCREG (USART vételi regiszter)
79
10.4.6. Példaprogram soros átvitel tesztelésére
80
10.5. SPI (Serial Peripheral Interface) és I2C (Inter-Integrated Circuit)
82
10.5.1. SSPSTAT – MSSP Status Register
85
10.5.2. SSPCON1 – MSSP Control Register 1
86
10.5.3. SSPCON2 – MSSP Control Register 2
87
10.5.4. SSPSR, SSPBUF, SSPADD regiszterek
88
11.1.1. A/D Control Register 0 (ADCON0)
90
11.1.2. A/D Control Register 1 (ADCON1)
91
11.1.3. A/D Result High Register (ADRESH) A/D Result Low Register (ADRESL)
92
12.1.1. INTCON regiszter
93
12.1.2. OPTION_REG regiszter
94
12.1.3. PIE1 regiszter
95
12.1.4. PIR1 regiszter
96
12.1.5. PIE2 regiszter
97
12.1.6. PIR2 regiszter
97
12.1.7. PCON (Power Control) regiszter
98
12.1.8. Példaprogram külső megszakításkezelésre
99
13.1. Időzítők (timerek)
101
13.1.1.2. INTCON regiszter
103
13.1.1.3. TMR0 regiszter
104
13.1.2. Példakód a Timer0 használatára
104
13.1.3.1. T1CON (Timer1 Control Register)
105
13.1.3.2. TMR1 (TMR1H és TMR1L)
105
13.1.4. Példakód a Timer1 használatára
106
13.1.5.1. T2CON Regiszter
107
13.1.5.2. TMR2 regiszter PR2 regiszter
107
13.1.5.3. PR2 regiszter
107
13.1.5.4. PIR1 regiszter
107
13.1.6. Példakód a Timer2 használatára
108
14. Capture/Compare/PWM modul
109
14.3.1. Példaprogram a PWM használatára
111
15. Mikroszámítógépek felépítése
113
15.1. PIC16F877A bemutatása
113
15.2. A PIC16 utasításai
116
16. Fejlesztői környezet
117
16.1. PIC fejlesztői környezet bemutatása
117
17. Magasszintű programozási nyelv
119
17.1. A C, C++ programozás története
119
17.2. A C++ fejlesztői környezet kialakítása
120
17.3.1. Első programunk
122
17.3.3.2. Mutatótípusok
126
17.3.3.3. Hivatkozási típusok
128
17.3.3.4. Konstans típusok
129
17.3.3.5. Felsorolt típusok
130
17.3.3.6. Tömbtípusok
130
17.3.3.7. Többdimenziós tömbök
131
17.3.3.8. Kifejezések
131
17.3.3.9. Műveletek sorrendje
135
17.3.3.10. Típuskonverzió
135
17.3.3.11. Utasítások
135
17.3.4. Példaprogramok vezérléshez
140
18.2. Bináris és hexadecimális számrendszer
148
18.4. Utasítás lehívás
149
18.5. Buszkérés és -nyugtázás ciklusa
150
18.6. Memória olvasási és írási ciklusai
152
18.7. Be- vagy kimenet ciklusai
153
18.8. Megszakítás kezelés
154
18.9. Nem maszkolható megszakítás kezelés
154
18.10. Hardver és szoftver megvalósítás
156
18.11. Memória bővítése
157
18.12. Z80 utasításkészlete
157
18.12.1. Címzési módok
157
18.12.2. Z80 emulátor
158
18.12.3. Egyszerű Z80 program
158
19. Fejlesztőeszközök
159
19.1. Az Arduino IDE fejlesztői környezet
159
19.2.1. A szimulátorról röviden
160
19.2.2. A szimulátor felületei
160
19.2.2.1. Programozói felület
161
19.2.2.3. Labor felület
162
19.2.2.7. Options → I/O Devices
163
19.2.3. A szimulátor használata
164
19.2.3.1. Programozás
164
19.2.4.1. Nyomógomb (PUSH)
165
19.2.4.3. Soros port (SERIAL)
166
19.2.4.4. Digital pulser (PULSER)
166
19.2.4.5. Analóg függvénygenerátor
167
19.2.4.6. Léptetőmotor (STEPPER)
167
19.3. Wokwi Arduino Simulator
171
19.3.1. Kezdő lépések
171
19.3.2. Új projekt létrehozása
171
19.3.3. Első programunk
172
20. Arduino környezet
181
20.2. Megszakításkezelés
185
20.3. Fejlesztői csomagok
187