- •1. Однокристальные микро-эвм (омэвм) семейства mcs51. Обобщённая структурная схема микроЭвм. Основные характеристики омэвм.
- •2. Структурная схема микро-эвм семейства mcs51 (к1816ве51). Операционный узел. Формат регистра psw.
- •Операционный узел
- •3. Структурная схема микро-эвм семейства mcs51 (к1816ве51). Узел внутренней памяти. Состав регистров специального назначения.
- •4. Организация адресного пространства микро-эвм семейства mcs51.
- •Узел внутренней памяти
- •2. Чтение из внешней памяти (ввод). На внешней шине z-состояние.
- •6. Способы адресации микро-эвм семейства mcs51 (к1816ве51).
- •Cпособы адресации
- •5. Порты микро-эвм семейства mcs51 (к1816ве51). Назначение портов. Функциональная схема порта р0. Узел управления и синхронизации
- •У зел сопряжения с внешними устройствами
- •1. Работа с внешней памятью (выдаются адрес или данные).
- •7. Система команд микро-эвм семейства mcs51 (к1816ве51). Группа команд пересылки данных.
- •8. Система команд микро-эвм семейства mcs51 (к1816ве51). Группа команд обработки данных.
- •Inc a inc Rr inc @r0(@r1) inc ad inc dptr
- •9. Система команд микро-эвм семейства mcs51 (к1816ве51). Группа команд управления.
- •11. Временная диаграмма типового машинного цикла. Примеры временных диаграмм для выполнения команд за один и за два машинных цикла.
- •А) Считывание команд из внутр. Памяти программ (сверху до пунктира).
- •Б) Ниже пунктира – внешняя память данных. Данные читаются во 2ом мц.
- •1. Если чтение из внутр. Пп, то psen не вырабатывается.
- •12. Таймеры/счётчики 0 и 1 микроконтроллера семейства mcs51 (омэвм51). Режимы работы, программирование таймера/счётчика.
- •13. Таймер/счётчик 2. Режимы работы.
- •14. Организация прерываний в омэвм51.
- •Обработка внутренних прерываний
- •15. Организация последовательного ввода/вывода микроконтроллера семейства mcs51 (омэвм51). Режимы работы uart. Расчет скорости передачи данных для асинхронного режима.
- •16. Последовательный интерфейс i2c.
- •Inter Integrated Circuit (Philips)
- •17. Последовательный интерфейс spi (Serial Periferial Interface).
- •18. Последовательный интерфейс can.
- •19. Последовательный интерфейс One wire (MicoLine).
- •Структурная схема шины usb
- •Хост контроллер – на шине только один. Функция – периферийное устройство. В хабе имеется порт (точка подключения). Корневой хаб входит в состав хоста.
- •21. Обзор современных микроконтроллеров семейства mcs51. Особенности микроконтроллеров фирм Philips, Atmel и др.
- •Philips
- •В России распространены ad и c812 аналог 8051.
- •22. Микроконтроллеры mсs 251, 151.
- •23. События. Примеры захвата событий.. Назначение и состав массива программируемых счетчиков (pca). Режимы работы общего таймера/счетчика Структурная схема общего таймера/счетчика рса
- •24. Структурные схемы модулей рса в режимах захвата, программируемого таймера, скоростного ввода вывода, генератора шим.
- •Краткий обзор pic 16c 6x/7x/8x
- •3. Управляющие команды
- •4. Команды пересылки данных
- •26. Микроконтроллеры с risc архитектурой (семейство avr). Организация памяти. Особенность портов ввода вывода. Обзор системы команд. Пример программы с использованием команд микроконтроллера avr.
- •27. Сигнальные процессоры. Цифровая обработка сигналов (цос). Примеры задач цос.
3. Управляющие команды
NOP GOTO k CALL k RETURN
RETFIE SLEEP
CLRWDT - Сбрасывает сторожевой таймер
4. Команды пересылки данных
MOVLW k Заносит в аккумулятор число k.
MOVWF f Заносит значение аккумулятора в ячейку f.
MOVF f,d Заносит содержимое ячейки f в аккумулятор или оставляет его в ячейке f, в зависимости от флага направления D.
5. Команды организации условных переходов (условный пропуск)
BTFSC f,b
Если бит b в ячейке f сброшен (равен нулю), то команда, расположенная непосредственно за данной, не исполняется, а исполняется следующая. Часто следующая команда – GOTO, CALL или RETURN.
Для проверки состояния флагов используется, например, такая конструкция:
BTFSC STATUS, Z
GOTO ... ; переход, если флаг Z установлен, иначе эта команда игнорируется
BTFSS f,b; Если бит b в ячейке f =1, то команда, расположенная непосредственно за данной, не исполняется, а исполняется следующая.
INCFSZ f,d; Прибавляет единицу к содержимому ячейки f, результат помещает в акк или в ячейку f в зависимости от флага d. Не влияет на флаги. Если результат=0, то команда, расположенная непосредственно за данной, не исполняется, а исполняется следующая.
DECFSZ f,d; Вычитает единицу из содержимого ячейки f, результат помещает в акк или в ячейку f в зависимости от флага d. Не влияет на флаги. Если в результат=0, то команда, расположенная непосредственно за данной, не исполняется, а исполняется следующая.
Пример программы: обнуление ячеек с адресами 20h..2Fh.
……
MOVLW 0x20 ;загрузка в аккумулятор начального адреса
MOVWF FSR ;заносим это значение из акк-ра в FSR, это нужно чтобы ;организовать косвенную адресацию
Next:
CLRF INDF ; обнуляем ячейку, адрес которой лежит в FSR, см выше про ;косвенную адресацию
INCF FSR ; увеличиваем адрес
; закончить нужно на адресе 2F, то есть после последнего увеличения FSR
там будет 30h, иначе говоря перебросится из 0 в 1 разряд 4.
BTFSS FSR,0x4 ; если 4й разряд равен 1, то прекращаем цикл
GOTO NEXT
End_prog:
…… ; конец программы.
Организация прерываний в PIC.
- внешние прерывания по входу РВ0/INT.
- прерывания от таймера TMR0.
- прерывания от вывода порта RB4 – RB7.
3 источника прерываний.
Используется 1 регистр для организации прерываний. Он 8-разрядный.
G
IE
– разрешение прерываний, 0 – все
запрещены.
IE – interrupt enable.
IRQ – пришло или нет прерывание.
26. Микроконтроллеры с risc архитектурой (семейство avr). Организация памяти. Особенность портов ввода вывода. Обзор системы команд. Пример программы с использованием команд микроконтроллера avr.
AVR –контроллеры.Выпускает фирма ATMEL, особенность – FLASH память.
Построены с использованием гарвардской архитектуры: отдельно ПП и ПД.
Производительность достигается за счет использования RISC – архитектуры, Фактически все команды выполняются однотипно. Строится конвейер команд. Потребуется большое число РОНов.
AT90S4434 – 4K ROM; 256 RAM; 256 EEPROM
AT90S8535 – 8K ROM; 512 RAM; 512 EEPROM
1. 118 команд, все выполняются за 1 такт.
2. SPI – интерфейс для внутрисхемного программирования.
3. 1 тыс. циклов репрограммирования для CODE (память FLASH); 100 тыс. для DATA.
4. 8-канальный 10-битный АЦП, 32 РОН, UART, два 8р. таймера, один 16р. таймер, WATCH DOG, 3 канала ШИМ, Аналоговый компаратор
5. f = 4 МГц / 8 МГц (для 4434 и 8535 соответственно).
6. 3 режима энергосбережения.
7. Прерывания (внутренние и внешние).
К
I/O регистрам можно обращаться как к
регистрам и как к области памяти.
РМ – Program Memory. Все команды 16-разр
SRAM – ОЗУ статического типа.
0 – 255 – минимальный размер (в байтах).
64 I/O – SFR (здесь название другое).
Расширения с использованием внеш памяти здесь нет!! Здесь есть внутрисхемное программирование (через СОМ или SPI).
EEPROM – приблизительно 1000 циклов перепрограммирования.
ЗП идет долго, а СЧ быстро.
Состав РОНов.
В
некоторых командах м.б. использованы
все РОНы, а в некоторых – только 2ая
половина. К этим ячейкам памяти можно
обращаться по имени, так и по адресу.
Соответствие адресов РОНов в адресном пространстве внутренней памяти данных.
Это общее пространство внутренней памяти данных.
Регистры I/O внутри пронумерованы от 0 до 3FH (здесь к ним идет обращение по этим адресам). Но в общем пространстве сквозная нумерация (020Н – 05FH).
SP (3DH, 3EH) – указатель стека.
Команда
LDI 3E, 60H; загрузка регистров с непосредств. адресацией
Но есть команды загрузки в ПД, тогда нужно использовать адрес 05EH.
Обзор системы команд.
Флаги формируются при выполнении некоторых команд, они записываются в регистр состояний:
переноса С; нуля результата В; отрицательного результата N;
арифм. переполнения V; знака S; промежут. переноса H;
используемый пользователем T; разрешения прерывания I.
Группы команд:
- пересылок; - арифм. и логич. операций;
- передачи управления;- побитных операций.
Группа команд пересылок.
MOV Rd, Rr; Эта команда используется только для регистров.
LDI Rd, K; K – число, Rd – РОН. Команда с непосредств адресацией.
LDS Rd, (K); К – адрес памяти SRAM. Команда загрузки РОНа из содержимого памяти SRAM.
STS (K), Rd; пересылка содержимого регистра в память SRAM.
Косвенная адресация.
Для косв.адресации используется три пары регистров.
Х = R26, R27. Y = R28, R29. Z = R30, R31.
X, Y, Z – имена пар.
Команды с косв. адресацией будут записаны в след. формате: LD Rd, X
Содержимое памяти SRAM, адрес которой указан в паре регистров Х, пересылается в РОН.
Несколько конструкций косв. адресации:
LD Rd, X+ (с автоинкр-м – адрес после выполн-я этой команды изменится на 1).
LD Rd, -X (c предавтоинк-м – адрес меняется на 1 перед выполнением команды).
ST X, Rd
XLAT (8086) - > MOVC (8051)
Z – адрес ПП.
LPM ; R0 < - (Z)
IN Rd, P
OUT P, Rd
Группа команд передачи управления.
JMP K
- относит. безусл. переход.
- косв.безусл. переход.
CALL K – вызов подпрограммы
RET
RETI
BRBS S, K ; переход по биту S (если S=1)
BRBC S, K ; переход, если S=0
SKIP
SBRS Rr, b ; b = 1
SBRC Rr, b ; b = 0
SBIS P, b ; b = 1
SBIC P, b ; b = 0
Задача: пусть требуется переслать строку символов, содержащуюся в ПП, в ПД SRAM.
ORG 0050H
TABL: db 1, 2, 3, 4
LDI R16, 4
LDI R28, 0
LDI R29, 60H
LDI R30, 0
LDI R31, 50H
M1: LPM
ST Y+, R0
INC R30
DEC R16
BFNE M1
Все выводы порта могут быть мультиплексированы.
1. Адрес регистра для выбора направления передачи.
2. Адрес защелки порта.
3. Адрес в режиме ввода (нет спец. регистра).
Таймеры/счетчики.
3 таймера: Т1 – 16-разрядный, Т0, Т2 – 8-разрядные.
Т2 имеет канал сравнения и при сравнении текущего значения с заданным формируется сигнал на выводе порта D. Этот же вывод может использоваться как вывод ШИМа. Т1 имеет устройство захвата.
