FORUM Syndrome-OC - Jacky-PC


  Electronique


  Autres


  [QST]Programmation PIC

 




Il y a 18 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[QST]Programmation PIC

n°81290
karlito139
Posté le 11-05-2008 à 22:02:37  profilanswer
 

Salut
 
Je voudrais juste savoir comment se programme un PIC, par quelle branche passent les données de l'ordi au pic, etc...
J'ai cherché sur internet, mais je n'ai pas trouvé d'explications détaillées.
 
Merci ;)


---------------
MOD en cours : DANGER!!!!!
mood
Google
Posté le 11-05-2008 à 22:02:37  profilanswer
 

n°81294
mdog
Posté le 12-05-2008 à 10:55:17  profilanswer
 

Salut!
Eh bien tu as du mal chercher :lol:. On utilise tout simplement un programmateur, généralement sur port série, il en existe plusieurs types, selon la famille du microcontroleur, et aussi des universels...
 
@+
Mdog

n°81295
karlito139
Posté le 12-05-2008 à 10:58:39  profilanswer
 

^^ oui justement, je ne trouve que ca, mais je voulais savoir en fait ce qui se passait "dans" le programmateur?


Message édité par karlito139 le 12-05-2008 à 10:58:58

---------------
MOD en cours : DANGER!!!!!
n°81298
bifronslev​rai
Posté le 12-05-2008 à 13:44:05  profilanswer
 

pas grand chose !  
 
c'est un passes plat le programmateur, il ne sert qu'à véhiculer en liaison série ( le plus souvent ), un programme déjà compilé dans la partie du µc dédié au stockage de son programme.  
 
en gros c'est une version externe de ce qui se fait courrement pour nos bios de carte mère, à la différence près que nos carte mère possèdent déjà leur "programmateur" pré cablé.  
 
pour ce qui est des "branches", si tu désigne par là les broches utilisées, elles sont normalisées et décrites dans tout les datasheet. en général il faut en mettre 2 ou 3 à +Vcc, autant à la masse, et connecter 1 ou deux broches au port série du PC, avec éventuellement 2-3 circuits entre selon les µc ( pour transformer du série en paralelle, ou faire un contrôle de données, ou je ne sais quoi encore )  
 
pour un picbasic basic stamp par exemple, c'est banché direct sur des broches dédiées (enfin non, faut 2 condos, mais c'est marqué dans la doc ^^ ) , l'électronique nécessaire est sur le µc qu'il est juste nécessaire d'alimenter.  
 
si tu veux plus de détails, et bien donnes nous le type de PIC que tu souhaites utiliser :)


Message édité par bifronslevrai le 12-05-2008 à 13:51:43
n°81299
karlito139
Posté le 12-05-2008 à 13:52:24  profilanswer
 

OK merci, en fait je voulais me faire un programmateur USB universelle, car je trouve ceux que l'on peut acheter dans le commerce à un prix exorbitant, mais je vois que cela semble compliqué à mètre en place d'après ce que tu dis non?


---------------
MOD en cours : DANGER!!!!!
n°81300
bifronslev​rai
Posté le 12-05-2008 à 14:07:24  profilanswer
 

oui et non ...  
 
faire un programmateur vraiment universsel doit être faisable, mais c'est beaucoup d'effort pour bien peu de choses.  
 
perso j'en utilise 3 selon les familles de µc que je bricole :  
-un home made avec 4 pauvres transistores et une poignée de résistances pour des PIC 18F
-un home made tout rikiki pour basic stamp
-un "du commerce" en kit velleman pour des PIC 16F qui prends plusieurs taille de PIC ( selon le nombre de pattes et le modèle , les broches de programmation diffèrent )  
 
en USB par contre je n'ai jamais joué avec.
 
je dirais pour faire simple, ne cherche pas à avoir un truc "qui fait tout même le café", concentre toi sur tes besoins, choisisn un µc adapté en regardant les tutos à droite à gauche, et bricole toi un programmateur pour.  
 
si tu tapes dans les PIC18F ou dans les XXXStamp de Paralaxx ( un peu chers et carrement moins perf que les RISC, mais plus didactiques ), tu peu te faire un programmateur avec une poignée de composant qui te coutera moins de 3€
 
--
 
