Comunicação serial no desenvolvimento embarcado

Comunicação em série

Comunicação em série ainda é um importante meio de comunicação em muitos computadores e aplicativos de rede. Ele é usado extensivamente em sistemas embarcados devido ao fato de que a maioria dos computadores pode manipular conexões seriais nativamente ou com a assistência de emuladores ou conversores.

Desenvolvimento de sistemas embarcados Isso é focado em sistemas embarcados que irão interagir com computadores de uso geral, muitas vezes acha mais fácil empregar interfaces seriais ao invés de alternativas como um barramento de expansão PCI.

Conteúdo

  1. O que é desenvolvimento incorporado?
  2. Comunicação serial importante na programação embarcada?
  3. Desenvolvimento de software, emuladores e depuradores imprescindíveis
  4. Hardware ou software para desenvolvimento de sistemas embarcados em série?

O que é desenvolvimento incorporado?


Desenvolvimento incorporado também é comumente referido como programação embarcada, programação de sistemas embarcados ou desenvolvimento de software embarcado. É um ramo especializado de programação de computadores que se concentra na programação de sistemas embarcados. Os dispositivos que são controlados por meio do desenvolvimento incorporado geralmente não são considerados como computadores independentes. A programação embutida é usada para controlar o comportamento de dispositivos eletrônicos, como telefones, modems, robôs ou componentes eletrônicos de automóveis e aeronaves.

Software incorporado vs software de aplicação


O software aplicativo é usado pelos desenvolvedores na criação de programas e ferramentas que são executados em um computador de uso geral, como sua máquina Mac ou Windows. Os processadores de texto que você usa todos os dias, bem como todas as suas ferramentas de mídia social, são exemplos dos resultados do desenvolvimento de software de aplicativo.

Ao desenvolver software de aplicação, o desenvolvedor pode aproveitar os recursos do sistema operacional no qual o programa será executado e, geralmente, é removido da interface direta com componentes de hardware periféricos. Uma parte integrante de muitos esforços de programação de aplicativos é uma interface de usuário para permitir interação humana com a lógica do aplicativo.

O software incorporado destina-se a ser auto-contido dentro de um dispositivo específico. Algumas linguagens de computação de propósito geral também podem servir como linguagens de software incorporadas. Exemplos são C/C++, Python e JavaScript. Essas linguagens são ferramentas muito populares para desenvolvimento embarcado e também são amplamente utilizadas no campo de programação geral e de aplicativos. Programadores que são proficientes em programação de aplicativos C podem facilmente transferir essas habilidades para um projeto de programação C embutido.

Características de sistemas embarcados


Os sistemas embarcados têm certas características que os diferenciam dos computadores de uso geral ou dos dispositivos eletrônicos simples que não possuem a capacidade de serem programados. Aqui estão alguns dos recursos que distinguem os sistemas incorporados:

Dedicado a uma função específica - Um sistema embarcado é uma combinação de componentes de software, middleware e hardware que trabalham juntos para executar uma função especializada. Eles não são programáveis além dessa funcionalidade limitada.

  • Resposta em tempo real - Sistemas embarcados são freqüentemente usados em equipamentos que executam funções de monitoramento e controle automatizadas. O sistema precisa ser capaz de responder com precisão e rapidez às condições físicas variáveis.
  • Recursos limitados - Restrições aos recursos físicos disponíveis para sistemas embarcados precisam ser levadas em consideração em seu projeto e desenvolvimento. O espaço é freqüentemente um prêmio em sistemas embarcados, o que significa que há menos espaço para memória ou armazenamento.
  • Confiabilidade - Em muitos casos, os sistemas embarcados são usados em equipamentos ou componentes que executam tarefas críticas. Por esse motivo, eles precisam ser construídos de maneira confiável e fabricados para suportar as condições físicas em que irão operar. A falha de um sistema embarcado pode ter conseqüências desastrosas.
  • Consumo de energia eficiente - Associados às restrições de espaço a que muitos sistemas embarcados estão sujeitos, os dispositivos com alimentação própria precisam fazer uso eficiente de baterias pequenas.
  • Interface simples ou sem interface de usuário - Se houver uma interface de usuário em um sistema embarcado, geralmente é muito simples. Muitos sistemas embarcados não precisam interagir com humanos e não possuem interface de usuário.

Por que a comunicação serial é importante na programação embarcada?


