Aller au contenu


- - - - -

microcontrolleur pour debuter


8 réponses à ce sujet

#1 Guest_Invité_*

Guest_Invité_*
  • Guests

Posté 17 septembre 2006 - 05:20

Bonjour je voudrais avoir un avis concernant des microcontrolleurs sachant que je n'en est jamais utilisé ni programmé, que sera le plus facile pour moi, debuter avec :

-Ce microcontrolleur ( le robot ne m'interesse pas c'est juste la carte équipé qui m'interesse) dont l'avantage est que c'est un PIC16F877 donc les cours du Bigonoff pourront m'aider et il existe des docs en français mais j'ai peur d'etre limité au niveau du nombre de servos.
-ou bien Ce microcontrolleur mais le probleme c'est que les modes d'emplois sont en anglais mais il doit surement exister des livres en Français qui expliquent la programmation pour ce genre de microcontrolleur.

#2 Guest_Invité_*

Guest_Invité_*
  • Guests

Posté 14 octobre 2006 - 01:13

Franchement...

si tu n'as JAMAIS programmé, commence par un "basic stamp" de Parrallax ...
un modèle BS2 est largement suffisant
( le BS1 est trop limité, et le BSX demande à savoir gérer les "banques" de la mémoire, ce qui est loin d'être évident.. )


tu trouveras des milliers de forums avec des miliers d'exemples, particulièrement sur tous les modules tout faits dont on peut copier/coller les programmes
et le basic est très simple à utiliser pour débuter, en plus :o )

après, tu peux passer directement au PIC et un bon basic ( ou C.. )
un simple 16F876 ou 16F877 tournera vachement plus vite que le basic stamp, avec 10 fois plus de mémoire et pour 15 fois moins cher ! ( au moins ...! )

par contre...commencer directement par l'assembleur.. ouille....


;o)

#3 Fabarbuck

Fabarbuck

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 685 messages

Posté 14 octobre 2006 - 09:00

Ben... ca dépend de tes objectifs, en fait !

Si ton but est de faire un pti robot ou une appli précise, le basic stamp est une bonne idée, parce que pratique et simple d'acces. Si tu veux apprendre et pouvoir faire des choses plus complexes/plus 'customisées', ca me semble etre une bonne idée de commencer effectivement avec un petit microcontroleur (le plus simple possible), pour te familiariser avec les bases, les outils... quand tu maitrisera ta petite bete, tu seras plus à meme de comprendre ce qui manque/te faut pour un plus gros uC.

Coté langage de programmation... as tu déja programmé? Le basic, c'est pas mal, mais l'assembleur est une très bonne école ; c'est pénible (quoique), mais au moins, ca te 'force' (disons donne la chance :P ) à comprendre comment ca marche en détail... et donc au final, tu as une plus grande maitrise des choses.

#4 Guest_Invité_*

Guest_Invité_*
  • Guests

Posté 14 octobre 2006 - 12:54

Merci de vos reponses je pense me diriger vers un pic...

#5 wolfjeremy

wolfjeremy

    Membre occasionnel

  • Membres
  • Pip
  • 135 messages

Posté 23 octobre 2006 - 06:22

Dirigie toi vers un PIC, et apprend plutôt le langage C, car moi je connais l'assembleur et je passe maintenant au C car ça devient vraiment chiant en assembleur <_< (l'assembleur c'est long et chiant, je te le déconseil, même si c'est un très bon langage et puissan)

#6 Otatiaro

Otatiaro

    Membre occasionnel

  • Membres
  • Pip
  • 135 messages

Posté 23 octobre 2006 - 08:17

Dirigie toi vers un PIC, et apprend plutôt le langage C, car moi je connais l'assembleur et je passe maintenant au C car ça devient vraiment chiant en assembleur <_< (l'assembleur c'est long et chiant, je te le déconseil, même si c'est un très bon langage et puissan)


Salut,