petit complément, beaucoup de pic actuels peuvent être progammés "in situ", en fait tu fait une partie du programmateur ou tu prévois une fiche que tu normalise comme ça te chante, et quand tu conçois ta carte pour ton application, tu ajoute 2-3 composants ( en général des cavaliers de configuration ou des inters DIL ), et une fiche qui accuillera ton "bout de programateur". comem ça le jour ou tu veux changer ton prog, ben tu bascule la carte en mode programmation, tu branche ton biniou, tu alimente, et tu charge ton nouveau prog sans avoir à extraire le µc de son environnement.  
 


Message édité par bifronslevrai le 12-05-2008 à 14:11:49
n°81301
karlito139
Posté le 12-05-2008 à 15:02:48  profilanswer
 

OK je vois, donc je pense me faire un programmateur pour les 16f et les 18f, car mon problème actuel est que j'ai acheté un programmateur, mais il ne fait pas tous les 16f, par exemple, je voudrais pouvoir programmer un 16f887, mais il ne le prend pas en charge. Si non, c'est vrai qu'il faudra que je pense à mètre le bootloader, même si je n'en ai pas encore l'utilité.
 
Quelques questions encore:
- Je n'arrive pas à trouver dans le datasheet la section ou il est question de la programmation des PIC.
- Je voulais aussi savoir quel était l'intérêt d'un basic stamp ?
 
Merci ;)

Message cité 1 fois
Message édité par karlito139 le 12-05-2008 à 15:03:21

---------------
MOD en cours : DANGER!!!!!
n°81302
mdog
Posté le 12-05-2008 à 15:16:06  profilanswer
 

Pour la programmation des 16F, je te conseil un JMD, sa marche à tout les coups... Pour la programmation, regarde le chapitre "In-Circuit Serial Programming" (ICSP) des datasheet.
 
Pour le programmateur j'ai celui-ci qui fonctionne très bien : http://www.chez.com/udelmas/prog_pic.html et pour pas cher, j'ai même déjà programmé des 12F en adaptant simplement le brochage ;).
 
@+
Mdog

n°81304
bifronslev​rai
Posté le 12-05-2008 à 15:24:48  profilanswer
 

karlito139 a écrit :

 

Quelques questions encore:
- Je n'arrive pas à trouver dans le datasheet la section ou il est question de la programmation des PIC.
- Je voulais aussi savoir quel était l'intérêt d'un basic stamp ?

 

Merci ;)

 

de rien ;)

 