A comunicação serial é um dos principais meios de transmissão de dados em muitos sistemas industriais e automatizados. Embora o laptop típico destinado ao uso doméstico não contenha nem mesmo uma única interface serial, o mesmo não é verdadeiro para muitas aplicações comerciais e industriais de dispositivos eletrônicos em rede. Todos os dispositivos de monitoração, detecção e controle podem usar as portas seriais para se comunicar entre si e seus computadores controladores principais.

Existem várias maneiras de um sistema embarcado fazer uso de uma porta serial. Alguns deles são:

  • Comunicação de dados entre diferentes partes do sistema
  • Comunicação com dispositivos externos
  • Download de firmware para manter os sistemas embarcados atualizados
  • Fornecendo uma interface de depuração ou console

A execução dessas funções em um sistema embarcado necessariamente implicará um entendimento da comunicação da porta serial e dos protocolos subjacentes que orientam esse método de transmissão de dados. Há um número de diferentes protocolos de comunicação serial empregados em sistemas embarcados.

Protocolos de comunicação serial em sistemas embarcados


RS232 - O protocolo RS232 é um padrão completo que inclui características elétricas, bem como especificações relativas a hardware de conexão e pin-outs. As velocidades de transmissão variam entre 20Kbps e 115.2Kbps. Para obter a máxima eficiência, a maioria dos cabos transmitidos usando o protocolo RS232 está limitada a 30 pés ou menos de comprimento.

RS422 e RS485 - Ambos os protocolos são interfaces balanceadas de par trançado capazes de transmitir velocidades de até 10Mbps em distâncias de até 4.000 pés. O uso de um barramento balanceado sobre o barramento desbalanceado usado no protocolo RS232 minimiza a interferência de ruído e permite uma maior distância de transmissão. O RS422 é usado para comunicação entre dois nós, enquanto o protocolo RS485 permite a comunicação entre múltiplos transceptores.

Outros protocolos - Existem outros protocolos que foram desenvolvidos por fabricantes de semicondutores. Se você estiver envolvido com comunicação serial com dispositivos embarcados, provavelmente será executado na família de protocolos RS232/RS422/RS485.

Tipos de sistemas embarcados


Sistemas embarcados autônomos - Esses sistemas não exigem um computador host e respondem diretamente aos dados recebidos por meio de suas portas de entrada. Exemplos são fornos de microondas e sistemas de medição de pressão.

Sistemas embarcados em tempo real - Sistemas que produzem uma saída necessária em um determinado período de tempo são conhecidos como sistemas incorporados em tempo real.

Sistemas embarcados em rede - Os sistemas embarcados em rede representam o aplicativo de crescimento mais rápido dos sistemas embarcados. A capacidade de monitorar os sistemas embarcados por meio de um navegador da Web é amplamente utilizada em aplicativos de monitoramento industriais e médicos.

Sistemas embarcados móveis - Celulares, câmeras digitais e mp3 players são apenas alguns exemplos de sistemas embarcados móveis.

Desenvolvimento de software, emuladores e depuradores imprescindíveis


Desenvolvedores de sistemas embarcados precisam ser capazes de monitorar o comportamento de seus sistemas. Uma faceta importante desse monitoramento é depuração de porta serial. Uma interface serial pode ser a única maneira de se comunicar com o sistema embarcado. O software Eltima oferece um pacote de software de porta serial completo e completo que tornará o trabalho com seus sistemas embarcados baseados em série muito mais fácil e eficiente.

Vejamos algumas das melhores ferramentas incorporadas de desenvolvimento de software e hardware para engenheiros que trabalham com portas seriais e sistemas incorporados.

Virtual Serial Port Driver e Virtual Serial Port Driver PRO


Virtual Serial Port Driver (VSPD) foi projetado para permitir que o usuário gerencie facilmente suas portas seriais físicas e virtuais. Há uma versão padrão disponível que oferece funcionalidade limitada (crie pares ilimitados de porta COM) e uma versão PRO que fornece recursos avançados.

Virtual Serial Port Driver

