LPC

Работа с портами ввода/вывода LPC1114. Регистры.

В микроконтроллерах серии LPC11xx и их вариантах общее количество линий портов ввода/вывода составляет от 28 до 42. При этом все линии объединяются в необходимое количество 12-разрядных глобальных портов GPIO, обозначаемых цифрами от 0 до 3. Для работы с портами предусмотрено 9 регистров специального назначения. Все регистры имеют разрядность 32 бита, но используется только 12 младших разрядов.

 Регистры специального назначения, для работы с GPIO.

Регистр данных GPIOxDATA

Регистр данных GPIOxDATA содержит текущее логическое состояние, присутствующее на выводах микроконтроллера. При работе в режиме выхода, значение, записанное в данный регистр, устанавливается на соответствующей линии. Чтение значения в регистре, возвращает состояние отдельных линий.

Регистр направления работы GPIOxDIR

Логический уровень отдельных разрядов каждого регистра соответствует направлению работы линий порта.

  • 0 – линия работает как вход
  • 1 – линия работает как выход

Регистр типа прерывания GPIOxIS

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

Регистр типа прерывания GPIOxIBE

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

Регистр типа прерывания GPIOxIEV

Данные, записанные в регистр, управляют фронтом или уровнем сигнала, генерирующего прерывания. Тип фронт/уровень устанавливается в регистре GPIOxIS

  • – Задний фронт или низкий уровень
  • – Передний фронт или высокий уровень


Регистр маски прерывания GPIOxIE

Высокий логический уровень разрешает прерывание от соответствующей линии, низкий запрещает.

Регистр состояния прерывания GPIOxRIS

Регистр доступен только для чтения. Возвращает 1 если выполнены все действия до запуска GPIOIE и 0 если прерывания не инициализированы.

Регистр маски прерывания GPIOxMIS

Регистр доступен только для чтения. Высокий логический уровень соответствует наличию прерывания. Низкий логический уровень возвращается при отсутствии события прерывания, либо если на данную линию наложена маска.

Регистр сброса прерывания GPIOxIC

Регистр предназначен для программного сброса прерывания по фронту сигнала. В случае, если установлен тип прерывания по уровню, регистр не работает. Сброс производится путем записи единицы в соответствующий бит.


Еще по теме:

Работа с портами ввода/вывода LPC1114
Работа с портами ввода/вывода LPC1114. Пример. 

You have no rights to post comments