en fait le basic stamp ( ou le javelin d'ailleurs ) n'est pas un vrai µc, c'est plutôt une mini carte qui embarque le programmateur, le µc, l'eeprom et le quartz.

 

l'avantage, c'est qu'il n'a besoin de pratiquement aucun composant externes pour fonctionner. les applications sont multiples, mais moi je l'ai choisi pour ne pas me prendre la tête sur un projet ou je privilégiais le bidouillage dans un environnement ou totu parlait en I2C ... le basic stamp se programme en Basic ( et le Javelin en Java ), il est lent, mais as beucoup de fonction "précablées" pour l'I2C , l'audio, les entrées sorties, ce qui permet de le programmer très très facilement ( quitte à le remplacer par un µc plus performant une fois les dizaines de tests effectués.

 

précision : un basic ( ou javelin stamp ), c'est aussi TRES TRES CHER ! comparé à un pic ;)

 

il est souvent utilisé dans les "robot pour apprendre", car il nécessite très peu de connaissance en programmation et se concentre sur ce qu'on veux faire plutôt que "comment on va le faire".

 

à l'usage, maintenant je lui préfère de très loin des PIC programmés en C, mais ils sont plus contraignants à mettre en oeuvre.


Message édité par bifronslevrai le 12-05-2008 à 15:33:49
n°81305
karlito139
Posté le 12-05-2008 à 15:41:07  profilanswer
 

Donc en fait si je comprends bien, tous les PIC se programment de la même façon, la seule différence, est le brochage, mais dans tous les cas, il y aura des fils d'alimentation, un qui donne l'horloge, et un autre qui donne les données.
 
Partant de cela, il serait possible de créer une interface qui se branche sur l'ordinateur en USB et sur laquelle il y aura des prises, un certain nombre pour les alimentations, une pour l'horloge et une pour les données.  
A coté on aurait une autre plaque avec un support ZIF et on pourrait brancher les fils ou on veut en fonction du PIC utilisé.
 
Je me trompe?? (Je suis sure qu'il y a une exception^^)


---------------
MOD en cours : DANGER!!!!!
n°81306
bifronslev​rai
Posté le 12-05-2008 à 15:57:24  profilanswer
 

oh il doit même y en avoir 2 ou 3, mais sur le papier, oui c'est faisable ^^  
 
si tu regarde à droite à gauche, il doit y avoir 2 ou3 façon de programmer des PIC ( certain modèles requierent plus de config que d'autre ), mais en effet, il est imaginable de réaliser des "branchements conditionnels" en fonction du type à programmer et en utilisant un support ZIF ... par contre si tes branchements conditionnels ne sont pas du genre "fils à la mimine sur un bout de plaque d'essais", ça risque de s'apparenter à de l'arrachage de cheveux ^^  
 
comme le dît Mdog, préfère un truc bateau avec 2-3 composants externes et fait de de l'ICSP, ça te reveindra de très loin moins cher, et évitera les "oups j'ai oublié tel fil" quand tu reconfigure d'un PIC à l'autre ;) ( chose qui n'arrive pas si tu normalise ton brochage et que tu prends toujour les mêmes fiches pour tes branchement ICSP )  
 
pour la question de l'USB, ça doit pas être plus sorcier que le série, mais ça risque d'allourdir encore ton brochage si il faut un circuit "driver" ( simple supposition, j'y connais rien en USB ^^ )

n°81307
K-micaz
Posté le 12-05-2008 à 18:08:15  profilanswer
 

je sais même pas si ça vaut la peine de se fabriquer un JDM car j'ai acheté  mon JDM sur ebay a 15 euros avec un support zif ...

n°81308
karlito139
Posté le 12-05-2008 à 18:53:50  profilanswer
 

Je viens d'avoir une idée barbare, si je veux programmer un 16f887, je peux utiliser mon programmateur actuel comme pour un 16f84, mais je n'aurai qu'a brancher l'emplacement du RB6 du 16f84 au RB6 du 16f887, de même pour tout le reste (RB7 et les alimentations). Et cela devrait marcher normalement non???
 
Une autre question, j'ai vu un programmateur faisant le 16f877A et pas le 16f887, alors que les 2 ont le même brochage, quelqu’un a une explication???


Message édité par karlito139 le 12-05-2008 à 18:57:44

---------------
MOD en cours : DANGER!!!!!
n°81309
mdog
Posté le 12-05-2008 à 20:19:58  profilanswer
 

Pour la prog du 16F877 oui sa marchera normalement si tu adapte comme tu l'as dit ;), car si ton programmateur utilise les pin RB6 et RB7 alors c'est de l'ISCP. Pour ce qui est des programmateurs, c'est simplement que le 877 n'est pas utilisé ou presque, contrairement au 877A, mais pour la programmation c'est du pareil au même...
 
Pour ce qui est d'acheter un programmateur JMD, 15€ sa va, mais le fabriquer reviendra à 3 ou 4€ tout au plus sur un morceau de bakelite pastillé...
 
@+
Mdog

n°81310
karlito139
Posté le 13-05-2008 à 16:57:13  profilanswer
 

J'ai regardé sous mon programmateur pour voir les pistes, et comparer dans les datasheet pour voir quels pins sont connectés à quelque chose.
J'ai fait cela pour le 16F877A, le 16F84A et le 16F54.
 
De cela il ressort que le pin RB6 et VDD sont toujours connectés (savoir si ils sont utilisés?). Ce sont les seuls qui reviennent à chaque fois, je commence à me poser des questions, car dans aucun cas, le pin RB7 n'est utilisé.
Où pourrais-je voir les différentes façons de programmer un PIC?
 
Merci ;)


---------------
MOD en cours : DANGER!!!!!
mood
Google
Posté le 13-05-2008 à 16:57:13  profilanswer
 


Aller à :
Ajouter une réponse

  FORUM Syndrome-OC - Jacky-PC


  Electronique


  Autres


  [QST]Programmation PIC

 

Hit Parade