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

  • A interface visual é apresentada diretamente ao usuário, utilizando-se de imagens e ícones, muitas vezes intuitivos que leva a uma ação em conjunto do hardware e software.

Funcionamento

  • É responsável por fazer a interação entre interfaces físicas e lógicas. Quando o usuário clica no ícone de um jogo, a interface lógica executa comandos para ativar uma GPU para processamento gráfico e coordenar ela através de um barramento (Interface física).
  • Ela uni periférico e software, tornando dinâmica a interação do usuário com a plataforma que ele utiliza. Uma boa interface gráfica pode definir o sucesso ou o fracasso de um sistema, como já ocorreu com algumas versões do Windows(A pior foi a versão 2000).

Exemplos

  • Android

O sistema Android por ter sofrido tantas alterações ao longo dos anos exemplifica a importância de uma boa interface gráfica. Se pegarmos uma versão antiga como a Eclair e comparar com a Lollipop podemos notar diferenças absurdas, pois com o passar do tempo as versões foram ficando mais fluidas e dinâmicas, o que agradou e muito os usuários, que muitas vezes correm para obter uma versão mais recente.

  • Windows

Apesar de não ser um software livre como o Android o sistema operacional também sofreu alterações bruscas. Partindo do windows 98 e acompanhando a evolução até o windows 10, notamos que a empresa aprendeu com suas falhas e investiu e muito na interface gráfica de seus SOs.

  • Hoje

As interfaces gráficas estão evoluindo a cada dia, e está para surgir tecnologias que irão usar o próprio corpo do usuário como interface, ou ainda uma folha de papel onde se pode desenhar um circuito e empregar componentes. As novas interfaces contam com objetos tridimensionais, que o usuário pode interagir diretamente, um exemplo é a tecnologia Circuit Scribe.

Referências Bibliográficas