Alguns dos destaques deste aplicativo de software de comunicação serial são:

  • Criação de portas seriais virtuais - Qualquer número de portas seriais virtuais pode ser criado. Essas portas podem ser usadas para compartilhar uma única porta serial física entre vários aplicativos e emularão completamente todos os parâmetros da interface real.
  • Divisão de porta serial -Usando o VSPD PRO, você pode dividir uma porta serial física em várias portas virtuais que podem acessar um dispositivo conectado à porta simultaneamente. Isso permite que você use facilmente mais de um aplicativo com um único dispositivo conectado em série.
  • Juntando portas COM - Quando você une várias portas seriais virtuais a uma física, você pode redirecionar os dados recebidos de vários dispositivos seriais para um único aplicativo.
  • Comutação de portas automaticamente - O Virtual COMPort Driver PRO fornece a capacidade de criar um switcher que funcione com seu aplicativo para sempre garantir que uma porta serial não ocupada esteja disponível para uso.
  • Mesclando portas COM - Outro recurso avançado do VSPD PRO é a fusão de portas seriais. Usando esse recurso, você pode ter vários dispositivos ou aplicativos que podem trocar dados com todos os aplicativos ou dispositivos mesclados simultaneamente.

  • Serial Port Monitor - registrar e analisar a comunicação serial


    Outra excelente ferramenta da Eltima Software, projetada para depurar a comunicação serial, é Serial Port Monitor (SPM).

    Serial Port Monitor

    Este poderoso software de comunicação serial permite:

    • Analisar a atividade da porta serial - Usando o SPM, você pode imediatamente começar a farejar e monitorar qualquer porta serial, mesmo que ela já esteja aberta por outro aplicativo. A captura de dados em tempo real permite rastrear rapidamente problemas e depurar suas transmissões de dados em série. As sessões de monitoramento podem ser direcionadas para um arquivo para visualização ou análise posterior.
    • Monitore várias portas em uma única sessão - Várias portas podem ser monitoradas simultaneamente com dados registrados em uma base de primeiro a entrar, facilitando a análise do fluxo de dados em um ambiente complexo.
    • Vários formatos de exibição de dados - Escolha entre a tabela, linha, despejo ou modo terminal ao visualizar seus dados coletados. Os filtros podem ser aplicados para limitar os dados apresentados àquele que você deseja monitorar.
    • Emulação de transmissão de dados - Você pode enviar dados para dispositivos seriais em vários formatos para testar o comportamento do dispositivo. Esse recurso pode ser útil para rastrear problemas durante o desenvolvimento do sistema embarcado.
    • Comparação de sessão - Compare duas sessões e tenha as diferenças exibidas automaticamente.

    Divisores de porta serial de hardware


    Divisores de porta serial de hardware

    Dispositivos físicos que podem executar algumas das funções das ferramentas de software discutidas acima estão disponíveis para o desenvolvedor do sistema embarcado. Você pode obter cabos que permitem compartilhar o sinal de uma única porta serial com dois ou mais dispositivos ou aplicativos.

    Contras: Eles oferecem menos flexibilidade do que a alternativa de software, pois são limitados no número de conexões que podem ser disponibilizadas. Outra restrição é o comprimento do cabo que pode ser usado e a tarefa geral de gerenciamento de cabos que pode se tornar difícil de lidar à medida que aumenta a necessidade de compartilhar sinais.

    Cabo de monitor espião serial RS232

    Cabo de monitor espião serial RS232

    É possível obter cabos de monitoramento serial ou farejadores que funcionam no modo half ou full-duplex. Eles trabalham fornecendo outro conector para um cabo RS232. Um dispositivo conectado a essa terceira conexão pode monitorar a comunicação entre as duas extremidades do cabo RS232. Dependendo do tipo de dispositivo ou aplicativo anexado, você poderá registrar os dados para uso posterior.

    DCAClab é um simulador de circuitos elétricos on-line para educação STEM e tecnologia, ajuda os professores de mecatrônica a explicar os circuitos para seus alunos com facilidade. Simula e soluciona problemas de circuitos quebrados em um rico ambiente de simulação, fornecido com componentes de aparência real, osciloscópio realista e multímetro com várias funções a serem usadas.

    Hardware ou software para desenvolvimento de sistemas
    embarcados em série?


    Ao escolher ferramentas para desenvolvimento de sistemas embarcados em série, você precisa considerar a facilidade de uso e a flexibilidade. Sem dúvida, os aplicativos de software projetados especificamente para trabalhar com dispositivos seriais são mais poderosos e oferecem opções conforme o ambiente de teste é alterado.

    Os benefícios adicionais de uma solução de software incluem a eliminação da necessidade de comprar cabos caros e a capacidade de monitorar a atividade serial remotamente. Se você é sério sobre o desenvolvimento de sistemas embarcados, deve dar uma olhada de perto nessas ferramentas de software. Eles farão sua vida de desenvolvimento muito mais agradável e darão um passo adiante na competição.

    Serial Port Monitor

    Requisitos: Windows (32-bit e 64-bit): XP/2003/2008/Vista/7/8/10, Windows Server 2012, Windows Server 2016 , 9.16MB size
    Versão 7.0.342 (13th , 2018) Notas de versão
    Categoria: Communication Application