Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

GPIOx_LCKR(9.2.7 Reference manual)

GPIOx_LCKR – это регистр порта x, регистр блокировки конфигурации. Используется чтобы защитить настройки портов от случайного изменения. Если в 16 бите 0 то заморозка не активна. Биты с 0 по 15 используются для блокировки конфигурации порта. Каждый бит замораживает соответствующие 4 бита регистра управления (CRL или CRH).

16 бит– это (Ключ-замок) бит, который может быть считан в любое время. Он может быть изменен только с помощью определенной последовательности записи «Lock Key Writing Sequence».

Если в 16 бите 0 то заморозка не активна.

 

Рассмотрим следующий пример:

Установка логической единицы на 15 и 9 пинах порта B;

а) Настраиваем тактирование порта В (можно использовать прогу STM32 generator).

Запись кода выглядит так

RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;

б) Настраиваем регистр GPIOВ_CRH, т.к. 9 и 15 пины это старшие пины порта В.


Смотрим страницу 172, Reference manual (9.2.2 Port configuration register high– GPIOx_CRH)

Заполняем необходимые нам поля.

Рассмотрим настройку одного пина. Биты 31 и 30 отвечают за настройку режима работы пина №15, нам необходим режим – 00 ( Выход общего назначения с подтягиванием), а биты 29 и 28 отвечают за настройку скорости работы пина на выход, выбираем – 01 ( Режим вывода, максимальная скорость 10 МГц). Получаем 0001.

Т.к. в задании нам необходимо настроить пины 9 и 15 то получаем:

                                                               
                                                               
               
Пин 15 Пин 14 Пин 13 Пин 12 Пин 11 Пин 10 Пин 9 Пин 8

Запись кода выглядит так

GPIOB->CRH = 0x10000010;

в) Устанавливаем значение на заданные пины.

Примечание:Это можно сделать 2 вариантами

- Либо установить все старшие либо младшие пины в 1 (в зависимости от задания) таким образом: GPIOB->BSRR = 0xFF000000. Не смотря на то, что вроди бы как должны зажечься все пины, этого не произойдет т.к. в пункте б произведена настройка конфигурации только пинов 9 и 15. Это приведет к увеличению не нужных операций, но сэкономить время потраченное на реализацию программы.

- Второй вариант это настроить все же пины 9 и 15 отдельно.


Дата добавления: 2015-07-11; просмотров: 70 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ИТОГОВЫХ КОМПЛЕКСНЫХ ИСПЫТАНИЙ (ИТОГОВОЙ ГОСУДАРСТВЕННОЙ АТТЕСТАЦИИ) СТУДЕНТОВ-ВЫПУСКНИКОВ ВУЗА| Установка 1 на пинах 9 и 15.

mybiblioteka.su - 2015-2024 год. (0.007 сек.)