
- •Восьми разрядные
- ••Корпорация STMicroelectronics (STM) один из всемирно признанных лидеров микроэлектроники, создана в 1987 году
- •университеты
- •Библиографический список1/2
- •УМК «Микропроцессорные системы»2/2
- •РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
- •обзор обучающей программы
- •платы
- •и учебной платой.
- •Система обозначений ST7
- •Структурная схема ST7 1/4
- •Структурная схема ST7
- •CLKIN
- •Структурная схема ST7 3/4
- •Структурная схема ST7 4/4
- •Назначения выводов МК ST7
- •Описание вводов/выводов
- •Карта памяти и регистров
- •Адрес Блок Имя
- •Адрес
- •Окончание таблицы 2
- •FLASH ПАМЯТЬ ПРОГРАММ
- •ПРОГРАММИРОВАНИЯ
- •In-Circuit Programming (ICP
- •Интерфейс ICC
- •Защита FLASH памяти
- •ПАМЯТЬ ДАННЫХ EEPROM
- •(ядро MCU)
- •РЕГИСТРЫ CPU
- •РЕГИСТРЫ CPU 2/3
- •Иллюстрация работы стека
- •РЕГИСТРЫ CPU
- •РЕГИСТР КОДА УСЛОВИЯ 1/3
- •РЕГИСТР КОДА УСЛОВИЯ 2/3
- •РЕГИСТР КОДА УСЛОВИЯ3/3
- •СИСТЕМА КОМАНД ST7
- •СПОСОБЫ АДРЕСАЦИИ
- •Неявная (Inhern)
- •Способ адресации
- •СПОСОБЫ АДРЕСАЦИИ
- •Short Indirect
- •Short
- •Inherent (Неявная адресация)
- •Instruction
- •Instruction
- •(Immediate)
- •Immediate Instruction
- •Прямая адресация
- •Прямая длинная
- •Индексная
- •Индексная короткая
- •Индексная длинная
- •длинная)
- •Косвенная короткая
- •Косвенная длинная
- •Косвенная индексная (короткая,
- •длинная
- •Длинные и короткие
- •Относительный способ (прямой,
- •Пример:
- •(Available Relative Direct/Indirect
- •СИСТЕМА КОМАНД
- •Load and Transfer
- •Использование пред байта
- •Использование пред байта
- •СПИСОК КОМАНД МК ST7
- •Mnem Description
- •CALL
- •УПРАВЛЕНИЕ
- •Управление синхронизацией1/4
- •Управление синхронизацией3/4
- •контроля/статуса частоты
- •RC Control Register (RCCR)
- •Управление
- •Рис. 2.4. Блок-схеме RESET
- •Источники RESET
- •Рис. 2.5. Фазы Сброса
- •Фаза задержки Сброса
- •Блок управления целостностью
- •Регистр управления
- •Регистр управления целостностью
- •устройства
- •Байт выбора 0 (продолжение)
- •Значения «по умолчанию» байтов выбора
- •OPTION BYTE 1
- •ПРЕРЫВАНИЯ
- •Рис. 3.1. Схема процесса прерывания
- •Source
- •Периферийные прерывания
- •Внешние прерывания
- •Т а б л и ц а 3.2 Биты чувствительности прерываний
- •Выбор линий портов РА и РВ для внешних прерываний осуществляется битами регистра EISR
- •Периферийные устройства
- •Параллельные порты ввода-вывода
- •Конфигурирование портов
- •Конфигурирование портов
- •INPUT
- •Функция внешнего прерывания
- •Функция внешнего прерывания
- •Ложные прерывания
- •Предостережение
- •Предостережение
- •ЭНЕРГОСБЕРЕГАЮЩИЕ РЕЖИМЫ
- •ЭНЕРГОСБЕРЕГАЮЩИЕ РЕЖИМЫ
- •Рис. 5.1. Переходы в энергосберегающие режимы
- •Медленный режим (SLOW)
- •Режим WAIT
- •Рис. 5.3. Блок- схема режима WAIT
- •Режим HALT
- •Рис. 5.4. Диаграмма режима ОСТАНОВА
- •Рис. 5.5. Блок-схема режима ОСТАНОВА
- •Режим HALT (примечания)
- •Режим ACTIVE-HALT
- •Таблица 5.1
- •Рис. 5.7. Блок- схема режима ACTIVE-HALT
- •Режим AUTO WAKE UP FROM HALT
- •Режим AUTO WAKE UP FROM HALT
- •Рис. 5.8. Блок-схема режима AWUFH
- •Рис. 5.9. Временные диаграммы режима AWUF Halt
- •Рис. 5.10. Блок- схема режима AWUFH
- •Описание регистра AWUCSR
- •Описание регистра AWUPR
- •CТОРОЖЕВОЙ СЧЕТЧИК (WATCHDOG)
- •CТОРОЖЕВОЙ СЧЕТЧИК (WATCHDOG)
- •CТОРОЖЕВОЙ СЧЕТЧИК (WATCHDOG)
- •Рис. 6.1. Регистр управления WDGCR сторожевого счетчика (WATCHDOG)
- •CТОРОЖЕВОЙ СЧЕТЧИК (WATCHDOG)
- •Аппаратный выбор Watchdog

Карта памяти и регистров
•128 байт памяти типа RAM (0000h – 007Fh) используется для регистров ввода/вывода.
•384 байта (0080h – 01FFh) составляет память типа RAM, в которой до 128 байт используется для стека.
•256 байт (1000 – 01FFh) память данных типа EEPROM.
•Flash память 8кб (E000 – FFFFh) предназначена для команд, состоит из
сектора 1 (E000 – FBFFh) и сектора 0
(FC00 – FFFFh).

0000h
007Fh
0080h
01FFh
0200h
0FFFh
1000h
10FFh
1100h
DFFFh
E000h
FFDFh
FFE0h
FFFFh
HW Registers
RAM
(384 Byte)
Зарезерв и-рован
Data EEPROM
(256 Byte)
Зарезерв и-рован
Flash
Memory
(8
kbyte)
Interrupt &
Reset
Vectors
RAM короткая адресация
(страница
0)
RAM 16- битная адресаци
Stack (128
байт)
RCCR0
RCCR1
7 kbytes
&&
Sector 1
771kbyteskbytes
Sectorector01 kbyte
RCCR0
R
RCCR1
0080h
00FFh
0100h
017Fh
0180h
01FFh
1000h
1001h
E000h EBFFh FC00h
FFFFh
FFDEh
FFDFh

Адрес Блок Имя |
Назначение |
Reset Доступ |
регистра регистра |
статус |
0000h |
PADR |
Port A Data Register |
FFh 1) |
R/W |
0001h |
Port A PADDR |
Port A Data Direction |
00h |
R/W |
0002h |
PAOR |
Port A Option Register |
40h |
E/W |
0003h |
PBDR |
PortBA Data Register |
FFh 1) |
R/W |
0004h |
Port B PBDDR |
Port B Data Direction |
00h |
R/W |
0005h |
PBOR |
Port B Option Register |
00h |
E/W |
0006h |
Резерв |
0007h |
|

0008h |
LTCSR2 |
Lite Timer Control/Status |
00h |
R/W |
Lite |
|
Register 2 |
|
|
Timer 2 |
|
|
|
|
0009h |
LTARR |
Lite Timer Auto-reload Register 00h |
R/W |
000Ah |
LTCNTR |
Lite Timer Counter Register |
00h |
R, |
|
|
|
|
только |
000Bh |
LTCSR1 |
Lite Timer Control/ |
0x00 |
R/W |
|
|
|||
|
|
Status Register 1 |
|
|
|
|
|
0000h |
R, |
000Ch |
LTICR |
Lite Timer Input Capture |
00h |
только |
|
|
Register |
|
|

000Dh |
|
ATCSR |
Timer Control/ |
0x00 |
R/W |
000Eh |
Auto- |
CNTRH |
Status Register |
0000h |
R, только |
000Fh |
Reload |
CNTRL |
Counter Register High |
00h |
R, только |
0010h |
Timer 2 |
ATRH |
Counter Register Low |
00h |
R/W |
0011h |
|
ATRL |
Auto-Reload Register High |
00h |
R/W |
0012h |
|
PWMCR |
Counter Register Low |
00h |
R/W |
0013h |
|
PWM0CSR |
PWM Output Control Register |
00h |
R/W |
0014h |
|
PWM1CSR |
PWM 0 Control/Status Register |
00h |
R/W |
0015h |
|
PWM2CSR |
PWM 1 Control/Status Register |
00h |
R/W |
0016h |
|
PWM3CSR |
PWM 2 Control/Status Register |
00h |
R/W |
0017h |
|
DCR0H |
PWM 3 Control/Status Register |
00h |
R/W |
0018h |
|
DCR0L |
PWM 0 Duty Cycle Register High |
00h |
R/W |
0019h |
|
DCR1H |
PWM 0 Duty Cycle Register Low |
00h |
R/W |
001Ah |
|
DCR1L |
PWM 1 Duty Cycle Register High |
00h |
R/W |
001Bh |
|
DCR2H |
PWM 1 Duty Cycle Register Low |
00h |
R/W |
001Ch |
|
DCR2L |
PWM 2 Duty Cycle Register High |
00h |
R/W |
001Dh |
|
DCR3H |
PWM 2 Duty Cycle Register Low |
00h |
R/W |
001Eh |
|
DCR3L |
PWM 3 Duty Cycle Register High |
00h |
R/W |
001Fh |
|
ATICRH |
PWM 3 Duty Cycle Register Low |
00h |
R/W |
0020h |
|
ATICRL |
Input Capture Register High |
00h |
R, только |
0021h |
|
TRANCR |
Input Capture Register Low |
00h |
R, только |
0022h |
|
BREAKCR |
Transfer Control Register |
01h |
R/W |
0023h |
|
|
BreakControl Register |
00h |
R/W |
по |
|
|
Резерв |
|
|
002Dh |
|
|
|
|
|

Адрес |
Блок |
Имя |
Назначение регистра |
Reset |
Доступ |
|
|
регистра |
|
статус |
|
0000h |
|
PADR |
Port A Data Register |
FFh 1) |
R/W |
0001h |
Port A |
PADDR |
Port A Data Direction Register |
00h |
R/W |
0002h |
|
PAOR |
Port A Option Register |
40h |
E/W |
0003h |
|
PBDR |
PortBA Data Register |
FFh 1) |
R/W |
0004h |
Port B |
PBDDR |
Port B Data Direction Register |
00h |
R/W |
0005h |
|
PBOR |
Port B Option Register |
00h |
E/W |
0006h |
|
|
Резерв |
|
|
0007h |
|
|
|
|
|
0008h |
|
LTCSR2 |
Lite Timer Control/Status Register 2 |
00h |
R/W |
0009h |
Lite |
LTARR |
Lite Timer Auto-reload Register |
00h |
R/W |
000Ah |
Timer 2 |
LTCNTR |
Lite Timer Counter Register |
00h |
R, только |
000Bh |
|
LTCSR1 |
Lite Timer Control/ |
0x00 |
R/W |
000Ch |
|
LTICR |
Status Register 1 |
0000h |
R, только |
|
|
|
Lite Timer Input Capture Register |
00h |
|
000Dh |
|
ATCSR |
Timer Control/ |
0x00 0000h |
R/W |
000Eh |
Auto-Reload |
CNTRH |
Status Register |
00h |
R, только |
000Fh |
Timer 2 |
CNTRL |
Counter Register High |
00h |
R, только |
0010h |
|
ATRH |
Counter Register Low |
00h |
R/W |
0011h |
|
ATRL |
Auto-Reload Register High |
00h |
R/W |
0012h |
|
PWMCR |
Counter Register Low |
00h |
R/W |
0013h |
|
PWM0CSR |
PWM Output Control Register |
00h |
R/W |
0014h |
|
PWM1CSR |
PWM 0 Control/Status Register |
00h |
R/W |
0015h |
|
PWM2CSR |
PWM 1 Control/Status Register PWM 2 |
00h |
R/W |
0016h |
|
PWM3CSR |
Control/Status Register |
00h |
R/W |
0017h |
|
DCR0H |
PWM 3 Control/Status Register |
00h |
R/W |
0018h |
|
DCR0L |
PWM 0 Duty Cycle Register High |
00h |
R/W |
0019h |
|
DCR1H |
PWM 0 Duty Cycle Register Low |
00h |
R/W |
001Ah |
|
DCR1L |
PWM 1 Duty Cycle Register High |
00h |
R/W |
001Bh |
|
DCR2H |
PWM 1 Duty Cycle Register Low |
00h |
R/W |
001Ch |
|
DCR2L |
PWM 2 Duty Cycle Register High |
00h |
R/W |

