Programmer 68k/microcontrolleurs en C

Fermé
MrR0B0T - Modifié par MrR0B0T le 5/03/2017 à 18:58
MrR0B0T Messages postés 3 Date d'inscription dimanche 5 mars 2017 Statut Membre Dernière intervention 6 mars 2017 - 6 mars 2017 à 19:46
Bonjour,


Pour un projet avec un motorola 68000 je cherche un moyen de coder directement en C...
En effet je n'ai jamais programmé de microcontrôlleurs ou d'autres processeurs en C, j'aurais donc voulu savoir si il existait des librairies ou des fonctions (standards ?) pour la programmation orienté "materiel embraqué, bas niveau" (j'entends par là la gestion direct du microprocesseur/contrôlleurs (bus de donnés et d'adresse/ports, interruptions,...)... Donc voila merci de m'éclairer sur ce domaines, ou alors une façon d'introduire de l'ASM68k dans du C (en créant un fichier de librairie ou un truc du genre...)
Voila j'espère avoir été assez clair
merci de votre solidarité
Cdt
Antoine
A voir également:

2 réponses

Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 101
5 mars 2017 à 21:02
Bonjour,

Les cartes embarquées sont généralement fournies avec une bibliothèque C. Il faut partir de la référence de la carte à base de 68000 que tu souhaites utiliser. Il faut prendre la librairie qui est compatible avec ta chaîne de compilation croisée, sinon il faut à minima un boot starter (c'est lui qui appellera ta fonction main()).
0
MrR0B0T Messages postés 3 Date d'inscription dimanche 5 mars 2017 Statut Membre Dernière intervention 6 mars 2017
Modifié par MrR0B0T le 5/03/2017 à 21:12
Salut,
Merci de ta réponse très complète, je vais me renseigner la dessus mais sinon ce n'est pas une carte que j'utilise mais un 68k 'nu' afin de justement pouvoir apprendre le fonctionnement d'un processeur et les bases le l'électronique programmée... Ainsi je cherche des moyens de très bas niveau, sans pour autant tout faire intégralement en assembleur (projet trop conséquent)...
De plus, est ce que selon vous ce serait possible de compiler du C directement sur mon processeur, autrement dis coder un mini compilateur embarqué...
Merci beaucoup

[EDIT] je ne trouve rien à propos de boot starter, je suppose que c'est en quelques sortes un BIOS ?
0
Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 101
6 mars 2017 à 15:02
C'est en effet le strict minimum. En partant du processeur seul, il va falloir y avoir quelques nécessités :
  • comment rendre accessible le code au processeur (en RAM, en ROM, ...) Comment et où le télécharger.
  • Le compilateur devra générer directement une image exécutable, ou un format de fichier exécutable par exemple le format ELF.
  • Il va falloir prendre en charge le démarrage avec les 'trap' minimaux à écrire en assembleur
  • après avoir configuré les interruptions, les piles, il va falloir préparer le démarrage du code C en s'occupant de l'initialisation des variables globales (les données sont dans les différentes sections de l'exécutable C.)
  • on termine par un jump à l'adresse de la fonction main() de l'exécutable C
  • Toutes les parties précédentes dépendent du hardware, c'est coton à coder.

Et je ne parle pas de la possibilité de debugger le code embarqué...

Quant à coder le compilateur directement dans l'embarqué, ça demande de toute façon à tout résoudre 2 fois car le compilateur n'est-il pas un exécutable C embarqué?
0
MrR0B0T Messages postés 3 Date d'inscription dimanche 5 mars 2017 Statut Membre Dernière intervention 6 mars 2017
6 mars 2017 à 18:25
oui en effet mais je voulais savoir en pratique comment ça se passe...
Pour mieux fixer le contexte :
Je suis étudiant en terminale Sciences Techniques de l'Industrie et du Développment Durable spécialité Systèmes Informatiques et Numériques...
Je me passionne depuis maintenant presque deux ans pour l'informatique de bas niveau (plus pédagogiquement, l'électronique dite "industrielle"), donc je me lance dans un grand projet : mettre au point une petite carte mère m68k et son système d'exploitation, afin de pouvoir gérer des entrées sorties (données sur une eeprom, signal usb, analogique,... ) , une interface sur un écran LCD, et une interface de programmation intégrée (d'ou ma question sur les compilateurs intégrés en ASM68K)
Merci de ton aide et de ton interết
0
MrR0B0T Messages postés 3 Date d'inscription dimanche 5 mars 2017 Statut Membre Dernière intervention 6 mars 2017
6 mars 2017 à 19:46
J'ai trouvé quelque chose d'interessant pour les compilateurs intégrés : http://www.cpm.z80.de/small_c.html
pour d'autres intéressés
Je reste à l'écoute de vos conseils et solutions
Merci
Cdt
Antoine
0