Che cos'è la programmazione del sistema integrato e i suoi linguaggi

Prova Il Nostro Strumento Per Eliminare I Problemi





Un sistema è una disposizione di più unità, assemblate insieme per funzionare secondo le istruzioni fornite. Un sistema integrato è una combinazione di hardware e software, che esegue una particolare attività entro il periodo specificato (il che significa che dovrebbe eseguire solo un'attività specifica come una lavatrice). Il vantaggio principale dell'utilizzo di un sistema integrato in un'applicazione è che può ridurre al minimo le dimensioni e il costo e migliora anche l'affidabilità e l'efficienza dell'attività. Panoramica di questo articolo sui linguaggi del software incorporato, sistema incorporato programmazione e le loro funzioni.

Componenti di sistemi integrati

I seguenti sono i componenti dei sistemi embedded




  • Hardware integrato: Il microcontrollore è il cuore del sistema embedded, in cui più periferiche sono interfacciate all'hardware embedded per scopi di comunicazione.
  • RTO incorporati: Un sistema operativo in tempo reale incorporato viene utilizzato per eseguire tutte le operazioni complesse (ar.
  • I driver di periferica: Funge da ponte tra i sistemi operativi e le periferiche.
  • Stack di comunicazione: Viene utilizzato per comunicare con dispositivi esterni.
  • Applicazioni integrate: Esegue la funzione predefinita del dispositivo incorporato.
Componenti di sistema incorporati

Componenti di sistema incorporati

Software incorporato

Un software incorporato o una programmazione di sistema integrato è un software per computer, utilizzato per controllare i dispositivi fornendo una serie di istruzioni. È anche chiamato come firmware, vari dispositivi con varie funzionalità possono essere programmati utilizzando software integrato, mantenendo i vincoli di progettazione (come vincoli di tempo di risposta, scadenze rigorose e dati elaborati) e archiviando i dati finali in memoria (Ram / Rom).



Il software è controllato o avviato da un'interfaccia macchina. Il software integrato è integrato in tutta l'elettronica come automobili, telefoni, robot, sistemi di sicurezza , ecc, che è semplice da eseguire su un 8 bit microcontrollore utilizzando memoria fino a pochi KB. Aiuta nell'elaborazione di operazioni complesse e determina il quadro di calcolo accurato.

Linguaggi di programmazione di sistema integrati

Il software incorporato utilizza un sistema operativo, che è un sistema operativo in tempo reale che esegue più attività contemporaneamente. I programmi incorporati sono programmati utilizzando in C / C ++ , Phyton e Java Scripts e vengono elaborati su sistemi operativi come Sistema operativo Linux , VxWorks , Fusion RTOS, Nucleus RTOS, micro C / OS, OSE, ecc. La selezione del linguaggio di programmazione gioca un ruolo vitale nello sviluppo di software embedded, che si basa su alcuni fattori come mostrato di seguito,

  • Taglia : La quantità di memoria richiesta da un programma gioca un ruolo importante, poiché i processori incorporati (microcontrollori) hanno una quantità specifica di ROM (Read Only Memory) basata sulla sua applicazione.
  • Velocità : La velocità di esecuzione del programma deve essere elevata
  • Portabilità: Diversi processori possono essere compilati utilizzando un programma.
  • L'attuazione è difficile
  • La manutenzione è difficile.

Programmazione di un sistema integrato in linguaggio assembly

Programmazione di un sistema embedded in linguaggio assembly (input) e convertendo in linguaggio a livello di macchina (output) utilizzando un assemblatore può essere spiegato utilizzando il seguente esempio, dove eseguiamo l'aggiunta di due numeri utilizzando due registri separati e memorizziamo il risultato in un registro di output.


Ingresso

QUI: MOV R0, # 01H

MOV # 1, # 02H

MOV A, R0

AGGIUNGI A, R1

MOV P0, A

SIMP QUI

Produzione

Indirizzo Opcode Operand

0000 78 01
0002 79 02
0004 E8 -
0005 29 -
0006 F5 80
0008 80 00

Il codice assembly viene utilizzato per sviluppare codice efficiente in termini di dimensioni e velocità. Lo sviluppo di codice più grande in linguaggio assembly diventa difficile, il che può portare a costi di sviluppo software più elevati e la portabilità del codice è assente. Quindi per superare questo svantaggio utilizziamo un linguaggio di alto livello come incorporato C .

Informazioni su C, C ++, Java e Embedded C

Programmazione C.

Il linguaggio C è un linguaggio orientato alla struttura, sviluppato da Dennis Ritchie. Fornisce meno accesso alla memoria utilizzando il semplice compilatore e fornisce i dati in modo efficiente secondo le istruzioni della macchina. Sono applicabili in un'ampia gamma di sistemi embedded e supercomputer.

C incorporato

Embedded C è un'estensione del linguaggio C, utilizzato per lo sviluppo di un sistema embedded. La sintassi è simile al linguaggio C (come la funzione principale, la dichiarazione delle funzioni, la dichiarazione dei tipi di dati, i cicli, ecc.). La principale differenza tra il linguaggio C incorporato e il linguaggio C standard è l'indirizzamento input-output dell'hardware, le operazioni a virgola fissa e gli spazi degli indirizzi di elaborazione.

L'uso di C nel sistema embedded a causa dei seguenti vantaggi

  • È piccolo e facile da imparare, capire ed eseguire il debug del programma.
  • Tutti i compilatori C sono compatibili con tutti i dispositivi embedded
  • È un processore indipendente (cioè, non è specifico per un particolare microprocessore o microcontrollore).
  • Il linguaggio C utilizza la combinazione del linguaggio assembly e delle caratteristiche del linguaggio di alto livello
  • È abbastanza efficiente, più affidabile, più flessibile, più portabile tra piattaforme diverse.
  • I programmi sviluppati in C sono più facili da capire, eseguire il debug e mantenere.

Confronta con altri linguaggi di alto livello C offre maggiore flessibilità perché è un linguaggio orientato alla struttura relativamente piccolo e supporta bit per bit di basso livello manipolazioni dei dati .

C ++

Il linguaggio orientato agli oggetti come il C ++ non è facoltativo per lo sviluppo di un programma efficiente in ambienti con vincoli di ricerca come i dispositivi embedded. Le funzioni virtuali e la gestione delle eccezioni di C ++ sono alcune caratteristiche specifiche che non sono efficienti in termini di spazio e velocità del sistema.

GIAVA

Un sistema embedded può essere programmato in linguaggio JAVA, utilizzando JAVA virtual machine (JVM) che accede a molte risorse. Trova principalmente l'utilizzo in applicazioni di fascia alta (come i telefoni cellulari) e offre la portabilità tra i sistemi per elaborare le applicazioni. Non è preferibile per dispositivi embedded più piccoli.

Architettura ed esempi di programmazione C incorporati

L'architettura di programmazione C incorporata può essere compresa con un esempio di utilizzo 8051 microcontrollori , dove la sua funzione è quella di far lampeggiare la lampadina LED che è collegata alla PORT1 del controller e il compilatore utilizzato è Keil C Compiler. Di seguito è riportato il codice per GUIDATO sbattere le palpebre.

#include // direttiva del pre-processore
Void delay (int) // dichiarazione della funzione delay
Void main (void) // Funzione principale
{
P1 = 0x00 // port1 è spento, quindi il LED è spento e memorizzato in reg51.h
while (1) // ciclo dell'infinito
{
P1 = OxFF //// port1 è acceso quindi il LED è acceso
delay (1000) // assegnazione del ritardo
P1 = 0X00 // port1 off
ritardo (1000)
}
}
Void delay (int d) // assegnazione della funzione di ritardo
{
unsigned int i = 0 // variabili assegnate localmente
per (d> 0 d-)
{
per (i = 250 i> 0i–)
per (i = 248 i> 0i–)
}
}

Vantaggi

I seguenti sono i vantaggi del software integrato

  • Il caricamento dei dati è più veloce
  • Il costo è basso
  • Utilizza meno risorse.

Svantaggi

I seguenti sono gli svantaggi del software incorporato

  • L'aggiornamento è complesso
  • Ogni volta che si ripristina è necessario se si verificano problemi
  • La scalabilità per valori piccoli è difficile.

Applicazioni

Le seguenti sono le applicazioni del software integrato

  • Bancario
  • Automobili
  • Elettrodomestici
  • Macchina
  • Missili, ecc.

Domande frequenti

1). Cos'è un software incorporato?

Un software incorporato o una programmazione di sistema integrato è un software per computer, utilizzato per controllare i dispositivi fornendo istruzioni.

2). Quali sono i programmi utilizzati nel software di sistema integrato?

