МИКРОСХЕМА ИНТЕГРАЛЬНАЯ К1921ВК01Т. Руководство пользователя (от 10.09.2019) - часть 3

 

  Главная      Книги - Разные     МИКРОСХЕМА ИНТЕГРАЛЬНАЯ К1921ВК01Т. Руководство пользователя (от 10.09.2019)

 

поиск по сайту            правообладателям  

 

   

 

   

 

содержание      ..     1      2      3      4      ..

 

 

 

МИКРОСХЕМА ИНТЕГРАЛЬНАЯ К1921ВК01Т. Руководство пользователя (от 10.09.2019) - часть 3

 

 

 

 

33 

Т а б л и ц а   5 . 1  – Динамические параметры монитора питания 

Наименование параметра, 

единица измерения 

Обозначение 

Миним. 

Номин. 

Макс. 

Задержка срабатывания, мкс 

Tdel1 

270 

410 

590 

Задержка срабатывания при 
отключении внешнего сброса, нс 

Tdel2 

– 

– 

Частота RC-генератора, MГц 

– 

3,5 

6,5 

 

 

 

Рисунок 5.3 – Диаграмма сигнала сброса POR при изменении питания 3,3 В 

 
Т а б л и ц а   5 . 2   – Электрические параметры монитора питания 

Наименование параметра, 

единица измерения 

Обозначение 

Миним. 

Номин. 

Макс. 

Уровень 
питания 3,3 В 

Отключение 
схемы сброса, В 

Vthrise 

2,50 

2,60 

2,70 

Срабатывание 
схемы сброса, В 

Vthfall 

2,33 

2,42 

2,52 

Уровень 
питания 1,8 В 

Отключение 
схемы сброса, В 

– 

1,62 

1,70 

1,80 

Срабатывание 
схемы сброса, В 

– 

1,54 

1,60 

1,68 

 
 
 

 

 

34 

6

 

Организация памяти  

Память  микроконтроллера  имеет  предопределенное  32-разрядное  адресное 

пространство  с  областями:  программы  (с  защищенным  блоком),  данных  (с 
информационным блоком), периферии, внешних (по отношению к  контроллеру) ресурсов 
и внутренних ресурсов,  жестко соединенных с процессором (см. рисунок 6.1).   

 

 

 

Рисунок 6.1 – Организация памяти 

 
Адресное  пространство  разбито  на  шесть  областей  (см.  таблицу  6.1).  При 

использовании  внешней  памяти  как  основной  памяти  программ  и  данных,  адреса  с 
40000000h  по  400FFFFFh  мапируются  в  адресное  пространство  внутренней  памяти 
микроконтроллера в область 00000000h – 000FFFFFh. 

 

Т а б л и ц а   6 . 1   – Организация памяти микроконтроллера 

Адресное 

пространство 

Remap-

адрес 

 

Название блока 

Описание 

00000000h –  
000FFFFFh 

40000000h –  
400FFFFFh 
 

Загрузочная флеш 
(I-Code) 

Шина выборки инструкций  

 

Загрузочная флеш 
(D-Code) 

Шина данных, расположенных в коде 
программы 

20000000h –  
2002FFFFh 

– 

Внутреннее ОЗУ 
192 Кбайта 

Шина данных, расположенных в 
области ОЗУ 

40000000h –  
400FFFFFh 

00000000h –  
000FFFFFh 

Внешняя память  

 

80000000h –  
BFFFFFFFh 

– 

SFR 

Регистры управления периферийными 
блоками 

E0000000h –  
E00FFFFFh 

– 

Private Peripheral 
Bus 

– 

E0100000h –  
FFFFFFFFh 

– 

Vendor_SYS 

Область системных регистров 

 

Системный сегмент System делится на две части. 
Первая,  объемом  1  Мбайт,  занимает  диапазон  адресов  E0000000h  –  E007FFFFh  и 

зарезервирована  для  «личной»  периферийной  шины  PPB  (Private  Peripheral  Bus).  PPB 
шина используется для выборки/записи данных и отладочного доступа  – для периферии. 
Эта  область  рассматривается  как  строго  упорядоченная  память.  Часть  ее  адресов 
(E000E000h  –  E000EFFFh)  занимает  пространство  управления  системы  SCS,  в  котором 
находятся  регистры  блока  управления  системой  SCB,  контроллера  прерываний  NVIC, 
системного таймера SysTick, устройства защиты памяти MPU, средств отладки и другие. 
Байты регистров SCS всегда располагаются в порядке «младший – старший» независимо 

 

 