Je me permet de modérer un peu tes propos, et je me range plutôt du côté de Fabarbuck ...

Le choix d'un premier microcontroleur est très important, parce que souvent une fois qu'on sait se servir d'une plateforme, on a pas envie de repartir de zero (plus ou moins) pour une autre plateforme ...

Je dirais qu'il existe principalement 3 choix possibles (je passerais rapidement sur les autres ...) :

- Le basic stamp : programmé en langage basic, assez simple d'accès, l'avantage est qu'on trouve des modules tout fait avec le quartz et les quelques composants nécessaires pour le faire fonctionner dans le commerce. Du côté des inconvénients, le langage basic est assez peu utilisé, c'est principalement l'assembleur et le C qui le sont, donc tu auras peut-etre plus de difficulté à trouver des informations, ou quelqu'un qui puisse t'aider. Au rang des inconvénients aussi, et sans rentrer dans les détails, le basic stamp interprete du pseudo-code (qui est situé dans une mémoire externe au controleur), ce qui le rend beaucoup plus lent que les autres microcontroleurs (je n'ai pas les chiffres exactes, mais ca doit etre de l'ordre de 10 fois plus lent, corrigez-moi si je me trompe). Enfin dernier inconvénient, les modules "tout fait" ne sont pas donnés.

- Les PIC : en fait, le coeur d'un basic stamp, c'est un PIC. Microchip est depuis quelques temps LE plus gros fournisseurs de microcontroleurs 8 bits au monde (ils sont passés devant motorola) et le objectif est le même dans la gamme 16 bits. L'énorme avantage des PICs, c'est que microchip est très actif, et à une politique assez orientée vers les amateurs (qui deviendront peut-etre les professionnels et les décideurs de demain). Du coup on peut avoir des échantillons gratuits très facilement, et suffisemment pour un amateur pour ne jamais avoir à en acheter. De plus, par rapport à d'autres fabricants, ils disposent d'outils OFFICIELS de programmation et de débug qui sont très accessible, je pense évidemment à l'ICD2 qui est disponible pour environ 150€. Il existe aussi des programmateurs non officiels pour quelques euros (une grosse dizaine d'euros on va dire). Au niveau des ressources, les PICs intègrent les tout derniers rafinements, USB2, I²C, CAN, Ethernet, controle moteur, etc ... En cherchant bien on trouve toujours ce que l'on cherche. Ils sont plutôt faciles à mettre en oeuvre, et microchp fournit un support logiciel (environnement de développement intégré MPLAB gratuit, mais disponible uniquement sous Windows, compilateurs C, très nombreuses bibliothèques, etc ...). On peut donc les programmer en assembleur ou en C.

- Les ATMEL AVR : je prefere que Fabarbuck en fasse une description détaillée, puisque je n'ai jamais eu l'occasion de travailler avec des AVR, mais je peux en dire qu'ils sont sensiblement équivalents aux PICs. Il faut juste savoir que les PICs sont plus répandus dans la robotique amateur, et il est peut-etre plus facile de trouver qq1 pour t'aider sur PICs que sur AVR. Mais ATMEL à d'autres atouts que Fabarbuck expliquera certainement (notemment si ma mémoire est bonne, une plus grande liberté pour la programmation, puisque le compilateur est GCC, une possible utilisation sous Linux, etc ...).

