Summary of Bevezetés az AVR és ATmega mikrokontrollerekbe
Bevezetés az AVR és ATmega mikrokontrollerekbe: Teljes Útmutató
Bevezetés
Az AVR-ek 8 bites egycsipes mikrokontrollerek, eredetileg az Atmel cégtől (jelenleg a Microchip). Az ATmega sorozat ezek közül a legelterjedtebb, és használják projektekben, oktatásban, valamint hobbi platformokon is, mint például az Arduino UNO (ATmega328P). Ez az anyag összefoglalja az architektúrát, a perifériákat, a programozást és az ATmega gyakorlati alkalmazását önálló tanuláshoz.
Definíció: Az AVR-ek 8 bites RISC mikrokontrollerek Harvard architektúrával; az ATmega ezen MCU-k egy konkrét sorozata, amely alkalmas oktatásra és gyakorlati projektekre egyaránt.
1. Az AVR / ATmega alapvető jellemzői
- RISC architektúra: egyszerű utasítások, többségük 1 órajelciklus alatt hajtódik végre
- Harvard architektúra: elkülönített hozzáférés a programmemóriához és az adatmemóriához
- Alacsony energiafogyasztás, egyszerű programozás és gazdag közösség
Tudtad, hogy az Arduino UNO az ATmega328P-t használja fő MCU-ként?
2. A mikrokontroller architektúrája és blokkjai
Főbb blokkok
- CPU: 8 bites mag
- Flash: programmemória
- SRAM: ideiglenes adatok és verem
- EEPROM: állandó beállítások tárolása
- GPIO portok: PORTA, PORTB, PORTC, …
- Perifériák: időzítők/számlálók, ADC, UART, SPI, I²C (TWI), megszakítások
Definíció: A GPIO-k univerzális bemeneti/kimeneti (I/O) lábak, amelyek bemenetként vagy kimenetként konfigurálhatók.
Hogyan segít a Harvard architektúra
- A különálló utak az utasítások és adatok számára gyorsítják a hozzáférést, és lehetővé teszik az utasítások és adatok egyidejű olvasását.
3. Memóriastruktúra (összehasonlító táblázat)
| Memóriatípus | Cél | Jellemzők |
|---|---|---|
| Flash | Program | Futás közben nem írható (csak programozóval/bootloaderrel írható), nagyobb kapacitás |
| SRAM | Változók | Gyors, volatilis, általános változókhoz és a veremhez használatos |
| EEPROM | Beállítások | Az adatok tartósan megmaradnak kikapcsolás után is, lassabb írás |
Definíció: Az EEPROM egy olyan memória, amely alkalmas konfigurációk tárolására, amelynek meg kell maradnia az áramellátás megszakítása után is.
4. Bemeneti-kimeneti portok és megszakítások
- A portok neveket viselnek (PORTA, PORTB, …). Minden pin beállítható bemenetnek vagy kimenetnek.
- Lehetőség van belső felhúzó (pull-up) ellenállás aktiválására a bemenetekhez.
- Néhány pin külső megszakítást generálhat az eseményekre való azonnali reagálás érdekében.
Gyakorlati példa: LED kimenetként, gomb bemenetként való beállítása felhúzó ellenállással
- A pin konfigurálása kimenetként a LED számára
- A pin konfigurálása bemenetként és a felhúzó ellenállás aktiválása a gombhoz
- A gomb megnyomásakor kiolvasni az állapotot és változtatni a LED-et
5. Időzítők, számlálók és PWM
- Az ATmega általában 8 bites és 16 bites időzítőket is tartalmaz.
- Használható időmérésre, időalapú események generálására és PWM jelek előállítására.
- A PWM (impulzusszélesség-moduláció) motorok vezérlésére és LED-ek fényerejének szabályozására használatos.
Gyakorlati alkalmazás: egyenáramú motor sebességének szabályozása PWM jellel, egy teljesítménytranzisztorhoz csatlakoztatott pin-en keresztül.
6. ADC átalakító
- Jellemzően 10 bites ADC több bemeneti csatornával
- Az analóg feszültséget digitális értékké alakítja
Példa: egy potenciométerről érkező feszültség mérése egy ADC csatornán, majd a LED fényerejének beállítása a mért érték alapján.
7. Kommunikációs interfészek
- UART: soros kommunikáció hibakereséshez és PC-vel való kommunikációhoz
- SPI: gyors adatátviteli vonal érzékelők, memóriák és perifériák csatlakoztatására
- I²C (TWI): többeszközös buszrendszer közös adat- és órajelvezetékekkel
Gyakorlati példa: hőmérséklet-érzékelő csatlakoztatása I²C-n keresztül és értékek írása EEPROM-ba.
Already have an account? Sign in
ATmega Áttekintés
Klíčové pojmy: Az AVR-ek 8 bites RISC mikrokontrollerek Harvard architektúrával., Az ATmega sorozat széles körben elterjedt (pl. az Arduino UNO ATmega328P-vel)., A Flash tárolja a programot, az SRAM a futó változókat, az EEPROM pedig az állandó beállításokat., A GPIO lábak bemenetként vagy kimenetként konfigurálhatók, és használhatók belső felhúzó (pull-up) ellenállásokkal., A 8 és 16 bites időzítők PWM jeleket generálnak motorok vezérléséhez és LED-ek fényerejének szabályozásához., Az ADC jellemzően 10 bites, több csatornával az analóg szenzorok leolvasásához., Kommunikáció: UART, SPI, I²C (TWI) perifériák csatlakoztatásához., Programozás C/C++ vagy Assembly nyelven; feltöltés ISP-n vagy bootloaderen keresztül., Reset után a program a reset címről indul., Előny: alacsony ár és széles közösség; hátrány: korlátozott teljesítmény és memória.