Qu'est-ce que la programmation système intégrée et ses langages

Essayez Notre Instrument Pour Éliminer Les Problèmes





Un système est un agencement de plusieurs unités, assemblées ensemble pour fonctionner selon les instructions données. Un système embarqué est une combinaison de matériel et de logiciel, qui effectue une tâche particulière dans la période spécifiée (ce qui signifie qu'il ne doit effectuer qu'une seule tâche spécifique comme une machine à laver). Le principal avantage de l'utilisation d'un système embarqué dans une application est qu'il permet de minimiser la taille et le coût et améliore également la fiabilité et l'efficacité de la tâche. Cet article présente les langages logiciels embarqués, le système embarqué programmation , et leurs fonctions.

Composants des systèmes embarqués

Voici les composants des systèmes embarqués




  • Matériel embarqué: Le microcontrôleur est le cœur du système embarqué, où plusieurs périphériques sont interfacés avec du matériel embarqué à des fins de communication.
  • RTO intégrés: Un système d'exploitation temps réel intégré est utilisé pour effectuer toutes les opérations complexes (ar.
  • Pilotes de périphérique: Il agit comme un pont entre les systèmes d'exploitation et les périphériques.
  • Piles de communication: Il est utilisé pour communiquer avec des périphériques externes.
  • Applications embarquées: Il exécute la fonction prédéfinie du périphérique embarqué.
Composants système intégrés

Composants système intégrés

Logiciels embarqués

Un logiciel embarqué ou une programmation système embarquée est un logiciel informatique, qui est utilisé pour contrôler des dispositifs en fournissant un ensemble d'instructions. Il est également nommé comme firmware, divers appareils avec diverses fonctionnalités peuvent être programmés à l'aide de logiciels embarqués, en maintenant les contraintes de conception (comme les contraintes de temps de réponse, les délais stricts et les données traitées) et en stockant les données finales dans Mémoire (Ram / Rom).



Le logiciel est contrôlé ou lancé par une interface machine. Le logiciel embarqué est intégré à tous les appareils électroniques comme les voitures, les téléphones, les robots, systèmes de sécurité , etc qui est simple à exécuter sur un 8 bits microcontrôleur en utilisant la mémoire jusqu'à quelques Ko. Il aide à traiter des opérations complexes et détermine le cadre de calcul précis.

Langages de programmation système intégrés

Le logiciel intégré utilise un système d'exploitation, qui est un système d'exploitation en temps réel qui exécute plusieurs tâches à la fois. Les programmes intégrés sont programmés à l'aide de C / C ++ , Phyton et Java Scripts et sont traités sur des systèmes d'exploitation tels que OS Linux , VxWorks , Fusion RTOS, Nucleus RTOS, micro C / OS, OSE, etc. La sélection du langage de programmation joue un rôle essentiel dans le développement de logiciels embarqués, qui repose sur certains facteurs comme indiqué ci-dessous,

  • Taille : La quantité de mémoire requise par un programme joue un rôle important, car les processeurs intégrés (microcontrôleurs) ont une quantité spécifique de ROM (mémoire en lecture seule) en fonction de leur application.
  • La vitesse : La vitesse d'exécution du programme doit être rapide
  • Portabilité: Différents processeurs peuvent être compilés à l'aide d'un programme.
  • La mise en œuvre est difficile
  • La maintenance est difficile.

Programmation d'un système embarqué en langage d'assemblage

Programmation d'un système embarqué en langage d'assemblage (entrée) et la conversion en langage au niveau de la machine (sortie) à l'aide d'un assembleur peut être expliqué à l'aide de l'exemple suivant, où nous effectuons l'addition de deux valeurs numériques à l'aide de deux registres sperate et stockons le résultat dans un registre de sortie.


Saisir

ICI: MOV R0, # 01H

MOV # 1, # 02H

MOV A, R0

AJOUTER A, R1

MOV P0, A

SIMP ICI

Production

Opérande de l'opcode d'adresse

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

Le code d'assemblage est utilisé pour développer un code efficace en termes de taille et de vitesse. Le développement de code plus volumineux en langage assembleur devient difficile, ce qui peut entraîner des coûts de développement logiciel plus élevés et la portabilité du code est absente. Par conséquent, pour surmonter cet inconvénient, nous utilisons un langage de haut niveau tel que intégré C .

À propos de C, C ++, Java et C embarqué

Programmation C

Le langage C est un langage orienté structure, développé par Dennis Ritchie. Il fournit moins d'accès à la mémoire en utilisant le compilateur simple et fournit les données efficacement conformément aux instructions de la machine. Ils sont applicables dans de larges gammes, des systèmes embarqués aux supercalculateurs.

Intégré C

Embedded C est une extension du langage C, qui est utilisé pour développer un système embarqué. La syntaxe est similaire au langage C (comme la fonction principale, la déclaration des fonctions, la déclaration des types de données, les boucles, etc.). La principale différence entre le langage C intégré et le langage C standard réside dans l'adressage d'entrée-sortie du matériel, les opérations en virgule fixe et le traitement des espaces d'adressage.

