Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка IOI2CInterface.h

Опции
Развертывание Target:

На этой странице

Ссылка IOI2CInterface.h

Функции

  • Возвращает экземпляр шинного интерфейса I2C, связанного с экземпляром IOFramebuffer / индексная пара шины.

    Объявление

    Objective C

    IOReturn IOFBCopyI2CInterfaceForBus ( io_service_t framebuffer, IOOptionBits bus, io_service_t *interface );

    Параметры

    bus

    Нуль базировал индекс шины на требуемом кадровом буфере.

    interface

    Интерфейсный экземпляр возвращается. Вызывающая сторона должна выпустить этот экземпляр с IOObjectRelease ().

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

    Код IOReturn.

    Обсуждение

    Некоторые графические устройства предоставят доступ к шине I2C, направленной через коннектор дисплея для управления внешними устройствами на той шине. Эта функция возвращает экземпляр шинного интерфейса I2C, связанного с экземпляром IOFramebuffer / индексная пара шины. Число шин I2C доступно от IOFBGetI2CInterfaceCount () вызов. Интерфейс может использоваться с IOI2CInterfaceOpen/Close/SendRequest () вызовы для выполнения транзакций I2C на той шине. Не все графические устройства поддерживают эту функциональность.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Возвращается количество I2C взаимодействует через интерфейс доступный связанный с экземпляром IOFramebuffer.

    Объявление

    Objective C

    IOReturn IOFBGetI2CInterfaceCount ( io_service_t framebuffer, IOItemCount *count );

    Параметры

    framebuffer

    io_service_t экземпляра IOFramebuffer. CoreGraphics обеспечит это для CGDisplay с CGDisplayIOServicePort () вызов.

    count

    Интерфейсное количество возвращается.

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

    Код IOReturn.

    Обсуждение

    Возвращается количество I2C взаимодействует через интерфейс доступный связанный с экземпляром IOFramebuffer.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Закрывает IOI2CConnectRef.

    Объявление

    Objective C

    IOReturn IOI2CInterfaceClose ( IOI2CConnectRef connect, IOOptionBits options );

    Параметры

    connect

    Непрозрачный IOI2CConnectRef, возвращенный IOI2CInterfaceOpen ().

    options

    Передача kNilOptions.

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

    Код IOReturn.

    Обсуждение

    Освобождает ресурсы, связанные с IOI2CConnectRef.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Открывает экземпляр шинного интерфейса I2C, позволяя запросам I2C быть сделанным.

    Объявление

    Objective C

    IOReturn IOI2CInterfaceOpen ( io_service_t interface, IOOptionBits options, IOI2CConnectRef *connect );

    Параметры

    interface

    Шинный интерфейс I2C (см. IOFBCopyI2CInterfaceForBus). Интерфейс может быть выпущен после того, как этот вызов выполняется.

    options

    Передача kNilOptions.

    connect

    Непрозрачный IOI2CConnectRef возвращается для использования с IOI2CSendRequest () и IOI2CInterfaceClose ().

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

    Код IOReturn.

    Обсуждение

    Экземпляр шинного интерфейса I2C, полученного IOFBCopyI2CInterfaceForBus, открыт с этой функцией, позволяющей запросы I2C быть сделанными.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет транзакцию I2C, указанную структурой IOI2CRequest.

    Объявление

    Objective C

    IOReturn IOI2CSendRequest ( IOI2CConnectRef connect, IOOptionBits options, IOI2CRequest *request );

    Параметры

    connect

    Непрозрачный IOI2CConnectRef, возвращенный IOI2CInterfaceOpen ().

    options

    Передача kNilOptions.

    request

    Передайте указатель на структуру IOI2CRequest, описывающую запрос. Если асинхронный запрос (с подпрограммой завершения не-NULL) структура запроса должен быть допустимым для жизни запроса.

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

    Код IOReturn, отражающий только результат запуска транзакции. Если результатом IOI2CSendRequest () является kIOReturnSuccess, результат транзакции I2C возвращается в поле результата структуры запроса.

    Обсуждение

    Освобождает ресурсы, связанные с IOI2CConnectRef.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