35 

от  того,  какой  формат  представления  данных  принят  для  остальной  памяти.  Доступ  к 
большинству  регистров  возможен  только  полными  двойными  словами  (32  бита),  все 
исключения  из  этого  правила  оговариваются  специально.  Попытка  кода  обратиться  к 
области  PPB  обычно  вызывает  прерывание  по  ошибке  шины;  исключениями  являются 
возможность  доступа  к  регистру  STIR,  если  это  разрешено  соответствующим  битом 
регистра CCR и доступность отладочных регистров.  

Вторая  часть  является  памятью  устройств,  занимает  область  E0100000h –

 FFFFFFFFh и является системным регионом ядра ARM (Vendor_SYS). 

Регистры  периферийных  блоков  микроконтроллера  доступны  в  адресном 

пространстве  80000000h  –  BFFFFFFFh.  Таблицы  6.2  и  6.3  представляют  собой  карту 
памяти с указанием областей памяти и блоков микроконтроллера, чьи регистры занимают 
эти области.  

 

Т а б л и ц а   6 . 2   – Регистры периферийных блоков 

Адресное 

пространство 

Название блока 

Описание 

AHB периферийная шина 

80000000h – 
8000FFFFh 

ADC 

Блок АЦП 

80010000h –  
80010FFFh 

GPIOA  

Порт A  

Контроллер GPIO 

80011000h –
80011FFFh  

GPIOB  

Порт B  

80012000h – 
80012FFFh  

GPIOC  

Порт C  

80013000h – 
80013FFFh  

GPIOD  

Порт D  

80014000h – 
80014FFFh  

GPIOE  

Порт E  

80015000h – 
80015FFFh  

GPIOF  

Порт F  

80016000h – 
80016FFFh  

GPIOG  

Порт G  

80017000h – 
80017FFFh  

GPIOH  

Порт H  

80030000h –
8003FFFFh  

COMMON_REG 

Регистры общего назначения  

80070000h – 
8007FFFFh  

CAN  

Контроллер CAN 

80080000h – 
8008FFFFh  

ETHERNET 

Контроллер Ethernet 

80090000h – 
8009FFFFh  

USB 

Контроллер USB 2.0 OTG 

 
 
 
 
 
 
 
 
 

 

 

36 

Продолжение таблицы 6.2 

Адресное 

пространство 

Название блока 

Описание 

Мост AHB-to-APB 

A0000000h – 
A0000FFFh  

WDT 

Сторожевой таймер 

A0001000h –
A0001FFFh  

I2C0  

Блок I2C_0  

Контроллеры I2C 

A0002000h – 
A0002FFFh 

I2C1  

Блок I2C_1  

A0003000h – 
A0003FFFh 

Timer0  

Timer_0  

Таймеры 

A0004000h –  
A0004FFFh 

Timer1  

Timer_1  

A0005000h – 
A0005FFFh 

Timer2  

Timer_2  

A0006000h –  
A0006FFFh 

DMA 

Контроллер DMA 

A0007000h –  
A0007FFFh 

UART0  

Блок UART_0  

Контроллеры 
UART 

A0008000h – 
A0008FFFh 

UART1  

Блок UART_1  

A0009000h –  
A0009FFFh 

UART2  

Блок UART_2  

A000A000h – 
A000AFFFh 

UART3  

Блок UART_3  

A000B000h –
A000BFFFh  

PWM0  

Блок PWM_0  

Контроллеры 
ШИМ  

A000C000h –
A000CFFFh  

PWM1  

Блок PWM_1  

A000D000h – 
A000DFFFh 

PWM2  

Блок PWM_2  

A000E000h –
A000EFFFh  

PWM3  

Блок PWM_3  

A000F000h – 
A000FFFFh 

PWM4  

Блок PWM_4  

A0010000h –  
A0010FFFh 

PWM5  

Блок PWM_5  

A0011000h –  
A0011FFFh 

PWM6  

Блок PWM_6  

A0012000h –  
A0012FFFh 

PWM7  

Блок PWM_7  

A0013000h –  
A0013FFFh 

PWM8 

Блок PWM_8 

A0014000h –  
A0014FFFh 

CAP0  

Блок CAP_0  

Контроллеры 
блоков захвата 

A0015000h –  
A0015FFFh 

CAP1  

Блок CAP_1  

A0016000h –  
A0016FFFh 

CAP2  

Блок CAP_2  

 

 

 

37 

Окончание таблицы 6.2 

