Índice:
- Etapa 1: SERIAL VS. COMUNICAÇÃO PARALELA
- Passo 2:
- Etapa 3:
- Etapa 4: INTRODUÇÃO À COMUNICAÇÃO SPI
- Etapa 5:
- Etapa 6:
- Etapa 7:
- Etapa 8: COMO O SPI FUNCIONA
- Etapa 9:
- Etapa 10:
- Etapa 11:
- Etapa 12:
- Etapa 13: VANTAGENS E DESVANTAGENS DO SPI
Vídeo: BÁSICOS DO PROTOCOLO DE COMUNICAÇÃO SPI: 13 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Ao conectar um microcontrolador a um sensor, monitor ou outro módulo, você já pensou em como os dois dispositivos se comunicam? O que exatamente eles estão dizendo? Como eles conseguem se entender?
A comunicação entre dispositivos eletrônicos é como a comunicação entre humanos. Ambos os lados precisam falar a mesma língua. Em eletrônica, essas linguagens são chamadas de protocolos de comunicação. Felizmente para nós, existem apenas alguns protocolos de comunicação que precisamos conhecer ao construir a maioria dos projetos eletrônicos DIY. Nesta série de artigos, discutiremos os fundamentos dos três protocolos mais comuns: Interface Periférica Serial (SPI), Circuito Inter-Integrado (I2C) e comunicação dirigida por Receptor / Transmissor Assíncrono Universal (UART). Primeiro, começaremos com alguns conceitos básicos sobre comunicação eletrônica e, em seguida, explicaremos em detalhes como o SPI funciona. No próximo artigo, discutiremos a comunicação orientada pelo UART e, no terceiro artigo, mergulharemos no I2C. SPI, I2C e UART são um pouco mais lentos do que protocolos como USB, ethernet, Bluetooth e WiFi, mas são muito mais simples e usam menos recursos de hardware e sistema. SPI, I2C e UART são ideais para comunicação entre microcontroladores e entre microcontroladores e sensores onde grandes quantidades de dados de alta velocidade não precisam ser transferidos.
Etapa 1: SERIAL VS. COMUNICAÇÃO PARALELA
Os dispositivos eletrônicos se comunicam enviando bits de dados por meio de fios fisicamente conectados entre os dispositivos. Um bit é como uma letra em uma palavra, exceto que em vez das 26 letras (no alfabeto inglês), um bit é binário e só pode ser 1 ou 0. Os bits são transferidos de um dispositivo para outro por mudanças rápidas na voltagem. Em um sistema operando a 5 V, um bit 0 é comunicado como um pulso curto de 0 V e um bit 1 é comunicado por um pulso curto de 5 V.
Os bits de dados podem ser transmitidos de forma paralela ou serial. Na comunicação paralela, os bits de dados são enviados todos ao mesmo tempo, cada um por meio de um fio separado. O diagrama a seguir mostra a transmissão paralela da letra “C” em binário (01000011):
Passo 2:
Na comunicação serial, os bits são enviados um a um por meio de um único fio. O diagrama a seguir mostra a transmissão serial da letra “C” em binário (01000011):
Etapa 3:
Etapa 4: INTRODUÇÃO À COMUNICAÇÃO SPI
SPI é um protocolo de comunicação comum usado por muitos dispositivos diferentes. Por exemplo, módulos de cartão SD, módulos de leitor de cartão RFID e transmissores / receptores sem fio de 2,4 GHz usam SPI para se comunicar com microcontroladores.
Um benefício exclusivo do SPI é o fato de que os dados podem ser transferidos sem interrupção. Qualquer número de bits pode ser enviado ou recebido em um fluxo contínuo. Com I2C e UART, os dados são enviados em pacotes, limitados a um número específico de bits. As condições de início e parada definem o início e o fim de cada pacote, de modo que os dados são interrompidos durante a transmissão. Dispositivos que se comunicam via SPI estão em uma relação mestre-escravo. O mestre é o dispositivo de controle (geralmente um microcontrolador), enquanto o escravo (geralmente um sensor, display ou chip de memória) recebe instruções do mestre. A configuração mais simples do SPI é um único mestre, sistema único escravo, mas um mestre pode controlar mais de um escravo (mais sobre isso a seguir).
Etapa 5:
Etapa 6:
MOSI (Master Output / Slave Input) - Linha para o mestre enviar dados ao escravo.
MISO (Master Input / Slave Output) - Linha para o escravo enviar dados ao mestre.
SCLK (Clock) - Linha para o sinal de clock.
SS / CS (Slave Select / Chip Select) - Linha para o mestre selecionar para qual escravo enviar os dados
Etapa 7:
* Na prática, o número de escravos é limitado pela capacitância de carga do sistema, o que reduz a capacidade do mestre de alternar com precisão entre os níveis de tensão.
Etapa 8: COMO O SPI FUNCIONA
O RELÓGIO
O sinal de clock sincroniza a saída de bits de dados do mestre para a amostragem de bits pelo escravo. Um bit de dados é transferido em cada ciclo de clock, de modo que a velocidade da transferência de dados é determinada pela frequência do sinal de clock. A comunicação SPI é sempre iniciada pelo mestre, uma vez que o mestre configura e gera o sinal de clock.
Qualquer protocolo de comunicação em que os dispositivos compartilham um sinal de clock é conhecido como síncrono. SPI é um protocolo de comunicação síncrona. Também existem métodos assíncronos que não usam um sinal de relógio. Por exemplo, na comunicação UART, ambos os lados são configurados para uma taxa de transmissão pré-configurada que determina a velocidade e o tempo de transmissão de dados.
O sinal do relógio no SPI pode ser modificado usando as propriedades da polaridade do relógio e da fase do relógio. Essas duas propriedades funcionam juntas para definir quando os bits são produzidos e quando são amostrados. A polaridade do clock pode ser definida pelo mestre para permitir que os bits sejam emitidos e amostrados na borda ascendente ou descendente do ciclo do clock. A fase do clock pode ser configurada para que a saída e a amostragem ocorram na primeira ou na segunda borda do ciclo do clock, independentemente de estar aumentando ou diminuindo.
SLAVE SELECT
O mestre pode escolher com qual escravo deseja falar, definindo a linha CS / SS do escravo para um nível de baixa tensão. No estado inativo, sem transmissão, a linha de seleção de escravo é mantida em um nível de alta tensão. Vários pinos CS / SS podem estar disponíveis no mestre, o que permite que vários escravos sejam conectados em paralelo. Se apenas um pino CS / SS estiver presente, vários escravos podem ser conectados ao mestre por encadeamento.
MULTIPLE SLAVES SPI
pode ser configurado para operar com um único mestre e um único escravo, e pode ser configurado com vários escravos controlados por um único mestre. Existem duas maneiras de conectar vários escravos ao mestre. Se o mestre tiver vários pinos de seleção de escravos, os escravos podem ser conectados em paralelo como este:
Etapa 9:
Etapa 10:
MOSI E MISO
O mestre envia dados ao escravo bit a bit, em série, através da linha MOSI. O escravo recebe os dados enviados do mestre no pino MOSI. Os dados enviados do mestre para o escravo geralmente são enviados com o bit mais significativo primeiro. O escravo também pode enviar dados de volta ao mestre por meio da linha MISO em série. Os dados enviados do escravo de volta ao mestre geralmente são enviados com o bit menos significativo primeiro. ETAPAS DA TRANSMISSÃO DE DADOS SPI 1. O mestre emite o sinal de relógio:
Etapa 11:
Se apenas um pino de seleção de escravo estiver disponível, os escravos podem ser encadeados assim:
Etapa 12:
MOSI E MISO
O mestre envia dados ao escravo bit a bit, em série, através da linha MOSI. O escravo recebe os dados enviados do mestre no pino MOSI. Os dados enviados do mestre para o escravo geralmente são enviados com o bit mais significativo primeiro.
O escravo também pode enviar dados de volta ao mestre por meio da linha MISO em série. Os dados enviados do escravo de volta ao mestre geralmente são enviados com o bit menos significativo primeiro.
ETAPAS DE TRANSMISSÃO DE DADOS SPI
* Nota As imagens são listadas Oboé que você pode distinguir facilmente
1. O mestre emite o sinal do relógio:
2. O mestre muda o pino SS / CS para um estado de baixa tensão, que ativa o escravo:
3. O mestre envia os dados um bit por vez para o escravo ao longo da linha MOSI. O escravo lê os bits à medida que são recebidos:
4. Se uma resposta for necessária, o escravo retorna os dados um bit por vez ao mestre ao longo da linha MISO. O mestre lê os bits à medida que são recebidos:
Etapa 13: VANTAGENS E DESVANTAGENS DO SPI
Existem algumas vantagens e desvantagens em usar o SPI e, se puder escolher entre diferentes protocolos de comunicação, você deve saber quando usar o SPI de acordo com os requisitos do seu projeto:
VANTAGENS
Sem bits de início e fim, então os dados podem ser transmitidos continuamente sem interrupção Nenhum sistema de endereçamento escravo complicado como I2C Taxa de transferência de dados mais alta do que I2C (quase duas vezes mais rápido) Linhas MISO e MOSI separadas, para que os dados possam ser enviados e recebidos ao mesmo tempo Tempo
DESVANTAGENS
Usa quatro fios (I2C e UARTs usam dois) Nenhuma confirmação de que os dados foram recebidos com sucesso (I2C tem isso) Nenhuma forma de verificação de erro como o bit de paridade no UART permite apenas um único mestre Espero que este artigo tenha lhe dado um melhor entendimento do SPI. Continue na parte dois desta série para aprender sobre a comunicação conduzida por UART ou na parte três, onde discutimos o protocolo I2C.
Se você tiver alguma dúvida, fique à vontade para perguntar na seção de comentários, estamos aqui para ajudar. E certifique-se de seguir
Atenciosamente: M. Junaid
Recomendado:
Decodificador de protocolo de controle remoto RC5 sem biblioteca: 4 etapas
Decodificador de protocolo de controle remoto RC5 sem biblioteca: antes de decodificar rc5, primeiro discutimos o que é o comando rc5 e qual é a sua estrutura. então, basicamente, o comando rc5 usado em controles remotos que são usados em televisores, reprodutores de cd, d2h, sistemas de home theater etc. ele tem 13 ou 14 bits dispostos em um
Relógio da Internet: Exibir data e hora com um OLED usando ESP8266 NodeMCU com protocolo NTP: 6 etapas
Relógio da Internet: Exibir data e hora com um OLED usando ESP8266 NodeMCU com protocolo NTP: Oi pessoal, neste instructables vamos construir um relógio da internet que obterá o tempo da internet para que este projeto não precise de nenhum RTC para rodar, só vai precisar de um conexão de internet funcionando E para este projeto você precisa de um esp8266 que terá um
Nextion Display - Interface e protocolo explicados com PIC e Arduino: 10 etapas
Nextion Display | Interface e protocolo explicados com PIC e Arduino: Nextion Display é muito fácil de usar e fácil interface com microcontroladores. Com a ajuda do editor Nextion, podemos configurar o display e podemos projetar UI no display. Portanto, com base em eventos ou comandos Nextion display atuará no para exibir o
Quadro de avisos digital usando Raspberry Pi e protocolo MQTT: 8 etapas
Quadro de avisos digital usando Raspberry Pi e protocolo MQTT: Quadros de avisos são usados em quase todos os lugares, como escritórios, escolas, hospitais e hotéis. Eles podem ser usados repetidamente para exibir avisos importantes ou anunciar eventos ou reuniões futuras. Mas o aviso ou os anúncios devem ser impressos
BÁSICOS DA COMUNICAÇÃO UART: 16 etapas
NOÇÕES BÁSICAS DE COMUNICAÇÃO UART: Lembra quando impressoras, mouses e modems tinham cabos grossos com aqueles conectores enormes e desajeitados? Aqueles que literalmente tiveram que ser parafusados no seu computador? Esses dispositivos provavelmente usavam UARTs para se comunicar com seu computador. Embora o USB tenha quase