Recommandations pour la formation au développement embarqué + temps réel [fermé]

StackOverflow https://stackoverflow.com/questions/412444

  •  03-07-2019
  •  | 
  •  

Question

Je suis actuellement en train d'étudier pour une carrière dans l'ingénierie en temps réel embarqué. Mais trouvez un peu difficile de trouver du bon matériel de formation. Surtout parce que vous ne pouvez pas expérimenter le développement intégré comme avec le développement d'applications de bureau.

Existe-t-il des livres et / ou des kits utiles pour la formation de base? Des recommandations pour un RTOS à étudier?

Existe-t-il des recommandations lors de l'utilisation d'un RTOS?

Était-ce utile?

La solution

C'est vraiment un sujet compliqué, il y a tellement de choix et de compromis.

En ce qui concerne le matériel, je choisirais un microcontrôleur bas de gamme, car les choses ont tendance à devenir plus faciles quand elles deviennent petites et plus elles sont éloignées du bureau, plus vous en apprendrez plus sur la programmation intégrée.

Puisque vous êtes au Japon, il est probablement préférable de vérifier localement quel contrôleur est populaire, afin d'obtenir un bon soutien de la communauté et d'acheter facilement des pièces.

Ici en Allemagne, c’est AVR ATMEGA, et je pense que c’est un bon choix. Il bénéficie du meilleur support des outils GNU, il est disponible dans les packages DIP et peut fonctionner à partir de son oscillateur interne, de sorte qu’il puisse être exécuté facilement sur une carte d’affichage. Le plus gros obstacle était que j'avais besoin d'un programmeur ISP. Il existe un bon tutoriel en allemand.

J'ai aussi un R8C de Renesas, qui pourrait être plus populaire au Japon. Il est plus difficile de faire fonctionner les outils GNU, je devais les construire moi-même à partir des sources. Pour MS-Windows, il existe la suite gratuite IAR Kickstart avec une taille de code limitée à 4 Ko. Il peut être programmé avec une interface série (mais avec des niveaux de durée de vie), un module FTDI USB-to-Serial pour cela.

Pour ce qui est du RTOS, jetez un coup d’œil à OSEK, il existe plusieurs implémentations libres. Il peut être utilisé sur de très petits contrôleurs.

Vous pouvez également écrire vous-même une RTOS de base, ce n’est pas si difficile et vous apprenez le plus.

Autres conseils

Vous n'avez pas besoin d'apprendre un RTOS spécifique: il en existe des zillions de segmentés de marchés et même si vous connaissez le segment exact sur lequel vous allez travailler, de nombreux systèmes d'exploitation fonctionnent toujours dans le même segment. < br> L’important est de comprendre les concepts de base des systèmes d’exploitation et d’avoir une solide expérience en C Lorsque nous recrutons (nous sommes une maison de développement intégrée), nous n’avons pas besoin de connaissances spécifiques en programmation intégrée ni en systèmes d’exploitation spécifiques. Nous recherchons des personnes intelligentes qui écrivent un code C parfait et capable d’apprendre.

Il n'y a pas d'alternative pour jouer avec le matériel & amp; logiciel avec vos propres mains. Heureusement, c'est facile à réaliser. Des cartes de développement simples pour la puce AVR peuvent être achetées pour quelques dizaines de $$ en ligne (comme STK500 , ou Arduino ) et l'ensemble de leur chaîne d'outils logiciels est ouvert et téléchargeable.

En ce qui concerne le système d'exploitation - démarrez sans système d'exploitation! Beaucoup de code intégré s'exécute sans système d'exploitation et c'est également le meilleur moyen de commencer à programmer. En expérimentant diverses techniques d’écriture de code non OS, vous apprendrez à comprendre quand et pourquoi vous avez besoin d’un OS et comment l’utiliser au mieux.

Je recommanderais Quantum Leaps Platform et Quantum Framework. Il s'agit d'un environnement de machine à états sophistiqué qui requiert une empreinte extrêmement faible. Il peut également fonctionner sous Windows (pour l’apprentissage).

site Web de Quantum Leaps

Vous devez d’abord comprendre ce que vous voulez apprendre sur les systèmes embarqués.

*) spécificités matérielles *) système opérateur *) programmation d'application *) conseil élever *) petit micro contrôleur *) Linux

... Et beaucoup plus de choix ...

Je déciderais de mener à bien un certain projet intégré et d’acquérir / d’apprendre les technologies associées.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top