Адресное 

пространство 

Название блока 

Описание 

A0017000h –  
A0017FFFh 

CAP3  

Блок CAP_3  

Контроллеры 
блоков захвата 

A0018000h –  
A0018FFFh 

CAP4  

Блок CAP_4  

A0019000h –  
A0019FFFh 

CAP5  

Блок CAP_5  

A001A000h – 
A001AFFFh 

QEP0  

Блок QEP_0  

Квадратурные 
декодеры 

A001B000h –  
A001BFFFh 

QEP1  

Блок QEP_1  

A001C000h –  
A001CFFFh 

BootFlash  

Загрузочная флеш-память  

A001D000h – 
A001DFFFh 

CMP  

Аналоговый компаратор  

A001E000h – 
A001EFFFh  

SPI0  

Блок SPI_0  

Контроллеры SPI 

A001F000h – 
A001FFFFh  

SPI1  

Блок SPI_1 

A0020000h – 
A0020FFFh  

SPI2  

Блок SPI_2 

A0021000h – 
A0021FFFh  

SPI3  

Блок SPI_3 

A0022000h – 
A0022FFFh  

UserFlash 

Пользовательская флеш-память 

A0023000h – 
A0023FFFh  

RTC  

Часы реального времени 

A0024000h – 
BFFFFFFh 

– 

Зарезервировано 

 
Т а б л и ц а   6 . 3  – Регистры системного сегмента 

Адресное 

пространство 

Название блока 

Описание 

E0000000h – 
E0000FFFh 

ITM 

Блок контроля трассировки 

Блок отладки 
DEBUG 

E0001000h – 
E0001FFFh 

DWT 

Блок точек наблюдения и 
трассировки данных  

E0002000h – 
E0002FFFh 

FPB 

Блок флеш-патчей и точек 
останова 

E0003000h – 
E000DFFFh 

– 

Зарезервировано 

E000E000h –
E000E00Fh 

CPUID 

Контроллер прерываний 

Блок системного 
контроля SCS 
 

E000E010h – 
E000E0FFh 

SysTick 

Системный таймер 

E000E100h – 
E000ECFFh 

NVIC 

Контроллер внешних 
прерываний 

 
 

 

 

38 

Окончание таблицы 6.3 

Адресное 

пространство 

Название блока 

Описание 

E000ED00h – 
E000ED8Ch 

CPUID 

Блок системного контроля 
SCB 

Блок системного 
контроля SCS 
 

E000ED90h – 
E000EDEFh 

MPU 

Блок защиты памяти 

E000EDF0h – 
E000EEFFh 

CPUID 

Блок отладки 

E000EF00h – 
E000EF30h 
E000EF34h – 
E000EF44h 

SCB 

Дополнительный блок FPU 
блока SCB 

E000EF48h – 
E000EF8Ch 

CPUID 

Блок программных 
прерываний 

E000EF90h – 
E000EFCFh 

CPUID 

Определяется реализацией 
(Implementation-defined) 

E000EFD0h – 
E000EFFFh 

CPUID 

Блок ID микроконтроллера 

 

E000F000h – 
E003FFFFh 

– 

Зарезервировано 

E0040000h – 
E0040FFFh 

TPIU 

Блок интерфейса точек 
трассировки TPIU 

Блок отладки 
DEBUG 

E0041000h  – 
E00FFFFFh 

PPB 

«Личная » периферийная шина 

E0100000h – 
FFFFFFFFh 

Vendor_SYS 

Системная область 

 

 

 

39 

7

 

Флеш-память и внешняя память. Загрузка микроконтроллера 

7.1

 

Загрузочная флеш-память  

Загрузочная  флеш-память  (см.  рисунок 7.1)  может  использоваться  для  хранения 

программ пользователя, хранения начального загрузчика, а также данных пользователя. 

 

 

 

Рисунок 7.1 – Загрузочная флеш-память 

 
Размер  основной  области  загрузочной  флеш-памяти  составляет  1  Мбайт.  Помимо 

основной области загрузочная флеш-память содержит особый защищенный блок, который 
может  использоваться  для  хранения  загрузчика,  либо  важных  данных  пользователя. 
Доступ  в  защищенный  блок  осуществляется  дополнительными  командами  контроллера. 
Размер защищенного блока составляет 8 Кбайт. 

Чтение  флеш-памяти  осуществляется  через  две  шины  AHB  –  I-code  (команды)  и     