I programmi software del sistema integrato sono programmati in C o C ++, Phyton e Java Scripts.

3). Qual è la differenza tra i sistemi embedded e il sistema normale?

Un sistema integrato è una combinazione di hardware e software in cui è progettato per uno scopo specifico. I processi vengono elaborati in sequenza. Mentre un normale processore è il sistema operativo in tempo reale di un RTO, è necessario laddove è necessaria l'esecuzione parallela.

4). Quali sono i diversi tipi di sistemi embedded?

I sistemi embedded sono classificati in due categorie

  • In base alle prestazioni e ai requisiti funzionali, vengono ulteriormente classificati come in tempo reale, autonomi, collegati in rete, mobili.
  • In base alle prestazioni del microcontrollore, sono ulteriormente classificati come scala piccola, media e sofisticata

5). Principali applicazioni del sistema embedded

Le principali applicazioni di un sistema embedded sono

  • Lavatrice
  • Fotocamere digitali
  • Lettore musicale, ecc.

Un sistema integrato è una combinazione di hardware e software. Dove il programmi software incorporati sono programmati in C o C ++, Phyton e Java Scripts. Funzionano su Linux OS, micro C / OS, QNX, ecc. Il linguaggio C costituisce il linguaggio di base per la scrittura di codici software incorporati. Quindi questa è una panoramica di un software incorporato e della sua architettura spiegata utilizzando un programma.