Freescale 68HC11
A 68HC11 (rövidítve 6811, vagy HC11) egy 8 bites CISC típusú mikrovezérlő (µC) család, a Motorola 6800-as mikroprocesszor közeli rokona. A Motorola készítette és forgalmazta 1985-től,[1] 2004-től a gyártását a Freescale Semiconductor folytatta. A 68HC11-es eszközök hatékonyabbak és drágábbak is a 68HC08 mikrovezérlőknél; vonalkód-olvasókban, mágneskártya-író berendezésekben, amatőr robotikai eszközökben és változatos beágyazott rendszerekben használják őket. A MC68HC11A8 volt az első CMOS EEPROM-ot tartalmazó MCU.[2][3][4]
Architektúra
szerkesztésA Motorola 68HC11 regiszterei | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Belsőleg a HC11 utasításkészlete felfelé kompatibilis a Motorola 6800-aséval, azzal a kiegészítéssel, hogy ennek van egy Y indexregisztere is. Az Y regisztert használó utasításokat egy 0x18 prefix különbözteti meg. Két 8 bites akkumulátora van, az A és a B, két 16 bites indexregisztere, az X és az Y, egy feltételkód- v. állapotregisztere, egy 16 bites veremmutatója és egy 16 bites programszámlálója. Van 8 × 8 bites szorzóutasítása (A × B), amely 16 bites eredményt produkál, valamint vannak 16-16 bites törtrész/egészrész osztóutasításai is. Rendelkezik 16 bites utasításokkal, amelyek az A és B regisztereket a 16 bitesként értelmezett D regiszterbe összevont módon kezelik, ezek összehasonlítás, összeadás, kivonás és eltoló utasítások lehetnek. Az X és Y regiszterek összehasonlíthatók 16 bites memóriaoperandusokkal is, a B akkumulátorregiszter pedig hozzáadható az X és Y indexregiszterekhez. Az utasításkészletet bitellenőrző utasításokkal is kibővítették, amelyek logikai ÉS műveletet végeznek az operandusokkal és a feltételbiteket állítják, miközben az operandusok nem változnak.
A HC11 különböző változatai eltérő számú külső porttal rendelkeznek, ezeket a portokat betűkkel jelölik. A legelterjedtebb változatnak öt portja van, ezeket A, B, C, D és E-vel jelölik, néhány más változatnak (pl. a D3 verziónak) csak három portja van. A portok nyolcbitesek, kivéve a D-t, amely hatbites (bár a D port is lehet nyolcbites egyes változatokban). 1-től 768 bájt méretű belső program- és adatmemóriával rendelkezik, amelyben programot is képes futtatni, ha a méret ezt lehetővé teszi. A külső memória mérete max. 64 KiB lehet. Külső memória használata esetén a B és C portok cím- és adatsínként funkcionálnak. Ebben az üzemmódban a C port multiplexelt, felváltva hordozza a 16 bites cím alsó bájtját és az adatot.
Megvalósítások
szerkesztésAz 1990-es évek elején a Motorola készített néhány próbapanelt a 68HC11-eshez, különböző méretű UART, RAM és EPROM kombinációkkal. Ekkoriban egy ilyen próbapanel ára 68 dollár körül volt.
A HC11 család standard bootloadere (rendszerindító betöltőprogram) a BUFFALO volt, ami a „Bit User Fast Friendly Aid to Logical Operation” rövidítése (a rendszer indulásakor a BUFFALO prompt megjelenik a soros porton, ami azt jelzi, hogy a kártya flashmemóriája törlődött). Nem minden HC11 modellhez járt a BUFFALO bootloader, pl. a 68HC11A0 és A1 modellekhez nem, de az A8-hoz már igen.
Más verziók
szerkesztésA Freescale 68HC16 mikrovezérlő családot a 68HC11 16 bites, nagyrészt szoftverkompatibilis frissítésének ill. felváltására szánták.
A Freescale 68HC12 mikrovezérlő család a 68HC11 kiterjesztett 16 bites változata.
A Fred Martin által tervezett Handy Board robotikai vezérlő szintén a 68HC11-es mikrokontrolleren alapul.[5]
A HC11-es számára rendelkezésre áll a MC68HC24 jelű porthelyettesítő egység. Ez a külső címsínhez csatlakoztatva átveszi a B és C port eredeti funkcióit. Az A port bemeneti tároló, kimeneti összehasonlító, impulzusakkumulátor és egyéb időzítő funkciókat szolgál ki, a D port a soros ki- és bemenet céljaira, az E port pedig az analóg-digitális átalakító (ADC) céljaira szolgál.
Jegyzetek
szerkesztés- ↑ Hambley, Allan R. (1839).. Electrical Engineering: Principles and Applications (Digitized by Google) (angol nyelven), Prentice Hall / Pearson Higher Education, 417 / 893. o.. ISBN 0132130068, 9780132130066 (2011). Hozzáférés ideje: 2010. május 17.
- ↑ MCU: microcontroller unit
- ↑ M68HC11 Reference Manual. [2017. november 10-i dátummal az eredetiből archiválva]. (Hozzáférés: 2018. november 15.)
- ↑ M68HC11 Reference Manual (angol nyelven) (pdf) pp. 127–150 / 650. Freescale, 2002, 2007. [2013. július 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2013)
- ↑ Handy Board Hardware. [2016. április 1-i dátummal az eredetiből archiválva]. (Hozzáférés: 2013. december 14.)
Fordítás
szerkesztésEz a szócikk részben vagy egészben a Freescale 68HC11 című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.
Források
szerkesztésTovábbi információk
szerkesztés- Freescale 68HC11 (Legacy) Part Info
- Wytec 68HC11 fejlesztőkártya
- GM HC11 CPU Core, teljesen szintetizálható VHDL implementáció
- Digital Core Design 68HC11E - HDL IP Core Archiválva 2015. december 4-i dátummal a Wayback Machine-ben
- Digital Core Design 68HC11F - HDL IP Core Archiválva 2015. december 4-i dátummal a Wayback Machine-ben
- Digital Core Design 68HC11K - HDL IP Core Archiválva 2015. december 4-i dátummal a Wayback Machine-ben
- Win/Linux freeware cross-assembler
- 4MHz buszsebességű 68HC11F1-alapú kártya