Conceito
- Interfaces em um âmbito geral pode ser definido como a interação entre usuário e sistema ou entre sistemas. Sempre há uma linguagem que fica responsável pela comunicação entres os meios, sendo uma de entrada e outra de saída. Esta última é dedicada a retornar dados, armazenar ou executar ações de acordo com cada iteração realizada; nesse meio ainda há protocolos tornando possível a comunicação.
Interface Física
- Interface física em caráter básico é um conector ou dispositivo que faz a comunicação entre sistemas. A comunicação pode ser feita através de um sinal analógico ou digital, o primeiro necessita de um conversor A/D (Analógico / Digital). Sensores são os responsáveis pelo grande número de interfaces físicas, pois podem se dividir em sensores com interfaces digitais e analógicas.
Funcionamento
- A função primordial é a transferência de dados entre dispositivos. No caso de sensores a interface fica responsável por "traduzir" um sinal elétrico em sinal digital para que o software possa ler os dados. A interface utilizada neste caso é o conversor A/D; pode se notar que para tal, é utilizado um hardware, que por vezes é embarcado no próprio sensor.
- Hoje contamos com várias tecnologias como a I²C, UART, SPI, CAN, Ethernet, dentre outras que serão exemplificadas abaixo, assim como suas aplicações que variam entre projetos.
Exemplos
- USB(Universal Serial Bus)
Interface criada para a comunicação entre periféricos e computadores, com o objetivo de padronizar a conexão entre vários hardwares. A comunicação é feita por canais lógicos, onde ocorrem as trocas de mensagens. Em microcontroladores existem dois tipos, sendo a USB device voltada para a comunicação que contem videos, áudios, armazenamento em massa, dentre outros. Já o USB "host" é utilizado para interface de controle podendo ser aberta, universal e aprimorada. A velocidade da porta 1.0 é de 12Mbps, já a versão 2.0 pode atingir 480Mbps, atualmente contamos com a USB 3.0 que pode transferir dados a 5Gbps.
- I²C (Inter-Integrated Circuits)
A interface utiliza apenas dois fios para comunicação e é empregada em microcontroladores. A interface conta com o canal SCL(Serial Clock) usado como sinal de referência e o SDA(Serial Data) usado como transmissor e receptor de dados. A referência sempre é enviado pelo mestre, sendo assim possível o acesso ao dispositivo escravo. As velocidades de comunicação podem ser de 100Kbps, 400Kbps ou 1Mbps dependendo da aplicação.
- SPI (Serial Protocol Interface)
Semelhante a comunicação I²C, conta com um sinal de clock e dois sinais de dados, no comportamento Mestre e Escravo. Os pinos MISO(Master Input, Slave Output) e MOSI(Master Output, Slave Input) são utilizados para transferência de dados. Há ainda um quarto sinal para a sincronização chamado SL(Slave Select), sua velocidade pode chegar a 7,5Mbps.
- UART (Universal Asynchronous Receiver Transmitter)
Interface utilizada para comunicação entre microcontroladores e computadores, sendo necessária a escolha de um padrão para comunicação, RS-232, RS-422 ou RS-485. Há necessidade de um hardware para intermediar a comunicação entre PC e o microcontrolador, sua função é pegar os níveis do barramento e deixá-los adequados para o microcontrolador.
Interface Lógica
- Interface lógica é concebida sempre em segundo plano, sendo que nem mesmo os programadores tem acesso a mesma.
Funcionamento
- A sua utilização é essencial para coordenar ações de um determinado equipamento, como a comunicação entre a CPU e a memoria RAM de um computador. Ela existe, mas não é exposta para o usuário, pois sua função é coordenar e gerenciar portas lógicas e dados.
- É utilizada em programação e tem a função de diminuir chances de erros catastróficos. A programação orientada a objetos é um exemplo bem claro, onde torna um software mais dinâmico e menos suscetível a falhas.
- Dependendo do tipo de aplicação a interface pode fazer a interação entre diversos aplicativos em segundo plano, para que se possa mostrar dados. No exemplo abaixo está a API( Interface entre aplicativos e programação).
Exemplos
- API ( Interface entre aplicativos e programação)
É um conjunto de aplicativos e programação que permite o acesso a um software no modelo Web. Os APIs são dinâmicos, pois podem ser alterados pelos usuários para uma melhor interação entre outro aplicativo. Os aplicativos tem a capacidade de se comunicarem entre si, um exemplo é a compra feita online, quando é fornecido o número do cartão de crédito o aplicativo de compra manda as informações para outro aplicativo que processa os dados e retorna se pode ou não ser efetuada a compra. Isso facilita a vida dos programadores, já que não há necessidade de começar um programa do zero, pois podem utilizar ferramentas externas.
Interface Visual
Funcionamento
Exemplos
Referências Bibliográficas
- Livro: Construção de interfaces homem-computador : o uso de estadogramas na especificação e implementação de controle de interface
- Autor: Fabio Nogueira de Lucena
- Link para download: http://www.bibliotecadigital.unicamp.br/document/?down=000062398
- Livro: Aspectos de implementação da interface dos programas de aplicação para o protocolo MMS e seus padrões associados : gerenciamento de conexão e exemplo de aplicação
- Autor: Jayme Nicolato Correa
- Link para download: http://www.bibliotecadigital.unicamp.br/document/?down=vtls000026458
- Título: O que é uma API?
- Autor: Dave Roos
- Link do hipertexto: http://tecnologia.hsw.uol.com.br/conferencia-api1.htm
- Livro: Plataforma multiware : interface de programação
- Autor: Marcio Maezi
- Link para download: http://www.bibliotecadigital.unicamp.br/document/?code=vtls000094013&fd=y
- Livro: Rede de sensores sem fio de baixo custo para monitoramento ambiental
- Autor: Marcel Salvioni da Silva
- Link para download: http://www.bibliotecadigital.unicamp.br/document/?code=000920924