Je regarde un panneau et je vois des appareils de montage en surface, des résistances, des condensateurs et des LED. Est-ce à dire que parce que l'une de ces cartes est une carte vidéo, toutes les cartes avec résistances et condensateurs et plusieurs couches et traces sont toutes des cartes vidéo? Nan.
Voici un autre exemple, cette page Web utilise l'alphabet anglais et les mots anglais. Le site Web de New York Times fait-il donc de ce site Web le New York Times? Non, ils partagent simplement le même alphabet et la même langue mais sont par ailleurs complètement différents.
C est un langage de programmation à usage général qui résume l'ensemble d'instructions ci-dessous. Peut être utilisé pour le métal nu, peut être utilisé pour créer des systèmes d'exploitation différents et incompatibles les uns avec les autres, peut être utilisé pour créer des jeux vidéo, etc. Tous utilisent le même langage C de base, certaines fonctions et constructions C courantes ainsi que les appels de fonction qu'ils ont créés et qui sont spécifiques à l'application cible. Pour chacune de ces plateformes que vous mentionnez ou pour d'autres, il peut y avoir un ensemble de fonctions que quelqu'un a choisi de créer. Tout comme une poignée de personnes jusqu'à présent, y compris moi-même, vous ont donné la même réponse mais l'ont écrite d'une manière différente. Prenez 100 programmeurs et isolez-les les uns des autres et donnez-leur une tâche de programmation pour résoudre un problème particulier, sans restreindre complètement leur liberté de programmation, et vous obtiendrez de 1 à 100 solutions différentes, incompatibles les unes avec les autres, probablement pas 1 mais plusieurs thèmes communs en fonction de leur formation et de leur expérience, puis des noms de variables et des noms de fonctions qui, en tant qu'ensemble, sont probablement uniques à chaque individu. Prenez les mêmes planches dont vous parlez déjà et vous constaterez que j'ai certainement mon propre code C qui est incompatible (avec les fonctions Arduino) pour fonctionner dessus, comme avec beaucoup d'autres, ainsi qu'incompatible avec d'autres plates-formes. C'est la beauté de la programmation embarquée bare metal, vous n'êtes pas contraint en aucune façon, vous n'avez pas à vivre dans les appels de bibliothèque standard des systèmes d'exploitation ou l'ensemble de règles limité, etc., une liberté totale. probablement pas 1 mais plusieurs thèmes communs en fonction de leur formation et de leur expérience, puis des noms de variables et des noms de fonctions qui, en tant qu'ensemble, sont probablement uniques à chaque individu. Prenez les mêmes planches dont vous parlez déjà et vous constaterez que j'ai certainement mon propre code C qui est incompatible (avec les fonctions Arduino) pour fonctionner dessus, comme avec beaucoup d'autres, ainsi qu'incompatible avec d'autres plates-formes. C'est la beauté de la programmation embarquée bare metal, vous n'êtes pas contraint en aucune façon, vous n'avez pas à vivre dans les appels de bibliothèque standard des systèmes d'exploitation ou l'ensemble de règles limité, etc., une liberté totale. probablement pas 1 mais plusieurs thèmes communs en fonction de leur formation et de leur expérience, puis des noms de variables et des noms de fonctions qui, en tant qu'ensemble, sont probablement uniques à chaque individu. Prenez les mêmes planches dont vous parlez déjà et vous constaterez que j'ai certainement mon propre code C qui est incompatible (avec les fonctions Arduino) pour fonctionner dessus, comme avec beaucoup d'autres, ainsi qu'incompatible avec d'autres plates-formes. C'est la beauté de la programmation embarquée bare metal, vous n'êtes pas contraint en aucune façon, vous n'avez pas à vivre dans les appels de bibliothèque standard des systèmes d'exploitation ou l'ensemble de règles limité, etc., une liberté totale. Prenez les mêmes planches dont vous parlez déjà et vous constaterez que j'ai certainement mon propre code C qui est incompatible (avec les fonctions Arduino) pour fonctionner dessus, comme avec beaucoup d'autres, ainsi qu'incompatible avec d'autres plates-formes. C'est la beauté de la programmation embarquée bare metal, vous n'êtes pas contraint en aucune façon, vous n'avez pas à vivre dans les appels de bibliothèque standard des systèmes d'exploitation ou l'ensemble de règles limité, etc., une liberté totale. Prenez les mêmes planches dont vous parlez déjà et vous constaterez que j'ai certainement mon propre code C qui est incompatible (avec les fonctions Arduino) pour fonctionner dessus, comme avec beaucoup d'autres, ainsi qu'incompatible avec d'autres plates-formes. C'est la beauté de la programmation embarquée bare metal, vous n'êtes pas contraint en aucune façon, vous n'avez pas à vivre dans les appels de bibliothèque standard des systèmes d'exploitation ou l'ensemble de règles limité, etc., une liberté totale.
Vous pouvez choisir, et un pourcentage élevé de gens le font, de jouer dans le bac à sable de quelqu'un d'autre plutôt que de construire le vôtre, ce qui signifie utiliser l'arduino gui et leurs bibliothèques C.
Vous pouvez prendre le même PC et exécuter différentes versions de Windows it, linux, bsd et une liste de blanchisserie d'autres systèmes d'exploitation qui à un certain niveau utilisent C mais dont les appels de fonction sont incompatibles entre eux. Le même matériel et le C incompatible, qui s'étend à différents matériels, même langage, peuvent avoir du code compatible ou incompatible. La langue ne les rend en aucun cas compatibles.
C est utilisé sur ces plates-formes embarquées car c'est la pratique courante, aucun autre langage ne peut remplacer C pour cela. La première étape pour un nouveau processeur est l'assemblage bien sûr, puis presque toujours le C suivant, puis peut-être d'autres s'il est suffisamment puissant pour exécuter un système d'exploitation (linux, bsd, etc.). C a été inventé et espérait résoudre le problème de portage de code sur toutes les plates-formes, et tant que vous avez un système d'exploitation, c'est le cas d'un compilateur compatible C qui fait du code qui FONCTIONNE SUR UN SYSTÈME D'EXPLOITATION, fera le fichier C standard opérations et printf et autres choses. Mais le bare metal est une autre histoire, il n'y a pas de système d'exploitation, il n'y a souvent pas de notion de système de fichiers ni d'affichage, mais selon la pratique courante, il existe probablement un compilateur C qui, à sa racine, transforme C en langage d'assemblage cible spécifique.