D-code  (данные).  На  шине  I-code  работает  функция  предвыборки,  на  шине  D-code 
предвыборка не осуществляется. Чтение D-code шины имеет приоритет. 

На обеих шинах при попытке записи в любую область, чтении из несуществующей 

области,  чтении  во  время,  когда  флеш  занята  (стирание,  запись)  транзакция  проходит 
успешно с неопределенными данными на выходе. 

Функции  записи,  страничного  стирания,  полного  стирания  реализуются  через 

регистры, доступ к которым осуществляется посредством шины APB. 

 
Операция предвыборки 

При  запросе  данных  на  шине  по  адресу,  по  которому  не  осуществлялась 

предвыборка, выполняются следующие действия. 

1 Сигнал готовности на шине устанавливается в ноль и задерживает транзакцию.  
2 По запрашиваемому адресу считываются четыре двойных слова (128 бит) данных 

из  флеш-памяти  с  обнуленными  четырьмя  младшими  битами.  Далее  эти  данные 
записываются во внутренний первый буфер. 

3 Требуемое слово передается на шину AHB, и сигнал готовности устанавливается в 

единицу. 

4 Сразу после  установки сигнала готовности, из флеш-памяти считываются  четыре 

двойных  слова  данных  по  следующему  адресу.  Данные  сохраняются  во  втором  буфере. 
Если во время считывания этих данных появляются запросы по адресам, сохраненным в 
первом  буфере,  ответ  возникает  мгновенно,  если  по  другим  адресам,  то  готовность  на 
шине устанавливается в ноль, и происходит ожидание завершения считывания во второй 
буфер и далее возврат к действию 2. 

5 Если  приходят  запросы  по  адресам,  сохраненным  в  первом  буфере,  ответ 

возникает  мгновенно,  если  по  адресам  находящимся  во  втором  буфере,  ответ  также 
возникает  мгновенно.  Далее  переписывается  первый  буфер  значением  второго  и 
считывается следующий адрес из флеш-памяти. Если приходят запросы по адресам не из 
первого и второго буферов, то возврат к действию 1. 

 

 

40 

Настройка загрузки из защищенного блока загрузочной флеш-памяти 

Выбор  области  загрузки  осуществляется  битом  BOOTFROM_IFB  регистра 

INFO_WORD, находящегося в области пользовательской флеш-памяти.  

Если бит сброшен, то чтение (по шинам I-Code и D-Code) в адресном пространстве 

от  0000h  до  1FFFh  происходит  из  защищенного  блока  загрузочной  флеш,  а  чтение  в 
адресном  пространстве  от  2000h  до  FFFFFh  происходит  из  основного  блока 
(соответственно,  начиная с  адреса 2000h).  

Если бит  установлен  (по  умолчанию),  то  чтение во всем адресном  пространстве от 

00000h  до  FFFFFh  происходит  из  основного  блока  загрузочной  флеш  (соответственно, 
начиная с адреса 00000h). 

 

7.2

 

Пользовательская флеш-память 

Пользовательская  флеш-память  (см.  рисунок  7.2)  может  использоваться  для 

хранения пользовательских настроек во время работы. 

 

 

 

Рисунок 7.2 – Пользовательская флеш-память 

 
Размер  основной  области  пользовательской  флеш-памяти  составляет  64  Кбайта 

(256 страниц по 256 байт каждая). Основной блок расположен в пространстве с 0000h по 
FFFFh. Память доступна для чтения и записи через регистры: данных  FMD, адреса FMA, 
команд FMC, статуса FCIS, маски прерываний FCIM и сброса статуса FCIC. 

 
П р и м е ч а н и е   –  Запись  необходимо  производить  в  предварительно  очищенную 

ячейку памяти. Стирание памяти осуществляется полностью или постранично. 

 
Помимо 

основной 

области 

пользовательская 

флеш-память 

содержит 

информационный блок объемом 512 байт (две страницы), в котором хранятся настройки 
доступа к  страницам загрузочной и пользовательской флеш-памятей, а также параметры 
загрузки и отладки микроконтроллера. Информационный блок расположен в пространстве 
с  0000h  по  01FFh.  Доступ  к  информационному  блоку  управляется  битами  READ_IFB, 
WRITE_IFB и PAGEERASE_IFB регистра FMC.  

Карта информационного блока показана на рисунке 7.3. 
По  адресу  000h  располагается  информационное  слово  INFO_WORD,  состоящее  из 

четырех конфигурационных байт, см. приложение А.     

В диапазоне адресов с 040h по 050h расположены биты защиты страниц загрузочной 