L'utilisation de C dans le système embarqué en raison des avantages suivants

  • Il est petit et facile à apprendre, à comprendre et à déboguer le programme.
  • Tous les compilateurs C sont compatibles avec tous les appareils embarqués
  • Il s'agit d'un processeur indépendant (c'est-à-dire qu'il n'est pas spécifique à un microprocesseur ou à un microcontrôleur particulier).
  • Le langage C utilise la combinaison du langage d'assemblage et des fonctionnalités du langage de haut niveau
  • Il est assez efficace, plus fiable, plus flexible, plus portable entre différentes plates-formes.
  • Les programmes développés en C sont plus faciles à comprendre, à déboguer et à maintenir.

Comparé à d'autres langages de haut niveau, C offre plus de flexibilité car il s'agit d'un langage orienté structure relativement petit et prend en charge le bas niveau bit à bit manipulations de données .

C ++

Un langage orienté objet comme C ++ n'est pas facultatif pour développer un programme efficace dans des environnements de contraintes de recherche tels que les périphériques embarqués. Les fonctions virtuelles et la gestion des exceptions de C ++ sont des fonctionnalités spécifiques qui ne sont pas efficaces en termes d'espace et de vitesse du système.

JAVA

Un système embarqué peut être programmé en langage JAVA, en utilisant une machine virtuelle JAVA (JVM) qui accède à de nombreuses ressources. Il trouve principalement une utilisation dans des applications haut de gamme (comme les téléphones mobiles) et offre une portabilité entre les systèmes pour traiter les applications. Il n'est pas recommandé pour les petits périphériques intégrés.

Architecture de programmation C intégrée et exemple

L'architecture de programmation C embarquée peut être comprise avec un exemple d'utilisation 8051 micro-contrôleurs , où sa fonction est de faire clignoter l'ampoule LED qui est connectée au PORT1 du contrôleur et le compilateur utilisé est Keil C Compiler. Voici le code pour le LED clignoter.

#include // directive du pré-processeur
Void delay (int) // déclaration de la fonction de retard
Void main (void) // Fonction principale
{
P1 = 0x00 // port1 est éteint donc la LED est éteinte et stockée dans reg51.h
while (1) // boucle d'infini
{
P1 = OxFF //// port1 est allumé donc la LED est allumée
delay (1000) // affectation du délai
P1 = 0X00 // port1 désactivé
retard (1000)
}
}
Void delay (int d) // affectation de la fonction de retard
{
unsigned int i = 0 // variables affectées localement
pour (d> 0 d-)
{
pour (i = 250 i> 0i–)
pour (i = 248 i> 0i–)
}
}

Avantages

Voici les avantages du logiciel intégré

  • Le chargement des données est plus rapide
  • Le coût est faible
  • Utilise moins de ressources.

Désavantages

Voici les inconvénients des logiciels intégrés

  • La mise à niveau est complexe
  • Chaque fois qu'une réinitialisation est nécessaire en cas de problème
  • L'évolutivité pour les petites valeurs est difficile.

Applications

Voici les applications du logiciel intégré

  • Bancaire
  • Automobiles
  • Appareils électroménagers
  • Auto
  • Missiles, etc.

FAQ

1). Qu'est-ce qu'un logiciel embarqué?

Un logiciel embarqué ou une programmation système embarquée est un logiciel informatique, qui est utilisé pour contrôler des dispositifs en fournissant des instructions.

2). Quels sont les programmes utilisés dans le logiciel système embarqué?

Les programmes logiciels du système embarqué sont programmés en scripts C ou C ++, Phyton et Java.

3). Quelle est la différence entre les systèmes embarqués et le système normal?

Un système embarqué est une combinaison de matériel et de logiciel où il est conçu dans un but précis. Les processus sont traités séquentiellement. Alors qu’un processeur normal est un système d’exploitation en temps réel d’un RTO, il est requis lorsque l’exécution en parallèle est nécessaire.

4). Quels sont les différents types de systèmes embarqués?

Les systèmes embarqués sont classés en deux catégories

  • Sur la base des performances et des exigences fonctionnelles, ils sont en outre classés en temps réel, autonomes, en réseau, mobiles.
  • Sur la base des performances du microcontrôleur, ils sont en outre classés comme petite, moyenne et sophistiquée.

5). Principales applications du système embarqué

Les principales applications d'un système embarqué sont

  • Machine à laver
  • Caméras digitales
  • Lecteur de musique, etc.

Un système embarqué est une combinaison de matériel et de logiciel. Où le programmes logiciels embarqués sont programmés en scripts C ou C ++, Phyton et Java. Ils fonctionnent sur Linux OS, micro C / OS, QNX, etc. Le langage C constitue le langage de base pour l'écriture de codes logiciels embarqués. Il s'agit donc d'une vue d'ensemble d'un logiciel embarqué et de son architecture expliquée à l'aide d'un programme.