AVR: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Deineka (обговорення | внесок) |
Deineka (обговорення | внесок) |
||
Рядок 48: | Рядок 48: | ||
[[Категорія:Процесори]] |
[[Категорія:Процесори]] |
||
[[Категорія:Вбудовані |
[[Категорія:Вбудовані мікроконтролери]] |
||
[[cs:AVR]] |
[[cs:AVR]] |
Версія за 23:18, 23 лютого 2013
AVR — сімейство восьмибітових мікроконтролерів фірми Atmel.
Мікроконтролери AVR мають гарвардську архітектуру (програма і дані знаходяться в різних адресних просторах) і систему команд, близьку до ідеології RISC. Процесор AVR має 32 8-бітових регістра. Управління мікроконтролером, по суті, є управління цими регістрами. На відміну від «ідеального» RISC, регістри не абсолютно ортогональні: Деякі команди працюють тільки з регістрами r16…r31. Результат множення (у тих моделях, в яких є модуль множення) завжди розміщується в r0:r1. Для непрямої адресації пам’яті даних використовуються три «здвоєні» 16-бітові регістри-вказівники X (r26:r27), Y (r28:r29) та Z (r30:r31). В командах роботи з пам’яттю програм LPM, SPM використовується лише регістрова пара Z (r30:r31).
Управління периферійними пристроями здійснюється через адресний простір даних. Для зручності з першими 64-ма адресами периферійних пристроїв можна працювати за допомогою «скорочених» команд IN/OUT доступу до простору вводу-виводу (I/O – Input/Output). Роботу з окремими бітами периферійних пристроїв у просторі I/O забезпечують команди SBI, CBI, SBIS, SBIC. Втім, ці команди працюють лише з першими 32-ма адресами простору.
Окрім фірмових засобів розробки (IAR, CODEVISION і ін.), існує GNU порт GCC для AVR. Крім того, архітектура AVR дозволяє застосовувати операційні системи при розробці застосувань, основними з яких є написані на мові C системи FREERTOS та uOS. Також існує написана на мові програмування C++ система scmRTOS
Суттєвий вплив на поширеність мікроконтролерів має те, що програмування цих мікроконтролерів здійснюється досить легко. Найпростіший програматор, пристрій за допомогою якого персональний комп'ютер записує програму у flash-пам'ять мікроконтролера, складається з п'яти провідників та вилки порта LPT. Це дозволяє з успіхом використовувати мікроконтролери AVR новачками, що хочуть отримати знання з мікроелектроніки.
Основні сімейства
- tinyAVR
- megaAVR
- XMEGA
- 16–384 кБ пам'яті програм
- 2–32 кБ оперативної пам’яті
- 1–4 кБ енергонезалежної пам’яті даних EEPROM
- 44–64–100-вивідний корпус (A4, A3, A1)
- Підвищена продуктивність за рахунок таких особливостей, як ПДП (Прямий Доступ до Пам'яті), підтримка криптографії, "Система подій".
- Розширений набір внутрішніх периферійних пристроїв (ЦАП)
Дивіться також
Посилання
- Atmel AVR Homepage[] помилка: {{lang-xx}}: немає тексту (допомога)
- AVR Freaks community[] помилка: {{lang-xx}}: немає тексту (допомога)
- Роботи, мікроконтролери[] помилка: {{lang-xx}}: немає тексту (допомога)
- Засоби розробки програмного забезпечення для AVR мікроконтролерів[] помилка: {{lang-xx}}: немає тексту (допомога)