флеш-памяти.  Установка  или  сброс  битов  позволяет  запрещать  или  разрешать  доступ  к 
страницам памяти для записи и стирания.  

В  диапазоне  адресов  с  080h  по  0A0h  расположены  биты  защиты  страниц 

пользовательской  флеш-памяти.  Установка  или  сброс  битов  позволяет  запрещать  или 
разрешать доступ к страницам памяти для записи и стирания.  

Остальной объем информационного блока – регистры пользователя. 

 

 

41 

 

 

Рисунок 7.3 – Информационный блок пользовательской флеш-памяти 

 
Логика работы контроллера пользовательской флеш 

При  старте  автомат  считывает  информационный  блок  пользовательской  флеш 

(52 байта) и сохраняет все в регистрах внутренней  регистровой памяти (см. рисунок 7.4). 
В  процессе  работы  контроллеры  пользовательской  и загрузочной  флеш  будут  напрямую 
обращаться к этим регистрам, а не читать значения из флеш-памяти. 

После  выполнения  этой  операции  схема  выдает  сигнал  готовности,  по  которому 

микроконтроллер выводится из состояния сброса. 

По окончании операции записи или стирания информационного блока флеш-памяти 

изменения будут записываться и в соответствующие регистры. 

 
 

 

 

Рисунок 7.4 – Считывание конфигурации микроконтроллера 

 

 

42 

7.3

 

Алгоритм стирания всей флеш-памяти  

1  Во  время  сброса  микроконтроллера  анализируется  состояние  вывода  H2.  Если 

вывод  находится  в  состоянии  логической  единицы  (подтянут  к  3,3  В),  то  загрузочная  и 
пользовательская  флеш-памяти  (включая  защищенный  и  информационный  блоки) 
переводятся в режим, в котором чтение запрещено (при чтении возвращаются нули).  

2 Далее по отладочному интерфейсу (SWD или JTAG) должна быть подана команда 

записи  значения  00000001h  в  регистр  FLASH_FULL_ERASE,  после  чего  будет 
активировано полное стирание.  

 
П р и м е ч а н и е  – Если полное стирание не требуется во время сброса, на выводе H2 

должен удерживаться логический ноль. 

 

7.4

 

Временные параметры 

На  рисунках  7.5  –  7.8  показаны  временные  диаграммы  циклов  чтения,  записи  и 

стирания флеш-памяти. Эти диаграммы справедливы, как для загрузочной флеш-памяти, 
так  и  для  пользовательской.  На  диаграммах  присутствуют  обозначения  сигналов  и 
временных параметров, описание которых приведено в таблицах 7.1 – 7.3, соответственно.   

 

 

 

Рисунок 7.5 – Цикл чтения флеш-памяти 

 

 

 

Рисунок 7.6

 – 

Цикл записи флеш-памяти 

 
 

 

 

Рисунок 7.7 – Цикл стирания флеш-памяти 

 

 

 

43 

 

 

Рисунок 7.8 – Цикл массового стирания флеш-памяти 

 
Т а б л и ц а   7 . 1  – Сигналы, используемые при работе с флеш-памятью 

Название сигнала 

Назначение 

A15-A6, A5-A0 

Адреса 

DOUT 

Данные, читаемые из флеш-памяти 

DIN 

Данные, записываемые во флеш-память  

RD# 

Чтение 

WR# 

Запись 

ERASE 

Стирание  

PROG 

Разрешение программирования 

NVSTR 

Разрешение операции записи/стирания 

 
Т а б л и ц а   7 . 2  – Параметры циклов обращения к флеш-памяти 

Параметр 

Назначение параметра 

Значение по 
умолчанию, мт 

Tacc 

Задержка от установки адреса, до считывания данных из 
флеш-памяти 

Tnvs 

Задержка установки сигнала NVSTR после установки 
сигнала PROG 

500 

Tnvh 

Задержка сброса сигнала NVSTR после сброса сигнала PROG 

Trcv 

Задержка после сброса сигнала NVSTR до его установки в 
следующем цикле 

100 

Tpgs 

Задержка сигнала записи после установки сигнала NVSTR 

1000 

Tprog 

Длительность активного уровня сигнала записи 

2000 

Tpgh 

Задержка сброса сигнала PROG после перехода сигнала 
записи в неактивное состояние 

Terase 

Длительность активного уровня сигнала стирания 

2000000 

Tme 

Длительность активного уровня сигнала стирания в цикле 
массового стирания 

Tnvh1 