Окончание таблицы 2 |
|
|
|
|
|
Адрес |
Блок |
Имя |
Назначение регистра |
Reset |
Доступ |
|
|
регистра |
|
статус |
|
0031h |
|
SPIDR |
SPI Data I/O Register |
xxh |
R/W |
0032h |
SPI |
SPICR |
SPI Control Register |
0xh |
R/W |
0033h |
|
SPICSR |
SPI Control Status Register |
00h |
R/W |
0034h |
|
ADCCSR |
A/D Control Status Register |
00h |
R/W |
0035h |
ADC |
ADCDRH |
A/D Data Register High |
xxh |
R, только |
0036h |
|
ADCDRL |
A/D Amplifier Control/Data Low Register |
0xh |
R/W |
0037h |
ITC |
EICR |
External Interrupt Control Register |
00h |
R/W |
0038h |
MCC |
MCCSR |
Main Clock Control/Status Register |
00h |
R/W |
0039h |
Clock и |
RCCR |
RC oscillator Control Register |
FFh |
R/W |
003Ah |
Reset |
SICSR |
System Integrity Control/Status |
0000 |
R/W |
|
|
|
Register |
0xx0h |
|
003Bh |
|
|
Резерв |
|
|
003Ch |
ITC |
EISR |
External Interrupt Selection Register |
0Ch |
R/W |
003D |
|
|
|
|
|
по |
|
|
Резерв |
|
|

