|
Driver TWI/I2C - YouTube: Ciência Elétrica
Biblioteca Otimizada para Microcontroladores AVR
|
Definições de tipos, enumerações e assinaturas de callback do driver TWI. Mais...
#include <stdint.h>#include <stddef.h>Ir para o código-fonte desse arquivo.
Definições de Tipos | |
| typedef void(* | TWI_Slave_Receive_Callback_t) (const uint8_t *data, size_t length) |
| Callback para o modo Slave: acionado após o recebimento de dados. | |
| typedef size_t(* | TWI_Slave_Transmit_Callback_t) (uint8_t *data, size_t max_length) |
| Callback para o modo Slave: acionado quando o Master solicita dados. | |
| typedef void(* | TWI_Master_Complete_Callback_t) (TWI_Status_t status, const uint8_t *data, size_t length) |
| Callback de conclusão para o modo Master. | |
| typedef void(* | TWI_Error_Callback_t) (TWI_Status_t error) |
| Callback genérico para tratamento de erros no barramento. | |
Enumerações | |
| enum | TWI_Mode_t { TWI_MODE_MASTER , TWI_MODE_SLAVE } |
| Modos de operação do módulo TWI. Mais... | |
| enum | TWI_Clock_t { TWI_CLOCK_100KHZ , TWI_CLOCK_400KHZ } |
| Frequências de clock (SCL) suportadas para o barramento. Mais... | |
| enum | TWI_Status_t { TWI_OK , TWI_ERROR_NACK , TWI_ERROR_BUS_BUSY , TWI_ERROR_ARBIT_LOST , TWI_ERROR_TIMEOUT , TWI_ERROR_INVALID_ARG } |
| Códigos de status e erro para operações TWI. Mais... | |
Definições de tipos, enumerações e assinaturas de callback do driver TWI.
Este arquivo centraliza os tipos de dados fundamentais para garantir a consistência entre os modos Master e Slave.
Definição no arquivo twi_types.h.
| typedef void(* TWI_Error_Callback_t) (TWI_Status_t error) |
Callback genérico para tratamento de erros no barramento.
| error | Código do erro detectado. Callback gen�rico para erros. |
Definição na linha 68 do arquivo twi_types.h.
| typedef void(* TWI_Master_Complete_Callback_t) (TWI_Status_t status, const uint8_t *data, size_t length) |
Callback de conclusão para o modo Master.
| status | Status final da transação (TWI_Status_t). |
| data | Ponteiro para os dados recebidos (será NULL em operações apenas de escrita). |
| length | Quantidade de bytes processados na transação. |
Definição na linha 62 do arquivo twi_types.h.
| typedef void(* TWI_Slave_Receive_Callback_t) (const uint8_t *data, size_t length) |
Callback para o modo Slave: acionado após o recebimento de dados.
| data | Ponteiro para o buffer contendo os dados recebidos. |
| length | Quantidade de bytes recebidos do Master. |
Definição na linha 46 do arquivo twi_types.h.
| typedef size_t(* TWI_Slave_Transmit_Callback_t) (uint8_t *data, size_t max_length) |
Callback para o modo Slave: acionado quando o Master solicita dados.
| data | Buffer que deve ser preenchido pela aplicação com os dados a enviar. |
| max_length | Espaço total disponível no buffer de saída. |
Definição na linha 54 do arquivo twi_types.h.
| enum TWI_Clock_t |
Frequências de clock (SCL) suportadas para o barramento.
| Enumeradores | |
|---|---|
| TWI_CLOCK_100KHZ | 100 kHz (Standard Mode). |
| TWI_CLOCK_400KHZ | 400 kHz (Fast Mode). |
Definição na linha 24 do arquivo twi_types.h.
| enum TWI_Mode_t |
Modos de operação do módulo TWI.
| Enumeradores | |
|---|---|
| TWI_MODE_MASTER | O microcontrolador controla o barramento e gera o clock. |
| TWI_MODE_SLAVE | O microcontrolador responde a um endereço definido pelo Master. |
Definição na linha 16 do arquivo twi_types.h.
| enum TWI_Status_t |
Códigos de status e erro para operações TWI.
Definição na linha 32 do arquivo twi_types.h.