Задержка сброса сигнала NVSTR после сброса сигнала стирания 

10000 

 
Т а б л и ц а   7 . 3  – Значения параметра Tacc в зависимости от частоты 

Тактовая частота,  

не более, МГц 

Задержка от установки адреса, до считывания данных из 

флеш-памяти, Tacc, мт 

100 

80 

60 

48 

30 

15 

П р и м е ч а н и е  – Значение параметра после сброса равно 4 мт. 

 

 

44 

Регистры задания временных параметров для пользовательской и загрузочной флеш-

памяти  идентичны  и  отличаются  только  адресами.  Название  регистра  и  параметра 
совпадают. Для более полной информации следует обратиться к приложению А.  

 

7.5

 

Контроллер внешней памяти 

Контроллер  внешней  памяти  позволяет  осуществлять  коммутацию  процессора 

микроконтроллера  с  внешней  памятью  типа  SRAM.  Контроллер  может  работать  в       
8/16-разрядном  режиме  и  согласовывает  сигналы  AHB-шины  с  сигналами  внешней 
памяти.  На  рисунке  7.9  показаны  временные  диаграммы  циклов  чтения  и  записи  при 
работе с внешней памятью.  

 

 

 

Рисунок 7.9 – Временная диаграмма работы контроллера внешней памяти 

(описание обозначений приведено в таблице 7.4) 

 

Т а б л и ц а   7 . 4  – Сигналы, используемые при работе с внешней памятью 

Название 

сигнала 

Выводы 

микро-

контроллера 

Назначение 

ADDR 

MEM_ADDR  Адрес для чтения/записи передаваемый во внешнюю память 

CE# 

MEM_CE# 

Сигнал выбора внешнего устройства 

OE# 

MEM_OE# 

Сигнал (строб) разрешения чтения для внешнего устройства 

HB#,  
LB# 

MEM_UB#,  
MEM_LB# 

Сигналы разрешения для старшего и младшего байт 

WE# 

MEM_WE# 

Сигнал (строб) записи для внешнего устройства  

DATAIO 

MEM_DATA  Данные внешней памяти 

П р и м е ч а н и е  – Сигналы с символом «#» имеют низкий активный уровень. 
 
Управление  контроллером  внешней  памяти  осуществляется  посредством  регистра 

EMCFG. Разрядность шины задается битом 8/16BIT. 

В  контроллере  внешней  памяти  предусмотрен  цикл  переключения  шины  между 

циклами  чтения  и  записи.  Это  реализовано  в  целях  предотвращения  кратковременных 
скачков тока в то время, когда процессор и внешнее устройство пытаются одновременно 
управлять шиной данных. Настройка длительности циклов чтения, записи и переключения 
осуществляется посредством полей  READ, WRITEWS и RWWS. На рисунке 7.9 показан 
пример для случая, когда READ = WRITEWS = RWWS = 001h, т. е. длительность каждого 
цикла составляет два такта сигнала системной частоты. 

Сигналы  MEM_CE#  и  MEM_OE#  задаются  по  маске  в  зависимости  от  адреса, 

задаваемого пользователем. Маска задается регистром EMCFG. 

Для  подключения  внешней  памяти  можно  использовать  две  группы  выводов 

микроконтроллера.  В  одной  группе  используется  первая  альтернативная  функция 
выводов, во  второй  – третья. Номер альтернативной функции задает  поле  EXTMEMSEL 

 

 

45 

информационного  слова  INFO_WORD.  Два  варианта  подключения  внешней  памяти  к 
микроконтроллеру отображены в таблицах 7.5 и 7.6. 

 

Т а б л и ц а   7 . 5   –  Подключение  внешней  памяти  к  выводам  микроконтроллера, 
использующих первую альтернативную функцию (EXTMEMSEL = 00b) 

Обозначение 

вывода 

Номер 

вывода 

Интерфейс 

E13 

146 

MEM_WE# 

Сигнал записи во внешнюю память 

E14 

147 

MEM_OE0# 

Сигнал чтения для внешнего устройства 0 

F6 

155 

MEM_CE0# 

Сигнал выбора внешнего устройства 0 

E15 

148 

MEM_OE1# 

Сигнал чтения для внешнего устройства 1 

F7 

156 

MEM_CE1# 

Сигнал выбора внешнего устройства 1 

F9 

158 

MEM_UB# 

Сигналы разрешения для старшего байта 

F8 

157 

MEM_LB# 

Сигналы разрешения для младшего байта 

B14 

70 

MEM_ADDR18 

