F00-17 (1041601), страница 22
Текст из файла (страница 22)
При сбросе в регистр FLACL по умолчанию записывается 0x00, устанавливая тем самымадрес SRL 0x0000 и разрешая доступ по чтению ко всем ячейкам памяти программ.Рисунок 11.3. FLACL: Регистр ограничения доступа к Flash-памяти(только МК C8051F005/06/07/15/16/17)R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 000000000SFR Адрес:0xB7Биты 7-0: FLACL: Адрес границы программно-доступной области Flash-памяти.Этот регистр содержит старший байт 16-разрядного адреса границы области памяти программ,доступной для операций чтения/записи/стирания. Значение полного 16-разрядного адреса ограничениядоступа рассчитывается как 0xNN00, где NN заменяется содержимым регистра FLACL. Запись в этотрегистр устанавливает адрес границы программно-доступной области Flash-памяти.
Этот регистр можетбыть записан только один раз после сброса. Все последующие попытки записать этот регистригнорируются до следующего сброса.4.2002; Rev. 1.4CYGNAL Integrated Products, Inc. 2002Page 89C8051F000/1/2/5/6/7C8051F010/1/2/5/6/7Рисунок11.4. FLSCL: Регистр делителя модуля Flash-памятиR/WR/WR/WR/WFOSEFRAE--Бит 7Бит 6Бит 5Бит 4R/WR/WБит 3Бит 2Бит 7: FOSE: Включение ждущего таймера модуля Flash-памяти0: Ждущий таймер модуля Flash-памяти выключен.1: Ждущий таймер модуля Flash-памяти включен.Бит 6:R/WR/WЗначениепри сбросе:Бит 010001111FLASCLБит 1SFR Адрес:0xB6FRAE: Разрешение постоянного чтения Flash-памяти0: Чтением Flash-памяти управляет ждущий таймер.1: Flash-память всегда в режиме чтения.Биты 5-4: Не используются.
Читаются как 00b.Биты 3-0: FLASCL: Делитель модуля Flash-памяти.Этот регистр устанавливает значение делителя для заданной системной тактовой частоты.Делитель необходим для генерации корректных временных интервалов, требуемых модулемFlash-памяти для выполнения операций записи/стирания. Если значение делителя равно 1111b,операции записи/стирания Flash-памяти запрещены.0000: Системная тактовая частота < 50 кГц0001: 50 кГц ≤ Системная тактовая частота < 100 кГц0010: 100 кГц ≤ Системная тактовая частота < 200 кГц0011: 200 кГц ≤ Системная тактовая частота < 400 кГц0100: 400 кГц ≤ Системная тактовая частота < 800 кГц0101: 800 кГц ≤ Системная тактовая частота < 1.6 МГц0110: 1.6 МГц ≤ Системная тактовая частота < 3.2 МГц0111: 3.2 МГц ≤ Системная тактовая частота < 6.4 МГц1000: 6.4 МГц ≤ Системная тактовая частота < 12.8 МГц1001: 12.8 МГц ≤ Системная тактовая частота < 25.6 МГц1010: 25.6 МГц ≤ Системная тактовая частота < 51.2 МГц *1011, 1100, 1101, 1110: Зарезервированные значения.1111: Операции записи/стирания Flash-памяти запрещены.Значение делителя представляет собой наименьшее значение, удовлетворяющее следующейформуле:FLASCL > log2(Системная тактовая частота / 50 кГц)* Для тестирования.
Функционирование МК семейства C8051F000 на частотах выше 25МГц негарантируется.Page 90CYGNAL Integrated Products, Inc. 20024.2002; Rev. 1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/712. ВНЕШНЕЕ ОЗУ (C8051F005/06/07/15/16/17)МК C8051F005/06/07/15/16/17 включают 2048 байт ОЗУ, отображенные в пространстве внешнейпамяти данных. Доступ к ним осуществляется с использованием команды MOVX и указателя данныхDPTR, либо с использованием команды MOVX с косвенным режимом адресации. Если команда MOVXиспользуется с 8-битным операндом адреса (например, @R1), то старший байт 16-битного адреса беретсяиз регистра управления интерфейсом внешней памяти EMI0CN (см.
рис.12.1). Примечание: командаMOVX также используется для записи во Flash-память (см. раздел 11). По умолчанию командаMOVX получает доступ к внешнему ОЗУ (XRAM), т.е. PSTCL.0 = 0.Для любого режима адресации старшие 5 бит 16-битного адреса внешней памяти данных “неимеют значения”. В результате, 2048-байтное ОЗУ отображается в виде модулей во всем 64-Кбайтномдиапазоне адресов внешней памяти данных. Например, адреса 0x0000, 0x0800, 0x1000, 0x1800, 0x2000 ит.д. указывают на один и тот же байт XRAM. Это свойство полезно при осуществлении линейногозаполнения памяти, т.к.
нет необходимости сбрасывать указатель адреса при достижении границы блокаОЗУ.Рисунок 12.1. EMI0CN: Регистр управления интерфейсом внешнего ОЗУRRRRRR/WR/WR/W-----PGSEL2PGSEL1PGSEL0Бит 7Бит 6Бит 5Бит 4Бит 1Бит 0Бит 3Бит 2Значениепри сбросе:00000000SFR Адрес:0xAFБиты 7-3:Не используются. Читаются как 00000b.Биты 2-0: PGSEL[2:0]: Биты выбора страницы XRAMБиты выбора страницы XRAM образуют старший байт 16-битного адреса внешней памятиданных при использовании команды MOVX с 8-битным адресом, задавая таким образомнеобходимую 256-байтную страницу ОЗУ. Старшие 5 бит “не имеют значения”, поэтому2-Кбайтные адресные блоки повторяются модулями во всем 64-Кбайтном пространствеадресов внешней памяти данных.000: xxxxx000b001: xxxxx001b010: xxxxx010b011: xxxxx011b100: xxxxx100b101: xxxxx101b110: xxxxx110b111: xxxxx111b4.2002; Rev.
1.4CYGNAL Integrated Products, Inc. 2002Page 91C8051F000/1/2/5/6/7C8051F010/1/2/5/6/713. ИСТОЧНИКИ СБРОСАСхема сброса позволяет легко перевести МК в предопределенное по умолчанию состояние. Припереходе к этому состоянию сброса CIP-51 останавливает выполнение программы, устанавливает выводывнешних портов в заданное по умолчанию состояние и инициализирует регистры SFR значениями поумолчанию.
Прерывания и таймеры запрещаются. Программный счетчик (РС) сбрасывается и выполнениепрограммы начинается с адреса 0x0000.Все регистры SFR принимают значения по умолчанию. В подробном описании каждого регистра SFRприведено значение, загружаемое в этот регистр при сбросе. Содержимое внутренней памяти данных неизменяется при сбросе и ранее сохраненные данные остаются неизменными. Однако, т.к. регистр указателястека сбрасывается, стек фактически теряется, хотя данные в нем не изменяются.Защелки портов ввода/вывода сбрасываются в состояние 0xFF (все логические единицы), активируявнутренние слаботоковые подтяжки, которые удерживают на внешних портах ввода/вывода высокийлогический уровень. Если источником сброса является схема слежения за напряжением питания или сбросвызван установкой бита PORSF в 1, то на выводе /RST удерживается низкий логический уровень доистечения таймаута сброса по питанию.При выходе из состояния сброса МК использует внутренний тактовый генератор, работающий поумолчанию на тактовой частоте 2 МГц.
Информация о выборе и настройке источников системного тактовогосигнала приведена в разделе 14. Сторожевой таймер включен и настроен на максимальный таймаут.(Подробное описание сторожевого таймера приведено в разделе 13.8).Семь источников могут перевести МК в состояние сброса: включение/исчезновение питания,внешний вывод /RST, внешний сигнал CNVSTR, программный сброс, компаратор 0, детектор исчезновениятактирования, сторожевой таймер. Каждый источник сброса описан ниже:Рисунок 13.1.
Структурная схема источников сбросаVDDПорт ввода/ВыводаМатрицаCNVSTRСхема слеженияза питаниемCNVRSEF+-Компаратор 0CP0+(монтажное «ИЛИ»)/RST+-CP0-C0RSEFДетекторисчезновениятактированияСторожевойтаймерПрограммный сбросENWDTEnableMCDEnableENКаналсбросаSWRSFPREWDTStrobeТактовыеИмпульсыPage 92Таймаутсброса попитаниюядроCIP-51Системный сбросCYGNAL Integrated Products, Inc. 20024.2002; Rev. 1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/713.1.
Сброс при включении питания (Power-on Reset - POR)МК семейства C8051F000 содержат схему слежения за напряжением питания, которая удерживаетМК в состоянии сброса, пока напряжение питания VDD не превысит в процессе включения уровень VRST.(См. временную диаграмму на рис.13.2 и электрические характеристики в табл.13.1). В течение таймаутасхемы слежения за напряжением питания (100 мс) на выводе /RST удерживается низкий логический уровень,что позволяет напряжению питания стабилизироваться.При завершении сброса типа POR флаг PORSF (RSTSRC.1) аппаратно устанавливается в 1.
Вседругие флаги сброса в регистре RSTSRC являются неопределенными. Флаг PORSF сбрасывается в 0 присбросе от любого другого источника. Т.к. при сбросе любого типа выполнение программы начинается содного и того же адреса (0x0000), программа может опросить флаг PORSF, чтобы определить, было ливключение питания причиной сброса. Содержимое внутренней памяти данных после сброса типа PORследует считать неопределенным.13.2. Программный сбросУстановка в 1 бита PORSF вызовет сброс типа POR, который описан в разделе 13.1.вольтыРисунок 13.2.
Временная диаграмма работы схемы слежения за напряжением питания2.70VRST2.40VDD2.01.0tЛог. 1/RST100мс100мсЛог. 013.3. Сброс при исчезновении питания (Power-fail Reset – PFR)Когда при выключении или сбое питания напряжение питания VDD опускается ниже уровня VRST,схема слежения за напряжением питания установит на выводе /RST низкий логический уровень и переведетCIP-51 в состояние сброса (см. рис.13.2). Когда VDD превысит уровень VRST, CIP-51 выйдет из состояниясброса точно так же, как при сбросе типа POR. Следует иметь ввиду, что, хотя содержимое внутреннейпамяти данных и не изменяется при сбросе типа PFR, невозможно определить, опускалось ли напряжениеVDD ниже уровня, необходимого для сохранения данных.
Если флаг PORSF установлен в 1, данные нельзяболее считать действительными.4.2002; Rev. 1.4CYGNAL Integrated Products, Inc. 2002Page 93C8051F000/1/2/5/6/7C8051F010/1/2/5/6/713.4. Внешний сбросВнешний вывод /RST позволяет внешней схеме перевести МК в состояние сброса. Подача на вывод/RST сигнала с низким активным уровнем заставит МК перейти в состояние сброса. Несмотря на наличиевнутренних слаботоковых подтяжек, желательно обеспечить на выводе /RST внешние подтягивающие и/илиразвязывающие цепи, чтобы предотвратить ложные сбросы, вызванные шумом. После снятия сигнала снизким активным уровнем с вывода /RST МК будет оставаться в состоянии сброса еще по крайней мере 12тактовых циклов.
При завершении внешнего сброса устанавливается в 1 флаг PINRSF (RSTSRC.0).Допустимое напряжение на выводе /RST составляет 5В.13.5. Сброс от детектора исчезновения тактированияДетектор исчезновения тактирования (Missing Clock Detector – MCD) фактически представляет собойодновибратор, который управляется системным тактовым сигналом. Если системный тактовый сигналисчезнет более чем на 100мкс, то одновибратор сработает и сгенерирует сброс. После сброса типа MCD будетустановлен в 1 флаг MCDRSF (RSTSRC.2), показывая, что источником сброса был MCD; в иных случаях этотбит читается как 0.
Состояние вывода /RST не влияет на сброс этого типа. Работа детектора исчезновениятактирования разрешается установкой в 1 бита MSCLKE в регистре OSCICN (см. рис. 14.2).13.6. Сброс от Компаратора 0Установка в 1 флага C0RSEF (RSTSRC.5) настраивает Компаратор 0 как вход сброса с активнымнизким уровнем. Компаратор 0 следует включить, используя бит CPT0CN.7 (см. рис.