Les autres "solutions" sont multiples, mais à mon avis moins interssantes, puisque c'est d'une part les autres gammes de microcontroleurs (intel, motorola, MAXIM, TI, beaucoup de fabriquants ont leur propre gamme de microcontroleurs, mais étant moins utilisés, tu seras surement un peu isolés en les utilisant, et pour débuter ce n'est pas idéal), d'autre part ce qu'on peut qualifier d'informatique embarqué, c'est à dire tous les modules de type ROVIN, PC104, biscuit, Mini et Nano-itx, qui sont en fait des systèmes informatiques (PC) complets intégrés spécialement pour être embarqués (faible encombrement, faible consommation, bibliothèques spécifiques, etc). Leur inconvénient est souvent le prix, mais ils ont pour eux la puissance de calcul et le fait d'être une architecture déjà connue et reconnue par bon nombre de developpeurs.


Mon conseil personnel, mais qui n'est pas forcément le seul possible, c'est de commencer avec des petits PICs en assembleur, pour ensuite passer sur des plus gros PICs en C (connaitre l'assembleur permet de comprendre ce qui se passe au niveau de la machine et de l'exploiter à 100%). C'est mon conseil parce que c'est mon parcours, mais choisir la voie AVR est aussi une excellente solution.

De toute facon une fois que tu auras vraiment commencé à avancer dans la programmation, tu verras par toi-même quels sont les points forts de chaque solution, et tu choisiras celle qui te convient le mieux.

Je laisse donc la parole à Fabarbuck pour la partie spécifique aux AVR, et eventuellement corriger certains des points que j'ai abordés (les autres avis sont evidemment les bienvenus, mais c'est je pense Fabarbuck le mieux placé pour parler des AVR ici).

++

PS : sinon, si t'es vraiment, mais alors vraiment motivé, freescale fait des microprocesseurs très puissants, mais à mon avis ce n'est pas à la portée de l'utilisateur non averti (très averti en fait).

#7 Fabarbuck

Fabarbuck

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 685 messages

Posté 24 octobre 2006 - 07:27

Encore une fois, je n'ai pas d'actions chez Atmel, et je n'ai pas intéret à 'convertir' les gens aux atmel :P

Je trouve qu'Otatiaro a bien 'résumé' la situation ;) Quant à la question pic/avr... je crois que ca va surtout dépendre des ressources que tu vas trouver pour l'un ou pour l'autre: la présentation sur un site d'une carte ou application qui ressemble à ce que tu veux faire et utilise l'un ou l'autre peut etre un argument de poids pour te décider. La disponibilité rapide de composants, ou encore d'une personne déja équipé pouvant t'aiguiller dans ton entourage, idem.
C'est vrai que beaucoup de ressources existent pour les pic, mais si tu es utilisateur par exemple de linux ou os X, je _crois_ qu'il y a plus de ressources du coté des avr.

En définitive, que tu choisisses l'une ou l'autre famille, ca ne devrait pas changer la face de ton monde robotique ;)

Pour revenir sur le C vs assembleur... je confirme ce qui a été dit: apprendre l'assembleur (au moins les bases... je te parle pas de faire toute ton application en asm !) te permettra de mieux comprendre comment fonctionne ton uC, et ca te sera très précieux quand plus tard tu voudras faire une vraie appli... programmée en C ! L'asm permet de savoir utilliser correctement les uC... et son apprentissage va de pair avec l'appropriation du contenu de la datasheet et exemples de base pour savoir bien exploiter tes uC.

#8 Rémus

Rémus

    Membre occasionnel

  • Membres
  • Pip
  • 75 messages
  • Location:Périgueux

Posté 02 novembre 2006 - 10:03

Sinon pour apprendre le basic il y a aussi les PICBASIC distribués par lextronic perso j'utilise le picbasic 3B et ca marche trés bien et il me semble qu'ils sont moins cher que les basic stamp. De plus tu peut aussi avoir des modules en tout genre mais ils sont assez chers.

#9 Sugi

Sugi

    Habitué

  • Membres
  • PipPip
  • 235 messages
  • Location:Vers Dunkerque

Posté 02 novembre 2006 - 10:23

C'est sur que si tu n'a vraiment aucunes notions en programmations, les PICBASIC doivent
être pratique (quoique un peu chere, évite d'en cramer un quoi :lol: ).
A part le prix j'en est entendu que du bien, le basic est assez simple à comprendre comme language

Va faire un tour >ici< tu aura une idée du prix.



Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users