Шина адреса 

B13 

69 

MEM_ADDR17 

B12 

68 

MEM_ADDR16 

B11 

67 

MEM_ADDR15 

B10 

66 

MEM_ADDR14 

B9 

65 

MEM_ADDR13 

B8 

64 

MEM_ADDR12 

B7 

60 

MEM_ADDR11 

B6 

59 

MEM_ADDR10 

B5 

58 

MEM_ADDR9 

B4 

57 

MEM_ADDR8 

A15 

43 

MEM_ADDR7 

A14 

42 

MEM_ADDR6 

A13 

41 

MEM_ADDR5 

A12 

40 

MEM_ADDR4 

A11 

39 

MEM_ADDR3 

A10 

38 

MEM_ADDR2 

A9 

34 

MEM_ADDR1 

A8 

33 

MEM_ADDR0 

E12 

145 

MEM_DATA15 

Шина данных 

D15 

124 

MEM_DATA14 

D14 

125 

MEM_DATA13 

D13 

126 

MEM_DATA12 

D12 

127 

MEM_DATA11 

C15 

110 

MEM_DATA10 

C14 

109 

MEM_DATA9 

C13 

108 

MEM_DATA8 

C12 

107 

MEM_DATA7 

C11 

106 

MEM_DATA6 

C10 

105 

MEM_DATA5 

C9 

104 

MEM_DATA4 

C8 

103 

MEM_DATA3 

C7 

99 

MEM_DATA2 

C6 

98 

MEM_DATA1 

B15 

71 

MEM_DATA0 

 

 

 

46 

Т а б л и ц а   7 . 6   –  Подключение  внешней  памяти  к  выводам  микроконтроллера, 
использующих третью альтернативную функцию (EXTMEMSEL = 10b) 

Обозначение 

вывода 

Номер 

вывода 

Интерфейс 

B0 

53 

MEM_WE# 

Сигнал записи во внешнюю память 

A2 

25 

MEM_OE0# 

Сигнал чтения для внешнего устройства 0 

B1 

54 

MEM_CE0# 

Сигнал выбора внешнего устройства 0 

A3 

26 

MEM_OE1# 

Сигнал чтения для внешнего устройства 1 

B2 

55 

MEM_CE1# 

Сигнал выбора внешнего устройства 1 

E10 

143 

MEM_UB# 

Сигналы разрешения для старшего байта 

E5 

135 

MEM_LB# 

Сигналы разрешения для младшего байта 

D5 

116 

MEM_ADDR12 

Шина адреса 

D4 

115 

MEM_ADDR11 

D3 

114 

MEM_ADDR10 

D2 

113 

MEM_ADDR9 

D1 

112 

MEM_ADDR8 

D0 

111 

MEM_ADDR7 

C5 

97 

MEM_ADDR6 

C4 

96 

MEM_ADDR5 

C3 

95 

MEM_ADDR4 

C2 

94 

MEM_ADDR3 

C1 

93 

MEM_ADDR2 

C0 

92 

MEM_ADDR1 

B3 

56 

MEM_ADDR0 

G6 

194 

MEM_DATA15 

 
Шина данных 

F3 

152 

MEM_DATA14 

G5 

193 

MEM_DATA13 

A0 

23 

MEM_DATA12 

F1 

150 

MEM_DATA11 

E11 

144 

MEM_DATA10 

F5 

154 

MEM_DATA9 

Шина данных 

E6 

136 

MEM_DATA8 

E3 

133 

MEM_DATA7 

E2 

132 

MEM_DATA6 

G7 

195 

MEM_DATA5 

D10 

129 

MEM_DATA4 

D9 

120 

MEM_DATA3 

D8 

119 

MEM_DATA2 

D7 

118 

MEM_DATA1 

D6 

117 

MEM_DATA0 

 

7.6

 

Режимы загрузки микроконтроллера 

После  сброса  микроконтроллера  автоматически  производится  считывание 

загрузочных настроек из информационного блока пользовательской флеш-памяти. Далее, 
в зависимости от настроек производится загрузка из выбранного источника. 

Микроконтроллер может загружаться из трех источников:  
- основной области загрузочной флеш-памяти; 
- защищенного блока загрузочной флеш-памяти; 
- внешней памяти. 
 

 

 

47 

На  рисунке  7.10  показаны  три  варианта  заполнения  адресного  пространства  при 

различных режимах загрузки микроконтроллера.  

 

 

 

