choix de pic microchip pour démarrer

  • Auteur de la discussion lion10
  • Date de début
L

lion10

Compagnon
Bonjour

J'envisage de me lancer dans la programmation de up microchip pic avec les contraintes suivantes :

-investissement pas trop élevé, donc pas de carte toute faite, je la câblerai sur du verobaoard ou plutot une plaquette sans soudure,
-je m'orienterai sur le programmateur isp avec des fonctions rudimentaires de debug ( ce n'est pas un vrai émulateur tel l'ice ou le mplab ice) pickit 2
qui est compatible mplab le tout fonctionnat sur windows xp et windows vista j'espère,
Microchip préconise la version 3 mais c'est plutôt pour l'ice ou le mplab ice et la version 2 est en source libre, cela me conviendra donc bien.

-je voudrais pouvoir programmer d'emblée en langage C que je connais et prèfère à l'assembleur, je suppose que le compilateur mplab de base en version gratuite me permettra au besoin de voir l'assembleur cross compilé et d'insérer de l'assembleur s'il le faut dans le C ?
-je n'ai pas l'ordre de grandeur des mémoires ram et programme qu'il est bon d'avoir pour que cela soit confortable sans être luxueux pour programmer en C ? concernant l'application qui conditionne aussi ka taille de mémoire cf ci-dessous.
-les pic 16fxxx et 18fxxx devrait tenir le C mais quid des versions 10 et 12 qui sont plus petit en taille faut il passer obligatoirement par l'assembleur ?

-Mon application dans un premier temps serait pour me faire la main :
- pilotage de visu 4 lignes lcd,
- clavier, allumer des leds ( grand pas au début !),
- gérer une interface rs232 voir 2 pour commander des afficheurs de caisse enregistreuses afin d'avoir un affichage grand format possible jusqu'à 115 000 baud selon la doc,
- interfacer via une interface i2c ou y ressemblant des capteurs de températures et un horodateur,
- compter via un timer des impulsions de tour.


Je donne la préférence à une version de pic en version DIL à piquer afin de ne pas galérer pour les essais avec des cms. D'autres part j'aimerai une version compatible 5V qui tourne à 16 mhz voire plus pour le confort . Je peux envisager de faire des premiers essais sur une première version de pic quitte à passer sur une plus puissante après. Mais si cela tient dans un circuit bas coût dans les 5-6 euros ce serait bien .

Que me conseillez vous comme taille de mémoire et en conséquence comme modèle de pic pour bien démarrer pas cher mais pas forcément faire tout sur le même pic, car le nombre d'entrées sorties est limité.
Enfin pour accéder à une mémoire externe flash afin de la programmer il faut sans doute, à moins de rajouter des circuits logiques latch et autres une version plus conséquente de pic en version 18f xxx afin d'avoir plus d'i/o pour constituer un bus de données et d'adresses.

Il se pose aussi la question de choisir un pic qui n'est pas désuet et appeler à disparaître d'ici peu.

Il y a tant de versions que l'on peu s'y perdre.

En bonus une adresse web pour acheter en france un programmateur à un prix raisonnable et avoir le choix en pic ce serait parfait. :lol:

cdlt lion10
 
M

moissan

Compagnon
le 18F n'est pas très cher , il n'y a que pour des application en grande serie ou l'on veut couper les euro en 4 qu'il est utile de choisir des version moins puissante

le 18F est disponible aussi en petit boitier donc on peut toujours commencer avec un gros dil pour avoir beaucoup de broche , et faire la version finale avec le 18F en version plus petite si moins de broches suffisent

inutile de perdre son temps avec les 10 et 12 plus compliqué a programer ... le 16 n'a pas beaucoup d'interet non plus

bizarement certain marchand de composant vendent les 18F trop cher pour mieux vendre des 16F obsolete
 
L

lion10

Compagnon
Bonsoir

Merci pour cette première réponse.

Effectivement ce ne sera pas de la grande série mais dans l'idéal si cela passe en plus petit...
D'autre part la compatibilité ascendante ou descendante est toujours un plus.

moissan a dit:
inutile de perdre son temps avec les 10 et 12 plus compliqué a programer
Parce que moins de ressource et qu'il me faudrait jongler plus en se jouant d'astuce logiciel ou car moins puissant pour un compilateur

