ОН або GPR), об'єднаних у файл, і службові регістри введення/виводу (РВВ). І ті й інші розташовані в адресному просторі ОЗУ, але не є його частиною.
В області регістрів введення/виведення розташовані різні службові регістри (регістри управління мікроконтролером, регістри стану і т. п.), а також регістри управління периферійними пристроями, що входять до складу мікроконтролера. По суті, управління мікроконтролером полягає в управлінні цими регістрами.
В
3.2.4. Незалежна пам'ять даних (EEPROM)
Для довготривалого зберігання різної інформації, яка може змінюватися в процесі функціонування микроконтроллерной системи, використовується EEPROM-пам'ять. Всі AVR мають блок енергонезалежної електрично перезаписуваної пам'яті даних EEPROM від 64 Байт до 4 КБ. Цей тип пам'яті, доступний програмі мікроконтролера безпосередньо в ході її виконання, зручний для зберігання проміжних даних, різних констант, коефіцієнтів, серійних номерів, ключів і т.п. EEPROM може бути завантажена ззовні як через SPI інтерфейс, так і за допомогою звичайного програматора. Число циклів стирання/запис - не менше 100 тис.
3.2.5. Оперативна пам'ять (ОЗУ або RAM)
Внутрішня оперативна статична пам'ять Static RAM (SRAM) має байтовий формат і використовується для оперативного зберігання даних.
Розмір оперативної пам'яті може змінюватись у різних чіпів від 64 Байт до 4 КБ. Число циклів читання і запису в RAM не обмежена, але при відключенні живлячої напруги вся інформація втрачається. p> Для деяких мікроконтролерів можлива організація підключення зовнішнього статичного ОЗП об'ємом до 64К.
3.3. Периферія
Периферія мікроконтролерів AVR включає: порти (від 3 до 48 ліній введення і виведення), підтримку зовнішніх переривань, таймери-лічильники, сторожовий таймер, аналогові компаратори, 10-розрядний 8-канальний АЦП, інтерфейси UART, JTAG і SPI, пристрій скидання по зниженню харчування, широтно-імпульсні модулятори.
3.3.1. Порти введення/виводу (I/O)
Порти введення/виведення AVR мають число незалежних ліній "вхід/вихід" від 3 до 53. Кожна лінія порту може бути запрограмована на вхід або на вихід. Потужні вихідні драйвери забезпечують струмовий навантажувальну здатність 20 мА на лінію порту (Втікає струм) при максимальному значенні 40 мА, що дозволяє, наприклад, безпосередньо підключати до мікроконтролера світлодіоди і біполярні транзистори. Загальна струмова навантаження на всі лінії одного порту не повинна перевищувати 80 мА (всі значення наведені для напруги живлення 5 В). p> Архітектурна особливість побудови портів введення/виведення у AVR полягає в тому, що для кожного фізичного виводу (пина) існує 3 біти контролю/управління, а не 2, як у поширених 8-розрядних мікроконтролерів (Intel, Microchip, Motorola і т.д.). Це дозволяє уникнути необхідності мати копію вмісту порту в пам'яті для безпеки і підвищує швидкість роботи мікроконтролера при роботі із зовнішніми пристроями, особливо в умовах зовнішніх електричних перешкод.
3.3.2. Переривання (INTERRUPTS)
Система переривань - одна з найважливіших частин мікроконтролера. Всі мікроконтролери AVR мають багаторівневу систему переривань. Переривання припиняє нормальний хід програми для виконання пріоритетного завдання, обумовленою внутрішнім або зовнішнім подією.
Для кожного такого події розробляється окрема програма, яку називають підпрограмою обробки запиту на переривання (для стислості - підпрограмою переривання), і розміщується в пам'яті програм.
При виникненні події, що викликає переривання, мікроконтроллер зберігає вміст лічильника команд, перериває виконання центральним процесором поточної програми і переходить до виконання підпрограми обробки переривання. p> Після виконання підпрограми переривання здійснюється відновлення попередньо збереженого лічильника команд і процесор повертається до виконання перерваної програми. p> Для кожної події може бути встановлено пріоритет. Поняття пріоритет означає, що виконувана підпрограма переривання може бути перервана іншою подією тільки за умови, що воно має більш високий пріоритет, ніж поточне. В іншому випадку центральний процесор перейде до обробки нової події тільки після закінчення обробки попереднього.
3.3.3. Таймери/лічильники (TIMER/COUNTERS)
Мікроконтролери AVR мають у своєму складі від 1 до 4 таймерів/лічильників з розрядністю 8 або 16 біт, які можуть працювати і як таймери від внутрішнього джерела тактової частоти, і як лічильники зовнішніх подій. p> Їх можна використовувати для точного формування тимчасових інтервалів, підрахунку імпульсів на висновках мікроконтролера, формування послідовності імпульсів, тактирования приемопередатчика послідовного каналу зв'язку. У режимі ШІМ (PWM) таймер/лічильник...