dimanche, 13 octobre 2013 11:13

choisir la langue de programmation de microcontroleur

Assembler est la langue la plus claire que vous examiner d'utiliser comme vous n'aurez possiblement pas besoin d'acheter d'autres outils à utiliser. Plus que possible que le fabricant fournira un assembleur pour la puce et vous n'aurez pas besoin de livres que toutes les instructions sont dans la fiche technique et vous venez de commencer à coder.
Cette voie de la programmation est très facile,

mais il a des inconvenant :

  • Il est trivial d'écrire des programmes courts.
  • Il devient de plus en plus difficile d'écrire de grands programmes.
  • Assembleur: Problème de modification de la cible

Une autre difficulté, c'est quand vous passez d'un microcontrôleur à un autre (même dans la même famille d'appareils) les instructions assembleur peuvent être modifiées par exemple plus d'instructions pour améliorer les performances du microcontrôleur. Ainsi, vous aurez à apprendre un jeu d'instructions totalement différente lors du déplacement soit pour un nouveau microcontrôleur cible ou de passer à un autre appareil dans la même famille Code dire la réutilisation n'est pas possible, sauf si vous restez avec un microcontrôleur (ou périphériques avec un interne similaire l'architecture).
Un autre problème avec l'assembleur est que pour faire même la tâche la plus triviale que vous avez à penser à tous les aspects du code et toutes les implications sur les registres et enregistrer des drapeaux.

  • Même en faisant un micro contrôleur effectuer la tâche la plus triviale est par exemple difficile de faire une boucle en assembleur vous devez penser à ce qui vous enregistrer pour utiliser et quelles instructions tout en pensant à la façon dont ces registres doivent pas interagir avec le registre de la boucle / autres registres, etc

Avantages:

  • Il semble être la meilleure option, car il donne le code le plus rapide.
  • Il semble être la meilleure option, car elle donne le plus petit code.
  • Assembleur / compilateur compromis :

C'est le compromis; d'écrire le code plus optimisé plus rapide ou pour obtenir la tâche résolu plus rapidement.

  • Assembleur: Code rapide & petit :

Il ne fait aucun doute que l'assembleur donne le code le plus rapide et le plus optimisé (votre cerveau est mieux à l'optimisation de n'importe quel compilateur!) Mais assembleur est difficile - en général, vous allez passer dix fois plus longtemps assembleur d'écriture que vous auriez écrit dans un langage de haut niveau .

Langage de haut niveau

Langages de haut niveau sont conçus pour être utilisés par l'opérateur humain ou le programmateur. Ils sont considérés comme «plus proche de l'homme." En d'autres termes, leur style de programmation et le contexte est plus facile à apprendre et à mettre en œuvre, et tout le code se concentre généralement sur ​​le programme spécifique doit être créé. langage de haut niveau ne nécessite pas de faire face aux contraintes matérielles dans une large mesure lors de l'élaboration d'un programme. Toutefois, chaque programme écrit dans un langage de haut niveau doit être interprétée en langage machine avant d'être exécuté par l'ordinateur. BASIC, C / C + + et Java sont des exemples populaires de langages de haut niveau.

microcontroleur avr

avantages :

Facile à comprendre.

L'aspect le plus utile d'un langage de haut niveau (HLL), c'est que la langue est écrit dans un formulaire, vous pouvez facilement comprendre - il n'y a pas de commande assembleur cryptiques que vous avez à retenir et la plupart des commandes sont composées de plusieurs instructions en code machine - économie vous codage effort (il ya souvent construits dans des bibliothèques de code ex pilote LCD, Serial Port Driver, pilote I2C etc

Ainsi, le HLL rend facile d'écrire du code comme il génère l'assembleur correct pour le microcontrôleur cible.

Il ya réellement trois langage de programmation haut niveau ,BASIC, C et Pascal - ce sont les langues les plus populaires et pour les microcontrôleurs populaires, il y aura un compilateur HLL pour chacun. Je vais juste fournir les avantages et les inconvénients de chacune

Avantages de base

Très facile à apprendre et à utiliser.
Un compilateur BASIC va produire du code qui s'exécute rapidement un compilateur C.
Beaucoup de fonctions intégrées (selon le compilateur).
Très populaire - grande base d'utilisateurs avec de nombreux exemples de programmes.
Inconvénients de langage basic

  • Langage non standard.
  • Si vous utilisez un HLL interprété va courir très lentement.
  • Remarque: Parce que la langue n'est pas normalisée, il sera difficile de se déplacer code pour un nouveau type de cible de processeur.

Pascal Avantages

  • Facile à apprendre et à utiliser.
  • Un compilateur Pascal va produire du code qui s'exécute rapidement un compilateur C.
  • Beaucoup de fonctions intégrées (selon le compilateur).

Inconvénients Pascal

  • Pas aussi populaire que C - donc pas autant de compilateurs.
  • Un peu verbeux - il a été initialement conçu comme langue d'enseignement.
  • Pas aussi souple que C.

C Avantages

  • Langage compilé - fonctionne toujours rapide.
  • Langage normalisé (ANSI) - plus faciles à porter différents compilateurs / dispositifs cibles.
  • Beaucoup de compilateurs disponibles.
  • Beaucoup de fonctions intégrées (selon le compilateur).
  • Très populaire - grande base d'utilisateurs avec de nombreux exemples de programmes.
  • Utilisé dans de nombreuses industries différentes.
  • Utilisable au niveau du matériel ainsi que les niveaux d'abstraction plus élevé (bien que C + + est mieux pour les modèles de programmation très abstrait).

C Inconvénients

  • Difficile à apprendre au début.
  • Des moyens de contrôle de type fort de passer du temps agréable le compilateur (bien que cela vous protège de faire des erreurs).

 

Lu 10586 fois

1 Commentaire

  • Lien vers le commentaire BAIT vendredi, 08 avril 2016 12:18 Posté par BAIT

    BONJOUR
    Je souhaite faire un programmateur des microcontrôleurs de type pic,j'ai fait le schéma électronique en PCB,mais je ne l'ai pas encore imprimer,car il me manque le programme à implémenter pour le microcontrôleur présent dans mon circuit à fin qu’il puisse programmer d'autres microcontrôleurs.
    en attente de votre réponse je vous prie d’agréer toutes mes salutations.

Laissez un commentaire

Assurez-vous d'entrer toutes les informations requises, indiquées par un astérisque (*). Le code HTML n'est pas autorisé.

Sitemap                 Inscrivez-vous               Conditions générales               Contact