Рисунок 7.10 – Процесс мапирования при загрузке микроконтроллера (указанные 

диапазоны адресов соответствуют реальным объемам памяти микроконтроллера). 

Карта адресного пространства:  

а) при загрузке из основной области загрузочной флеш-памяти;  

б) при загрузке из защищенной области загрузочной флеш-памяти;  

в) при загрузке из внешней памяти 

 

Загрузка из основной области загрузочной флеш-памяти 

В  этом  режиме  мапирование  не  используется.  Микроконтроллер  загружается  с 

адреса  00000000h  основной  области  загрузочной  флеш-памяти.  Карта  адресного 
пространства представлена на рисунке 7.10а) и в таблице 7.7. 
 
Т а б л и ц а   7 . 7   – Адресное пространство при загрузке из основной области загрузочной 
флеш-памяти 

Адресное 

пространство 

Название блока 

Описание 

00000000h –  
000FFFFFh 
 

Загрузочная флеш 
(I-Code) 

Шина выборки инструкций  
 

Загрузочная флеш 
(D-Code) 

Шина данных, расположенных в коде программы 
 

20000000h –  
2002FFFFh 

Внутреннее ОЗУ 
192 Кбайта 

Шина данных, расположенных в области ОЗУ 

40000000h –  
400FFFFFh 

Внешняя память  

 

 

Загрузка из защищенного блока 

В  этом  режиме  производится  мапирование  содержимого  защищенного  блока  в 

адресное  пространство  загрузочной  флеш-памяти.  При  обращении  к  диапазону   
00000000h  –  00001FFFh  происходит  считывание  защищенного  блока.  Содержимое 
основного блока загрузочной флеш-памяти доступно в диапазоне 00002000h – 1FFFFFFFh.  

Для загрузки из защищенного блока должен быть установлен бит  BOOTFROM_IFB 

в информационном слове INFO_WORD пользовательской флеш-памяти. 

Карта адресного пространства представлена на рисунке 7.10б) и в таблице 7.8. 
 
 
 

 

 

 

48 

Т а б л и ц а   7 . 8

 

–  Адресное  пространство  при  загрузке  из  защищенной  области 

загрузочной флеш-памяти 

Адресное 

пространство 

Название блока 

Описание 

00000000h –  
00001FFFh 
 

Защищенный блок 
загрузочной флеш 
(I-Code) 

Шина выборки инструкций  

Защищенный блок 
загрузочной флеш 
 (D-Code) 

Шина данных, расположенных в коде программы 

00002000h –  
000FFFFFh 
 

Загрузочная флеш 
(I-Code) 

Шина выборки инструкций 
 

Загрузочная флеш 
(D-Code) 

Шина данных, расположенных в коде программы 
 

20000000h –  
2002FFFFh 

Внутреннее ОЗУ 
192 Кбайта 

Шина данных, расположенных в области ОЗУ 

40000000h –  
400FFFFFh 

Внешняя память  

 

 

Загрузка из внешней памяти 

В этом режиме производится мапирование содержимого внешней памяти в адресное 

пространство  загрузочной  флеш-памяти.  При  загрузке  с  адреса  00000000h  по  адрес 
000FFFFFh  происходит  считывание  внешней  памяти.  Содержимое  основного  блока 
загрузочной флеш-памяти доступно с адреса 40000000h.   

Для  загрузки  из  внешней  памяти  необходимо  записать  загрузочную  информацию 

(конфигурационное  слово  INFO_WORD)  со  смещением  00h  пользовательской  флеш 
памяти со следующими параметрами: 

- сбросить бит EN_GPIO;  
- указать номер порта и вывода в PORTNUM и PINNUM, соответственно; 
- задать номер альтернативной функции порта в поле EXTMEMSEL. 
 
Карта  адресного  пространства  выглядит,  как  показано  на  рисунке  7.10в)  и  в 

таблице 7.9. 

 

Т а б л и ц а  

7 . 9

 – Адресное пространств при загрузке из внешней памяти 

Адресное 

пространство 

Название блока 

Описание 

00000000h –  
000FFFFFh 

Внешняя память  
(I-Code) 

Шина выборки инструкций  
 

Внешняя память 
(D-Code) 

Шина данных, расположенных в коде программы 

20000000h –  
2002FFFFh 

Внутреннее ОЗУ 
192 Кбайта 

Шина данных, расположенных в области ОЗУ 

40000000h –  
400FFFFFh 

Загрузочная флеш 

Шина данных 

 
 

 

 

 

 

 

 

 

 

содержание      ..     1      2      3      4      ..