Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Основные принципы системной разработки > Разработка драйверов и драйверные библиотеки > Драйверные библиотеки > Библиотека разработки драйверов символьных устройств (libio-char) > Общие сведения > Обзор примера драйвера последовательного порта > Функции и типы данных > ser_intr()



ser_intr()

Функция обработчик прерываний

Прототип:

#include "proto.h"
const struct sigevent *ser_intr( void *area,
int id )

Аргументы:

area
Указатель на area, заданную вызовом InterruptAttach(),
id
Идентификатор, возвращаемый InterruptAttach().

Библиотека:

libio-char

Описание:

Функция ser_attach_intr(), вызываемая из create_device(), использует InterruptAttach() для привязки ser_intr() к первому обработчику. Если вы не хотите передавать данные во время обработки прерывания, вы можете установить событие EVENT_TTO и завершить выполнение. Это приведет к вызову функции tte() из io-char в контексте потока (thread time) вместо прерывания.

Функция ser_intr() выполняет следующие действия:

Возвращаемое значение:

Возвращаемое значение функции-обработчика handler должно быть NULL или указателем на событие struct sigevent, доставляемое ядром. События определены в <signal.h>.

Классификация:

ЗОСРВ «Нейтрино»




Предыдущий раздел: Обзор примера драйвера последовательного порта