moissan a dit:
bizarement certain marchand de composant vendent les 18F trop cher pour mieux vendre des 16F obsolete
?
Là faut donc que je sois attentif à mon choix quitte à voir la roadmap des pic .


cdlt lion10
 
M

MJL

Ouvrier
Pourquoi un PIC absolument ?

Je te conseillerais plutot un AVR d'Atmel.
Il y a des dizaines de boards Arduino et leur "shield" qui vont bien : TFT, TouchScreen, CAN, Bluethooth, Ethernet, LCD, SDCard, LCD, Moteur etc .....
Les drivers de tout et n'importe quoi son dispo en open source ainsi que les schémas.

L'environement (gratuit ) des Arduinos, mange du C, du C++ et de l'assembleur.
Les Arduinos sont flasher avec un boot loader spécial, donc pas besoin d'isp (ou sinon prend un autre Arduino :mrgreen: )

Le cout est tout a fais résonable, compte 25euros pour un Arduino Uno. Les shields font aussi de l'ordre d'une trentaine d'euros.

La roadmap des PIC et le PIC32 malheureusement (ou heureusement pour d'autre) c'est un MIPS 32bits plus trop à la mode et très correct.
La roadmap d'Atmel et un ARM cortex XX je sais plus, de puissance comparable au PIC32. Un Arduino ARM est en cour de préparation, 100% compatible avec les Atmega, donc pas besoin de réecrire le code pour sauter le pas :wink:

Ca se passe ici : http://www.arduino.cc/
Et j'achete ici : http://www.alpha-crucis.com/

PS : Pour être complet et ne pas me faire accuser de parti pris, il y a une plateforme "Arduino compatible" en PIC32.
J'en ai commandé une mais pas encore reçue, c’est la Pinguino : http://www.pinguino.cc/ achetée ici : http://www.alpha-crucis.com/en/prot...-pic32mx440f256h-dev-board-3700386504693.html
Dès que j'ai pu la tester je ferais un retour d'experience si ca en intéresse certain :wink:


MJL
 
F

freedom2000

Compagnon
lion10 a dit:
Bonjour

J'envisage de me lancer dans la programmation de up microchip pic avec les contraintes suivantes :

Il se pose aussi la question de choisir un pic qui n'est pas désuet et appeler à disparaître d'ici peu.

Il y a tant de versions que l'on peu s'y perdre.

En bonus une adresse web pour acheter en france un programmateur à un prix raisonnable et avoir le choix en pic ce serait parfait. :lol:

cdlt lion10

PIC18F4550 --> tout ce dont tu rêves et l'USB en prime :-D

Après les 24F sont des architectures 16bits qui ont beaucoup d'avantages sur les 18F (mais en 3,3V...)
Le pickit2 tu le trouves sur ebay vraiment pas cher... un clone mais parfaitement fonctionnel sachant que le circuit est en opensource.

JP
 
S

SkippyLeChat

Compagnon
Bonjour,
En complément de ce qui s'est déjà dit, dans la famille 18F, j'ai été bien aise du 18F4525. Facile à trouver (Farnell par ex.), beaucoup de mémoire (48Kb flash et 1024b d'EEPROM). Il existe en version DIL pour les protos et en CMS s'il y a besoin de place.
Avec le petit 18F1630, on a à peut près tout pour faire toute sorte de choses.
Pour ce qui est de l'USB, y a pas avec le 4525 (ni le 1630), mais personnellement j'y ai renoncé... trop compliqué... et il y a des circuits spécialisés qui font la conversion RS232/USB très bien (moi j'utilise ça : http://www.hobbyking.com/hobbyking/store/__9043__Hobby_King_2_4Ghz_6Ch_Tx_USB_Cable.html ...pour 3$ chez le chinois)
Concernant les compilateurs, on peut aller très loin avec les versions "limités" gratuites. J'ai longtemps utilisé Pic basic Pro et m'en trouvait très bien. J'ai récemment cassé ma tirelire pour MikroBasic pro de MikroElectronika, avec une platine EasyPic V7 : ça coute la peau des fesses et franchement je suis un peu déçu du compilateur.
J'utilise le Basic parce que jongler entre les Pic, VisualBasic (excel, autocad) et Java c'est déjà pas de la tarte, je ne me voyais pas utiliser le C en plus. De toute façon, il ne faut pas espérer trouver avec un Pic la puissance du C sur un PC... pour manipuler des registres, tous les moyens sont bons :o) Alors autant prendre celui dont la syntaxe est la plus simple. Ça fait bien de dire "je programme en C", mais franchement, hein !..
L'assembleur est parfois nécessaire pour gérer les interruptions, mais c'est toujours la même chose et c'est donc réutilisable.
J'ai lu plus haut la question "pourquoi les Pic ? il y a aussi Atmel..." C'est vrai, c'est une question qu'il faut se poser en commençant. Parce que choisir un µcontrôleur c'est un peu comme rentrer en religion : difficile de passer de l'un à l'autre quand on connait bien l'un. Je crois qu'on peut s'aider dans ce choix en regardant avec quoi travaillent les autres sur les sujets qui nous intéressent.
Bonne réflexion !
Amicalement,
Skippy
 
Dernière édition par un modérateur:
S

speedjf37

Compagnon
Bonjour,

Ce n'est pas de la PUB c'est de l'info
Attention pas mal de bugs dans les PIC ,lire les erratas.

Pour la prog en "C" les pic 18F avec les outils gratuits de Microchip Mplab et MCC18.

Pour le choix du Pic il faut sélectionner en fonction des périphériques intégrés (outils de sélection paramétrique sur le site de Microchip),il est difficile de tout cibler.
Le prix des composant varie avec les fonctions intégrées.

Les nouveaux Pic 18F182X par exemple ont des oscillateurs internes 8 16Mhz et des multiplicateur X4 (plus besoin de Quartz) et plus de pattes libres (attention pas reconnus par tous les outils).
Par contre attention aux fréquences exactes pour les vitesses de port série.

Les versions 18F2550 et 4550 supportent l'USB et sont la base des programmateurs ICD2 et PICKIT2 (réservé aux micro 5V)
Attention au brochage pas toujours compatible entre les générations .

Les subtilités de paramétrage des registres entre les différents modèles sont difficiles à gérer.
Les variables de grande taille (>256 octets) imposent parfois de modifier les fichiers de link
 
C

coredump

Compagnon
Pour programmer en C je préfère l'AVR qui a une architecture orienté compilo C et des outils pas chers et ouverts (JTAG pour les plus gro, GCC.etc...) Après c'est effectivement proche d'un choix religieux.
Et pour la puissance, il y les ARM cortex M et consorts, finalement pas beaucoup plus compliqués et a des années lumières des petits 8 bits.
 
T

tronix

Compagnon
Bonsoir,

je n'aime absolument pas les 8 bits Microchip à cause de la gestion catastrophique des pages mémoires. Les PIC24 sont beaucoup plus agréables et performants. Mais avec le PIC32, qui coûte entre 2 et 5€, je ne vois pas franchement l'intérêt des autres familles dans la plupart des cas. Sauf le PIC10 quand on veut un processeur en SOT23 (!) ou le PIC24 dans la version très basse consommation. Pour le reste, PIC32 sans hésiter et à toutes les sauces. Les performances sont vraiment au rendez-vous. Pour les bugs, il y en a quelques uns, mais des utilisateurs de Freescale m'ont dit la même chose des leurs. Je fais des applications professionnelles avec pile TCP/IP la plupart du temps, et ça tourne (plus de 500 cartes dans la nature je pense). Après, ARM ou autre, c'est une affaire d'habitude, et quand on est parti sur une marque, il faut une raison majeure pour en changer. Les Freescale Kinetis me semblent pas mal alors, mais le compilateur est limité en taille en version gratuite.
J'utilise MPLab et un RealIce. Et pour des applications qui le nécessitent, j'ajoute un FPGA. Les outils sont gratuits. La limitation est sur l'optimisation du code, mais pour un usage amateur, ce n'est pas un problème, et beaucoup moins gênant qu'une limitation en taille à quelques K.
 
J

JCS

Compagnon
Salut à tous,

Je me permets de vous faire part de ma modeste expérience. Je ne suis pas très doué, j'ai Bac moins 5 ...
J'utilise depuis longtemps le PIC 16F84 que je programme en Basic avec un compilateur.
Ca marche très très bien. Ici un exemple de réalisation :
Ici d'autres :
Au milieu vous verrez un programmateur de cuisson que j'ai réalisé avec un PIC programmé en Basic :
http://www.sulka.fr/fcp/
Ici ma première "machine" à tailler les engrenages à commande numérique :
http://www.sulka.fr/mat/
Ici ma dernière :
http://www.sulka.fr/diviseur_numerique/cn.pdf
Je viens de découvrir la série PICBASIC de chez Confile, pour celui qui fait des projets uniques ou de la très petite série, c'est le top.
http://www.lextronic.fr/produit.php?id=755
Pour environ 30 € vous avez le micro contrôleur, la platine et tous les composants !
Il y a une doc téléchargeable, en français, qui est très compèlte. Il existe aussi 2 bouquins sur le 3B qui sont très bien.
@+

JC.
 
Dernière édition par un modérateur:
C

coredump

Compagnon
En AVR j'aime bien la teensy:

http://pjrc.com/teensy/index.html

Beaucoup d'IO et de mémoire, compatible breadboard, possibilité JTAG, un bootloader qui rend les programmeur inutiles.
Ca se programme soit en C (winAVR), soit en environnement arduino. Il y a l'excellente librairie LuFA pour l'usb.
 
Dernière édition par un modérateur:
J

JCS

Compagnon
Salut Coredump,

Ca a effectivement l'air très bien, le problème est qu'il faut bien maîtriser l'anglais...

@+

JC.
 
T

tranquille

Compagnon
J'ai fait le choix du PIC 18, reste à plonger dedans
 
L

lion10

Compagnon
bonjour


J'ai commencé à regarder les réf de pic. Il est certain que la série pic 18 finalement n'est pas si chère et il y a du choix en dil 40 pattes.
Un gestionnaire d'interruption plus puissant entre autre...

La seule chose qui pourrait me faire hésiter c'est que le 18F est plus compliqué et cela se perçoit dans la taille du data book, 600 pages!
Mais bon en y allant petit à petit.

Pour l'usb c'est sans doute un gros morçeau à garder pour plus tard. J'ai vu qu'il existait un protocole HID qui semble plus facile à gérer sur un pc, mais est ce facile de récupérer des données sur excell en visual basic, ou plus simplement pour faire une fenêtre comme un hyperterminal pour faciliter le dialogue avec une carte à PIC et le PC portable ou de bureau et afficher des informations ou en émettre.

Le site de farnel, de rs particulier (frais grauit le week end :-D ) voire electronique diffusion ou selectronic me semblent bien placé en terme de choix. Mais pour le programmateur PICKIT 2 il faut passer par ebay sinon c'est plus cher avec une carte d'essai qui ne me plait pas. Je prèfère une platine d'expérimentation et le DIY sachant qu'il n'y aque très peu de composant et j'en ai...

Pour un programmateur cela me parait trop bien placé en terme de prix, arnaque ? :?:
http://cgi.ebay.fr/PICKIT-3-MCU-Universal-ZIF-socket-for-PICkit-2-or-3-/350568217070?pt=Wissenschaftliche_Geräte&hash=item519f7e79ee

cdlt lion10
 
Dernière édition par un modérateur:
L

lion10

Compagnon
bonjour

Si l'offre est tjs valable sans risque de frais de douane ?, alors où se trouve -t-elle ?

cdlt lion10
 
F

freedom2000

Compagnon
JCS a dit:
Salut à tous,

Je me permets de vous faire part de ma modeste expérience. Je ne suis pas très doué, j'ai Bac moins 5 ...

JC.

Quand on voit ce que tu fais ça mérite le bac + 10 :prayer:

JP
 
C

coredump

Compagnon
JCS a dit:
Salut Coredump,

Ca a effectivement l'air très bien, le problème est qu'il faut bien maîtriser l'anglais...

@+

JC.

Hélas dans ce domaine c'est quasiment une obligation, d'autant plus qu'internet est une mine d'information qui évite bien souvent de réinventer la roue pour la 42eme fois.
 
T

tranquille

Compagnon
Grosse vague de devellopement avec du PIC 18 sur Usinages.com
 
P

pailpoe

Compagnon
Je me permets d'intervenir car je trouve que vous jetez rapidement à la poubelle ces petits pic16.
J'ai pas mal de mes réalisations qui tourne sur du 16F1825 et on peut pas dire qu'il soit à la ramasse. J'ai aussi des appli en 18F.
Pour le pickit, je te recommande fortement un pickit3 original (le 2 n'est pas compatible avec les derniers micros).
Quelques une de me réalisations avec pic... :-D
infrared-v1-00---4536-35b99b6.jpg

minibox---4597-35b99c4.jpg

p1010703-2dadc4d.jpg
 
F

freedom2000

Compagnon
pailpoe a dit:
Je me permets d'intervenir car je trouve que vous jetez rapidement à la poubelle ces petits pic16.
J'ai pas mal de mes réalisations qui tourne sur du 16F1825 et on peut pas dire qu'il soit à la ramasse. J'ai aussi des appli en 18F.
Pour le pickit, je te recommande fortement un pickit3 original (le 2 n'est pas compatible avec les derniers micros).
Quelques une de me réalisations avec pic... :-D

dis nous ce que c'est tes montages :wink:

Le pickit2 il va tout de même assez haut en gamme de PIC... pas encore trouvé sa limite :-D

JP
 
T

tronix

Compagnon
Il est certain que l'on peut faire des tas de choses avec des petits PIC. Mais l'effort pour débuter en PIC16 ou en PIC32 sera comparable, la différence de prix est faible (PIC32 entre 2 et 6€, et échantillons disponibles), mais les possibilités n'ont rien à voir. Par exemple, le calcul en virgule flottante sera très pénalisant en PIC16. Mais ce n'est que mon avis !
Je pense que les petits processeurs sont parfaits pour optimiser les coûts sur des grandes séries quand le logiciel est parfaitement maîtrisé. L'inverse des besoins d'un amateur ou des utilisations professionnelles plus haut de gamme.
Un outil de debug fiable et efficace est indispensable, même quand on a peu d'expérience.
 
P

pailpoe

Compagnon
Salut,

Je sus tout à fait d'accord. Je travaille sur des produits pour de la grande série ou l'on cherche à payer le moins chère la carte :sad: .
Après, pour du perso, tout dépend ce que l'on cherche. Avec un 18F26K22, il y a déja moyen de se faire plaisir et si le besoin s'en fait sentir, on change de micro pour du plus gros, c'est pas un soucis.
Les cartes du haut, c'est du perso soudé à la main avec des pcbs sous traité chez eurocircuits, je ne fait plus de perchlo depuis bien longtemps chez moi.
Cela va de la carte de gestion infrarouge avec apprentissage pour du multimédia à de la carte de gestion pour cigarette électronique avec du boost, de l'écran lcd, de l'Usb, de l'asservissement,...
Le plus long, cela reste le soft car je suis plus orienté hard que soft :-D .
vu que j'ai finit ma table croisée numérisé, je recherche maintenant un interpreteur gcode pour piloter mes moteurs et je crois qu'il y a des choses interessantes sur arduino :wink: . Un moyen d'essayer ces petites cartes.
 
S

SkippyLeChat

Compagnon
Bonjour,
En son temps, je m'étais fait un petit aide-mémoire sur les 18F en traduisant la partie du Datasheet qui traite :
- des Interruptions
- des modules Timer 0, 1, 2, 3
- du convertisseur Analogique/Digital 10-BIT
- des modules CCP 1 et 2, ECCP et comparateur,
- et enfin du module tension de référence du comparateur
Si vous voulez le télécharger, c'est là : http://dl.free.fr/nLS5cJRpG
Cela facilitera peut-être la vie de ceux qui comme moi ont besoin de quelques pintes de Guiness pour parler correctement l'anglais. Et cette partie de la doc est pour moi celle qui doit être maîtrisée si on ne veut pas trop galérer.
On est bien d'accord, je n'ai rien inventé, il s'agit de traduction du datasheet. Mais quand on voit la littérature de certains gourous, on s'aperçoit qu'ils n'ont pas fait grand chose de plus.
A+
Skippy
PS: il doit y subsister quelque fotes d'orthographe... I beg your pardon !
 
Dernière édition par un modérateur:
T

tronix

Compagnon
La doc des processeurs peut impressionner, surtout pour les plus gros où on dépasse souvent les 1000 pages. Mais on ne lit en détail que ce dont on a besoin, en particulier pour les périphériques. Les fichiers et projets exemples, aussi bien hardware que soft, sont très utiles pour gagner du temps. Mais il ne faut pas se faire d'illusion, il faut du temps pour jongler avec les docs et le matériel, et gérer les fichiers et écrire à peu près correctement le C. Du matériel de test est utile (oscilloscope numérique, petit analyseur sur PC). Et de la patience...
 
F

freedom2000

Compagnon
tronix a dit:
Du matériel de test est utile (oscilloscope numérique, petit analyseur sur PC). Et de la patience...

Le pickit2 est livré avec un petit utilitaire analyseur logique 3 canaux --> super pratique :-D

JP
 
L

lion10

Compagnon
bonjour

Le pickit 2 est sans doute plus très tendance, mais il est vrai qu'il a quand même beaucoup de possibilité de programmer avec.

Je pense qu'une difficulté avec les micros que peut rencontrer le débutant au début c'est s'il gère plusieurs sources d'interruptions . Ne pas oublier de les programmer quitte à ce qu'elles ne fassent rien mais que cela ne plante pas et surtout ne pas les activer toutes tant que l'on ne maitrise pas trop les rudiments de la programmation ou que l'on n'a pas besoins de celles ci.
Dans un premier temps en restant raisonnable sur leur usage le logiciel peut avoir un fonctionnement assez séquentiel et sans surprise. Si le pickit2 possède un analyseur 3 canaux cela permet au moins de voir 3 fils rattachés à chacun de ces canaux. Donc quelqu'un qui n'a pas d'oscillope pourra éventuellement savoir où en est son logiciel s'il en fait une découpe par état, positionnant par exemple sur un port de debug sur 3 fils l'état, soit 8 possibilités.

Effectivement la doc est faite de détails et tous ne sont pas nécéssaires.

Encore une fois si le pic 16 peut être programmé que C cela peut être une bonne base pour un débutant qui n'a jamais appréhendé le codage de logiciel embarqué. Car je me souviens de début de programmation sur des kits en assembleur où ce n'était même pas les instructions mais la valeur hexa qu'il fallait rentrer. C'est à dégouter, de même de la programmation en assembleur c'est à "s'arracher les cheveux".
Mais le travers du C c'est qu'il peut être plus long une fois compilé mais bon pour de l'amateur, il restera toujours la possibilté d'insérer un peu d'assembleur voire de passer à la fréquence supérieure.

SkippyLeChat , j'ai parcouru le doc, très bon complément y-a pas mal de travail de fait. :supz:


cdlt lion10
 
N

NazzTazz

Nouveau
Perso j'ai commencé sur les 18F4550. Certes un peu onéreux dans la gamme (8€ et des poussières), mais on peut vraiment explorer loin... 12 entrées analogiques, (en pratique) 24 bits d'I/O logiques, un UART (port série, bus, etc), USB intégré, se laisse facilement programmer en C avec la suite MPLAB... Le ticket d'entrée est pas excessif, il faut compter 50€ en prenant un pickit, un ou deux pics, affublés de leurs quartz et condos de découplage.
 

Sujets similaires

P
Réponses
9
Affichages
2 149
Pierro19
P
S
Réponses
6
Affichages
935
Steph53
S
Dudulle
Général langage MMBASIC
Réponses
8
Affichages
822
Dudulle
Dudulle
Tom_Franche_Comté
Réponses
8
Affichages
623
peps
L
Réponses
7
Affichages
1 338
laurentl38
L
@
Réponses
17
Affichages
743
@YakumO4444
@
wika58
Réponses
59
Affichages
1 407
synapsis
synapsis
S
Réponses
6
Affichages
2 343
Sambricole
S
S
Réponses
10
Affichages
9 034
Jusinages
J
Haut