
- •1. Организация системы ввода-вывода
- •2. Классификация и особенности аппаратных интерфейсов эвм.
- •3. Архитектура учебного стенда sdk-1.1.
- •4. Вычислительное ядро и система ввода-вывода в стенде sdk-1.1
- •5. Назначение и организация расширителя портов ввода/вывода в sdk-1.1.
- •6. Организация и принцип работы программируемого процессора.
- •7. Контроллер ввода-вывода.
- •8. Процессор ввода-вывода.
- •10. Обмен в режиме прямого доступа между устройствами эвм.
- •11. Организация аппаратных прерываний в эвм.
- •12. Функции и принцип работы контроллера прерываний.
- •13. Внутрисистемные интерфейсы эвм
- •14. Системные интерфейсы эвм.
- •15. Малые периферийные интерфейсы эвм
- •16. Последовательные малые периферийные интерфейсы
- •17. Организация контроллера последовательного интерфейса rs-232 (usart).
- •18. Организация параллельных конфигурируемых портов ввода-вывода.
- •19. Особенности параллельных интерфейсов
- •20. Устройства сопряжения с объектами управляющих эвм
- •21. Синхронизация в аппаратных интерфейсах эвм.
- •22. Интерфейс i2с, общие сведения
- •23. Общая характеристика интерфейса spi
- •24. Ввод-вывод аналоговой информации.
- •25. Организация памяти, регистры общего и специального назначения микроконтроллера с архитектурой mcs51.
- •26. Организация и принцип работы программируемого таймера.
- •16 Битный режим с автоперезагрузкой (таймер 2)
- •16 Битный режим захвата
- •27. Программирование стенда sdk-1.1
- •Дискретный ввод-вывод и гальваническая развязка
25. Организация памяти, регистры общего и специального назначения микроконтроллера с архитектурой mcs51.
•8 Кб Flash (10000-50000 циклов доступа к памяти/стирание-запись- чтение) для хранения программ. В стенде SDK-1.1 в этой памяти располагается резидентный загрузчик и системная таблица векторов прерываний.
•256 байт ОЗУ данных.
•640 байт программируемого EEPROM со страничной организацией (160 страниц по 4 байта, 10000-50000 циклов доступа к памяти/стирание- запись-чтение) для хранения данных (например, различных настроек).
•Адресное пространство памяти программ 64 Кб.
•Адресное пространство внешней памяти данных 16 Мб.
Организация памяти программ микроконтроллера ADuC812
Память программ предназначена для хранения программ и имеет отдельное от памяти данных адресное пространство объемом 64 Кб (Гарвардская архитектура), причем для некоторых микросхем семейства MCS-51 для хранения программ на кристалле микроконтроллера расположено ППЗУ (например, Flash в ADuC812). Это ППЗУ отображается отображается в область младших адресов памяти программ. Учитывая, что выполнение программы после сброса микроконтроллера всегда начинается с нулевого адреса памяти программ, то при включении питания начнет выполняться программа, записанная во внутреннем ППЗУ микроконтроллера. Микроконтроллеры, не имеющие внутреннего ППЗУ (например, КР1816ВЕ31 и КР1830ВЕ31) могут работать только с внешней микросхемой ПЗУ емкостью до 64 Кб (при использовании портов P1 и P3 в качестве расширителя адреса объем подключаемой ПЗУ может быть увеличен до 1 Гб).
Микроконтроллеры семейства MCS-51 имеют внешний вывод EA (Exernal Access Enable), с помощью которого можно запретить работу внутренней памяти, для чего необходимо подать на вывод EA логический «0» (соединить этот вывод с корпусом). При этом внутренняя память программ отключается и, начиная с нулевого адреса, все обращения происходят к внешней памяти программ.
Распределение памяти программ микроконтроллера ADuC812 представлено
ниже:
Доступ к внешней памяти программ осуществляется в двух случаях:
при действии сигнала ЕА=0 независимо от адреса обращения,
в любом случае, если программный счетчик (PC) содержит число большее, чем максимальная ячейка внутренней памяти программ (больше Oxl FFF, т.е. больше S Кб Fla-sli)
В стенде SDK-1.1 EA = 1 (см. рис. 3), поэтому при подаче питания или после перезапуска начинает исполняться загрузчик во Flash-памяти МК ADuCS12. Этот загрузчик ждет пользовательскую программу которую (в качестве исполнительного модуля) «получает» по коммуникационному интерфейсу RS-232 от персонального компьютера. Далее загрузчик записывает эту программу в внешнюю память программ и данных и передает ей управление (по умолчанию, по адресу 0x2100), и она исполняется.
Организация памяти данных микроконтроллера ADUC812
Несмотря на то, что это самое маленькое адресное пространство из рассматриваемых, оно устроено наиболее сложным образом. Распределение памяти данных микроконтроллеров серии MCS-51 приведено на рис. 4.
Внутреннее ОЗУ данных предназначено для временного хранения информации, используемой в процессе выполнения программы, и занимает 256 восьмиразрядных ячеек, с адресами от 0x00 до OxFF
Регистры
специального назначения
(Spйcial Function Registers, SFRI
занимают
адреса
внутренней памяти данных с
0х80 по
OxFF. SFR
служат дтя управления, конфигурирования
и
передачи/приема данных от периферийных
устройств, т. е. выполняют функцию
интерфейса
между процессором и
периферией на кристалле. Так как адреса
SFR
совпадают со старшими
адресами
внутреннего ОЗУ данных, то имеются
особенности при использовании этих
адресов
внутренней памяти данных.
Система команд микроконтроллера позволяет обращаться к ячейкам внутренней памяти данных при помощи прямой и косвенно-регистровой адресации. При обращении к ячейкам памяти с адресами 0x00-0x7F использование любого из этих видов адресации будет производить выборку одной и той же ячейки памяти. При обращении к ячейкам ОЗУ с адресами 0x80-0xFF следует воспользоваться косвенно-регистровой адресацией. Учитывая, что работа со стеком ведется при помощи косвенной адресации, то имеет смысл размещать в этой области памяти стек. Если же требуется обратиться к регистрам специальных функций, то нужно использовать прямую адресацию.
Регистры общего назначения (РОН, General-Purpose Registers)позволяют писать самые эффективные программы. У микроконтроллеров семейства MCS-51 программисту доступны восемь регистров. Более того, в этом семействе микроконтроллеров есть целых четыре набора (банка) регистров с именами RB0 - RB3. Банк регистров состоит из восьми восьмиразрядных регистров с именами R0, R1, …, R7. Несколько банков регистров служат для организации независимой работы нескольких параллельно выполняемых программ. Переключение банков регистров производится при помощи двух особых бит регистра слова состояния программы PSW (RS0 и RS1). Если организация нескольких параллельных потоков обработки данных не нужна, то можно пользоваться только нулевым банком регистров, включающимся автоматически после включения питания и сброса микроконтроллера, остальные ячейки памяти использовать как обычное ОЗУ.
Следующие после банков регистров внутреннего ОЗУ данных 16 ячеек памяти (адреса 0x20-0x2F) образуют область памяти, к которой возможна как байтовая, так и битовая адресация. В этих ячейках располагаются 128 программных флагов (битовых ячеек памяти). Обращение к отдельным битам этих ячеек возможно по их битовым адресам.