O que é programação de sistema incorporado e seus idiomas
Um sistema é um arranjo de várias unidades, montadas em conjunto para funcionar de acordo com as instruções fornecidas. Um sistema embarcado é uma combinação de hardware e software, que executa uma tarefa específica dentro do período especificado (o que significa que deve executar apenas uma tarefa específica, como uma máquina de lavar). A principal vantagem de usar um sistema embarcado em um aplicativo é que ele pode minimizar o tamanho e o custo e também melhorar a confiabilidade e eficiência da tarefa. Este artigo apresenta uma visão geral das linguagens de software embarcado, programação de sistema embarcado e suas funções.
Componentes de sistemas incorporados
A seguir estão os componentes dos sistemas embarcados
- Hardware incorporado: O microcontrolador é o coração do sistema embarcado, onde vários periféricos têm interface com o hardware embarcado para fins de comunicação.
- RTOs incorporados: Um sistema operacional embutido em tempo real é usado para realizar todas as operações complexas (ar.
- Drivers de dispositivo: Ele atua como uma ponte entre os sistemas operacionais e os dispositivos periféricos.
- Pilhas de comunicação: É usado para comunicação com dispositivos externos.
- Aplicativos incorporados: Ele executa a função predefinida do dispositivo incorporado.
Software integrado
Um software embutido ou programação de sistema embutido é um software de computador, que é usado para controlar dispositivos fornecendo um conjunto de instruções. Também é denominado firmware, vários dispositivos com várias funcionalidades podem ser programados usando software embarcado, mantendo as restrições de design (como restrições de tempo de resposta, prazos rígidos e dados processados) e armazenando os dados finais na memória (Ram / Rom).
O software é controlado ou iniciado por uma interface de máquina. O software embutido está embutido em todos os eletrônicos, como carros, telefones, robôs, sistemas de segurança, etc., que é simples de ser executado em um microcontrolador de 8 bits que usa memória de até alguns KB. Ajuda no processamento de operações complexas e determina a estrutura de computação precisa.
Linguagens de programação do sistema incorporado
O software incorporado usa um sistema operacional, que é um sistema operacional em tempo real que executa várias tarefas ao mesmo tempo. Os programas embarcados são programados usando as linguagens C / C ++, Phyton e Java Scripts e são processados em sistemas operacionais como Linux OS, VxWorks, Fusion RTOS, Nucleus RTOS, micro C / OS, OSE, etc. A seleção da linguagem de programação reproduz um papel vital no desenvolvimento de software embarcado, que é baseado em certos fatores, conforme mostrado abaixo,
- Tamanho :A quantidade de memória exigida por um programa desempenha um papel importante, pois os processadores embutidos (microcontroladores) têm uma quantidade específica de ROM (Read Only Memory) com base em sua aplicação.
- Velocidade :A velocidade de execução do programa deve ser rápida
- Portabilidade: Diferentes processadores podem ser compilados usando um programa.
- A implementação é difícil
- A manutenção é difícil.
Programação de um sistema incorporado em linguagem Assembly
A programação de um sistema embarcado em linguagem assembly (entrada) e sua conversão em linguagem de nível de máquina (saída) usando um montador pode ser explicada usando o exemplo a seguir, onde realizamos a adição de dois numéricos usando dois registradores separados e armazena o resultado em um registrador de saída.
Entrada
AQUI:MOV R0, # 01H
MOV # 1, # 02H
MOV A, R0
ADICIONE A, R1
MOV P0, A
SIMP AQUI
Saída
Operando Opcode de endereço
0000 78 01
0002 79 02
0004 E8 -
0005 29 -
0006 F5 80
0008 80 00
O código de montagem é usado para desenvolver código eficiente em termos de tamanho e velocidade. O desenvolvimento de código maior em linguagem assembly torna-se difícil, o que pode levar a um custo de desenvolvimento de software mais alto e a portabilidade do código está ausente. Portanto, a fim de superar essa desvantagem, usamos uma linguagem de alto nível, como C.
Sobre C, C ++, Java e C incorporado
Programação C
A linguagem C é uma linguagem orientada por estrutura, desenvolvida por Dennis Ritchie. Ele fornece menos acesso à memória usando o compilador simples e entrega os dados de forma eficiente de acordo com as instruções da máquina. Eles são aplicáveis em uma ampla gama de sistemas embarcados a supercomputadores.
C incorporado
Embedded C é uma extensão da linguagem C, que é usada para desenvolver um sistema embarcado. A sintaxe é semelhante à linguagem C (como a função principal, declaração de funções, declaração de tipos de dados, loops, etc). A principal diferença entre a linguagem C incorporada e a linguagem C padrão é o endereçamento de entrada-saída de hardware, operações de ponto fixo e processamento de espaços de endereço.
O uso de C no sistema embarcado devido às seguintes vantagens
- É pequeno e fácil de aprender, entender e depurar o programa.
- Todos os compiladores C são compatíveis com todos os dispositivos incorporados
- É um processador independente (ou seja, não é específico para um microprocessador ou microcontrolador em particular).
- A linguagem C usa a combinação da linguagem assembly e recursos da linguagem de alto nível
- É bastante eficiente, mais confiável, mais flexível e mais portátil entre diferentes plataformas.
- Os programas desenvolvidos em C são mais fáceis de entender, depurar e manter.
Compare com outra linguagem de alto nível C oferece mais flexibilidade porque é uma linguagem orientada para estruturas relativamente pequena e suporta manipulações de dados bit a bit de baixo nível.
C ++
Linguagem orientada a objetos como C ++ não é opcional para o desenvolvimento de um programa eficiente em ambientes de restrição de pesquisa, como dispositivos embarcados. Funções virtuais e tratamento de exceções do C ++ são alguns recursos específicos que não são eficientes em termos de espaço e velocidade do sistema.
JAVA
Um sistema embarcado pode ser programado na linguagem JAVA, usando a máquina virtual JAVA (JVM) que acessa muitos recursos. Ele encontra uso principalmente em aplicativos de ponta (como telefones celulares) e oferece portabilidade entre sistemas para processar os aplicativos. Não é preferido para dispositivos embarcados menores.
Arquitetura e exemplo de programação C incorporada
A arquitetura de programação C incorporada pode ser entendida com um exemplo de uso de microcontroladores 8051, onde sua função é piscar a lâmpada LED que está conectada à PORT1 do controlador e do compilador usado é Keil C Compiler. A seguir está o código para o piscar do LED.
# include A seguir estão as vantagens do Software Incorporado A seguir estão as desvantagens do Software Incorporado A seguir estão os aplicativos de software incorporado 1). O que é um software integrado? Um software embutido ou programação de sistema embutido é um software de computador, que é usado para controlar dispositivos fornecendo instruções. 2). Quais são os programas usados no software de sistema incorporado? Os programas de software do sistema embarcado são programados em C ou C ++, Phyton e Java Scripts. 3). Qual é a diferença entre sistemas embarcados e o sistema normal? Um sistema embarcado é uma combinação de hardware e software onde é projetado para um propósito específico. Os processos são processados sequencialmente. Considerando que um processador normal é um sistema operacional em tempo real de RTO, ele é necessário quando há necessidade de execução paralela. 4). Quais são os diferentes tipos de sistemas incorporados? Os sistemas embarcados são classificados em duas categorias 5). Principais aplicações de sistema embarcado As principais aplicações de um sistema embarcado são Um sistema embarcado é uma combinação de hardware e software. Em sistemas embarcados, existem diferentes linguagens de programação usadas para diferentes fins, como controlar o desempenho de máquinas ou computadores. Atualmente, o programador de um computador tem várias opções para selecionar essas linguagens, no entanto, existem várias diferenças entre as linguagens de programação. Onde os programas de software embarcados são programados em C ou C ++, Phyton e Java Scripts. Eles são executados no sistema operacional Linux, micro C / OS, QNX, etc. A linguagem C forma a linguagem básica para escrever códigos de software embarcados. Portanto, esta é uma visão geral do Software Incorporado e sua arquitetura explicada usando um programa.
Void delay (int) // declaração da função de atraso
Void main (void ) // Função principal
{
P1 =0x00; // a porta1 está desligada, então o LED está desligado e armazenado em reg51.h
while (1) // loop de infinito
{
P1 =OxFF; //// port1 está ligado, então o LED está ligado
delay (1000); // Atribuir atraso
P1 =0X00; // porta1 desativada
delay (1000);
}
}
Void delay (int d) // atribuição de função de atraso
{
unsigned int i =0; // variáveis atribuídas localmente
for (; d> 0; d-)
{
for (i =250; i> 0; i–);
for (i =248; i> 0; i–);
}
}
Vantagens
Desvantagens
Aplicativos
Perguntas frequentes
Integrado
- As 10 melhores linguagens de programação em nuvem
- O que é unidade de controle:componentes e seu design
- O que é codificação:trabalho, idiomas e seus desafios
- O que é depuração:tipos e técnicas em sistemas incorporados
- O que é uma interrupção:tipos e suas aplicações
- O que é um sistema operacional e seus componentes
- Sistemas incorporados e integração de sistemas
- O que é Kevlar? Um breve guia
- O que é um sistema de ventilação?
- O que é o sistema americano de fabricação?