Типы данных

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Структура, определяющая низкоуровневую синхронизацию для шины I2C.

    Объявление

    Objective C

    struct IOI2CBusTiming { AbsoluteTime bitTimeout; AbsoluteTime byteTimeout; AbsoluteTime acknowledgeTimeout; AbsoluteTime startTimeout; AbsoluteTime holdTime; AbsoluteTime riseFallTime; UInt32 __reservedA[8]; };

    Поля

    bitTimeout

    Максимальное время ведомое устройство может задержаться (путем получения по запросу строки часов низко) единственный разрядный ответ.

    byteTimeout

    Максимальное время ведомое устройство может задержаться (путем получения по запросу строки часов низко) первый бит ответа байта.

    acknowledgeTimeout

    Максимальное время для ожидания ведомого устройства для отвечания ACK после записи байта.

    startTimeout

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

    riseFallTime

    Время для ожидания после любого изменения в выходном сигнале.

    __reservedA

    Обнулить.

    Обсуждение

    Эта структура используется для указания тайм-аутов и длительности импульса для реализации шины I2C.

  • Структура, определяющая I2C, соединяет шиной транзакцию.

    Объявление

    Objective C

    struct IOI2CRequest { IOOptionBits sendTransactionType; IOOptionBits replyTransactionType; uint32_t sendAddress; uint32_t replyAddress; uint8_t sendSubAddress; uint8_t replySubAddress; uint8_t __reservedA[2]; uint64_t minReplyDelay; IOReturn result; IOOptionBits commFlags; #if defined (__LP64__) uint32_t __padA; #else vm_address_t sendBuffer; #endif uint32_t sendBytes; uint32_t __reservedB[2]; #if defined (__LP64__) uint32_t __padB; #else vm_address_t replyBuffer; #endif uint32_t replyBytes; IOI2CRequestCompletion completion; #if ! defined (__LP64__) uint32_t __padC[5]; #else vm_address_t sendBuffer; vm_address_t replyBuffer; #endif uint32_t __reservedC[10]; #ifdef __ppc__ uint32_t __reservedD; #endif };

    Поля

    __reservedA

    Обнулить.

    result

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

    completion

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

    commFlags

    Флаги, изменяющие тип транзакции I2C. Следующие флаги определяются:

    Транзакция kIOI2CUseSubAddressCommFlag включает подадрес.

    minReplyDelay

    Минимальная задержка как абсолютное время между отправляет и отвечает транзакциям.

    sendAddress

    I2C адресуется к записи.

    sendSubAddress

    Подадрес I2C для записи.

    __reservedB

    Обнулить.

    sendTransactionType

    Следующие типы транзакции определяются для отправить части запроса:

    kIOI2CNoTransactionType No отправляют транзакцию для выполнения.

    kIOI2CSimpleTransactionType Простое сообщение I2C.

    kIOI2CCombinedTransactionType Объединенный формат I2C R / ~ W транзакция.

    sendBuffer

    Указатель на отправить буфер.

    sendBytes

    Число байтов для отправки. Набор к фактическим байтам отправил на завершении запроса.

    replyAddress

    Адрес I2C, из которого можно читать.

    replySubAddress

    Адрес I2C, из которого можно читать.

    __reservedC

    Обнулить.

    replyTransactionType

    Следующие типы транзакции определяются для части ответа запроса:

    kIOI2CNoTransactionType Никакая транзакция ответа для выполнения.

    kIOI2CSimpleTransactionType Простое сообщение I2C.

    сообщение kIOI2CDDCciReplyTransactionType DDC/ci (со встроенной длиной). Посмотрите VESA спецификация DDC/ci.

    kIOI2CCombinedTransactionType Объединенный формат I2C R / ~ W транзакция.

    replyBuffer

    Указатель на буфер ответа.

    replyBytes

    Макс. байты для ответа (размер replyBuffer). Набор к фактическим байтам получен на завершении запроса.

    __reservedD

    Обнулить.

    Обсуждение

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