FLASH ПАМЯТЬ ПРОГРАММ
•FLASH (XFLASH) память, которая может быть электрически стерта и программирована либо побайтно или параллельно по 32 байта.
•Организация матрицы массива позволяет каждый сектор стереть и повторно запрограммировать без воздействия на другие секторы.
•Размер сектора 0 конфигурируется байтом выбора.
•Защита считывания и записи.

ПРОГРАММИРОВАНИЯ
ST7 программируются тремя различными способами:
•Установкой в программирующий инструмент (программатор). В этом способе строка байта и данные EEPROM (если присутствуют) могут быть запрограммированы или стерты.
•In-Circuit Programming. В этом способе в сектоторах 0 и 1 памяти FLASH, выбранные строки байт и данные EEPROM (если присутствуют), могут быть запрограммированы или стерты, не удаляя устройство с платы приложения.
•In-Application Programming. В этом способе сектор 1 и данные EEPROM (если присутствуют) могут быть запрограммированы или стерты без удаления устройства с платы приложения и в то время когда оно работает.

In-Circuit Programming (ICP
•ICP использует протокол, названный ICC (In- Circuit Communication), который позволяет ST7, включенный на печатной монтажной плате, программировать внешним устройством через кабель.
•Определенная последовательность сигналов по протоколу ICC подается на ICCCLK/DATA линии, в то время когда на линии RESET устанавливается низкий уровень. Когда ST7 вступает в сброс, память системы ST7 получает возможность приема данных по протоколу ICC.

(IAP)
• Этот способ использует IAP драйвер, предварительно запрограммированный в секторе 0 пользователем (ICP способом). Этим способом полностью управляет ПО пользователя.
• Способ IAP может использоваться для программирования любых областей памяти кроме сектора 0, который защищают от записи/стирания в течении операции программирования.