EDAboard.com | EDAboard.eu | EDAboard.de | EDAboard.co.uk | RTV forum PL | NewsGroups PL

PIC, ICSP, ces choses.

Nouveau sujet

elektroda.net NewsGroups Forum Index - Electronique FR - PIC, ICSP, ces choses.

Jean-Louis Matrat
Guest

Sat Aug 11, 2007 9:12 pm   



Bonsoir,

Une brève description de mon projet: c'est un truc dans le domaine audio
où il y a un PIC 16F877A (original, n'est-il pas?). C'est une sorte de
centrale de commande de volume multi-voies avec diverses autres
fonctions permettant d'en faire un centre de commande d'une chaîne hifi
de ouf pour cinglés comme moi ;-)

Je voudrais un truc largement évolutif qui puisse recevoir des
développements de la part de gens sachant causer le PIC, mais qui ne
pose pas de problème complexe de (re)programmation pour les hifistes
intéressés mais pas nécessairement équipés en PICprog, MPLAB, ICD2, etc.
Donc mon idée c'est d'incorporer dans le montage un ICSP facile
d'emploi. Le prix de revient de l'engin devant se situer dans les 200¤,
la dizaine d'euros de composants mise en jeu n'est pas irréaliste.

Vu la disparition des RS232, je prévois un interface USB.
Parmi les montages que j'ai pu trouver, j'ai repéré le Wisp628, pas
coûteux et facile à transposer en USB avec un FT232B (contrairement à un
JDM):
http://www.voti.nl/wisp628/index.html
Utilisé avec le soft Bumblebee:
http://home.hccnet.nl/d.a.kuipers/pic/bumblebee/introduction.html
on devrait avoir quelque chose d'assez simple d'emploi permettant même
aux moins expérimentés de profiter du code développé par d'autres. Et
qui serait utile aussi à ceux capables d'écrire ce code: pas besoin
d'ouvrir la boîte!

Ceci posé, en bon hifiste cinglé parano, je préférerais éviter que le
16F628 avec sa pompe de charge et le FT232B, qui ne serviront à rien
99,99% du temps, ne soient alimentés que lorsque c'est nécessaire, et
donc, pourquoi pas, par l'USB. La procédure de programmation du 16F877
serait donc:
-éteindre l'appareil (ou pas?)
-raccorder l'USB
-programmer
-débrancher l'USB
-rallumer l'appareil.

Et donc voici les questions: suis-je dans la bonne voie? Y a-t-il des
précautions spéciales à prendre pour que ce système soit "fool-proof"?
Est-il indispensable d'éteindre le bidule pour programmer?

Accessoirement, toutes recommandations quant à l'ICSP ainsi que d'autres
idées sont les bienvenues.

Merci d'avance!

JLM

Adrien Gaudel
Guest

Sat Aug 11, 2007 9:34 pm   



"Jean-Louis Matrat" <noname_at_noplace.com> a écrit dans le message de news:
46be2632$0$25944$ba4acef3_at_news.orange.fr...
Quote:
Et donc voici les questions: suis-je dans la bonne voie? Y a-t-il des
précautions spéciales à prendre pour que ce système soit "fool-proof"?
Est-il indispensable d'éteindre le bidule pour programmer?

Accessoirement, toutes recommandations quant à l'ICSP ainsi que d'autres
idées sont les bienvenues.

Merci d'avance!

JLM

Je me suis déjà amusé a faire de l'ICSP (via un JDM) sans éteindre (et donc
sans couper l'alim du montage) alors que le soft tournait sur la platine. Le
signal de programmation (13V il me semble) fait passer le pic dans ce mode
et le nouveau code s'est chargé sans problème, c'était sur un 16F628 je
crois... Maintenant il me semble que ça ne marche pas forcement avec tous
les PIC car certains doivent reçevoir VPP avant VDD.

Mais pour ce genre de "problème" il serait peut-être plus judicieux de
passer par un bootloader (je crois qu'il existe pas mal d'exemple de code à
ce sujet, certains étant même tout fait et pret à l'usage)
Dans ce cas le FT232 serait alimenté par l'USB (et pas par l'alim du
montage) et le fait que celui-ci soit raccordé à l'USB fait passer le PIC en
mode "bootloader" sans aucune autre intervention, ce dernier attendant alors
sagement qu'on lui envoit le nouveau firmware (le PIC étant alors soit
alimenté par la source du montage, soit par l'USB...)
Cette solution ayant en plus l'avantage de se passer d'integrer le
programmateur au montage (utilisation de l'USART du PIC)

Enfin je suis loin d'être un expert dans le domaine, attendre d'autres
avis...

Jean-Louis Matrat
Guest

Sat Aug 11, 2007 10:17 pm   



en ce 11/08/2007 23:34, Adrien Gaudel nous disait:

Quote:
Mais pour ce genre de "problème" il serait peut-être plus judicieux de
passer par un bootloader (je crois qu'il existe pas mal d'exemple de code à
ce sujet, certains étant même tout fait et pret à l'usage)
Dans ce cas le FT232 serait alimenté par l'USB (et pas par l'alim du
montage) et le fait que celui-ci soit raccordé à l'USB fait passer le PIC en
mode "bootloader" sans aucune autre intervention, ce dernier attendant alors
sagement qu'on lui envoit le nouveau firmware (le PIC étant alors soit
alimenté par la source du montage, soit par l'USB...)
Cette solution ayant en plus l'avantage de se passer d'integrer le
programmateur au montage (utilisation de l'USART du PIC)

Merci pour ton intervention.
J'ai (un peu) regardé dans cette direction, mais j'ai laissé tomber
parce que j'ai besoin de cet UART pour mon montage: il sera utilisé pour
passer des commandes à d'autres matériels. De même, j'utilise aussi
l'I2C pour d'autres fonctions.
Je ne sais pas si on peut utiliser un boot-loader tout en conservant
l'usage de l'UART?

JLM

kram
Guest

Sun Aug 12, 2007 6:55 am   



Bonjour,


Une idée : vous installez un connecteur pour pickit2 sur votre platine,
accessible par le côté.
A ceux qui veulent faire un upgrade, vous fournissez le pickit2 de Microchip
et un CD contenant le nouveau firmware + instructions ou alors vous proposez
un service de reprogrammation.
Le Pickit 2 s'achète chez www.microchipdirect.com no. PG164120 pour 25.50
EUR HTVA. Il se branche sur USB coté PC et est alimenté par celui-ci.
J'achète mes PICs directement chez eux, c'est rapide, pas cher et on paye la
TVA locale, pas de taxes sur des produits hors CE.


Bon développement,

Marc

Adrien Gaudel
Guest

Sun Aug 12, 2007 7:57 am   



"Jean-Louis Matrat" <noname_at_noplace.com> a écrit dans le message de news:
46be3562$0$27412$ba4acef3_at_news.orange.fr...
Quote:
en ce 11/08/2007 23:34, Adrien Gaudel nous disait:

Merci pour ton intervention.
J'ai (un peu) regardé dans cette direction, mais j'ai laissé tomber parce
que j'ai besoin de cet UART pour mon montage: il sera utilisé pour passer
des commandes à d'autres matériels. De même, j'utilise aussi l'I2C pour
d'autres fonctions.
Je ne sais pas si on peut utiliser un boot-loader tout en conservant
l'usage de l'UART?

JLM

Il me semble que certains PIC on 2 UART...
Sinon ça depend de l'utilité qu'aura l'UART en fonctionnement normal (les
commandes à passer) car il est possible d'écrire un UART soft et de reserver
l'UART hard pour le bootloader, là encore n'ayant pas une vision globale du
projet, c'est difficile de juger la validité d'une telle idée.
Mais de toute façons il me semble que oui, on peut conserver l'usage de
l'UART avec un bootloader. Le bootloader n'est qu'un petit bout de programme
"resident" qui se charge de reprogrammer le PIC (sur les series où c'est
possible) ensuite il "passe la main" au programme qu'il à chargé et
n'intervient plus, le programme normal a acces a toutes les ressources
materiel du composant sans limitation. Par contre après c'est au niveau du
materiel que ça posse problème, il faut pouvoir raccorder l'UART à la fois
au FT232 et à l'autre utilisation prévue sans qu'il n'y ai d'interferences.

Sinon, si je me souviens bien du post d'origine, il me semble que tu te
casses un peu trop la tête. je m'explique. Tu prévois le possibilité de
flasher le firmware de ton montage afin que ceux qui savent develloper sur
PIC puisse écrire leur propre firmware, mais justement ceux qui savent
develloper sur PIC savent aussi realiser la manip pour programmer le
composant et on normalement le materiel pour (au moins un vieux JDM dans un
coin) pourquoi donc se casser la tête à essayer de leur facilité la tache
alors que de toutes façons ça ne changera rien pour eux ? prevoir une
interface ICSP sur le montage serait à mon avis bien suffisant.

Jean-Louis Matrat
Guest

Sun Aug 12, 2007 5:39 pm   



en ce 12/08/2007 08:55, kram nous disait:

Quote:
Une idée : vous installez un connecteur pour pickit2 sur votre platine,
accessible par le côté.

C'est un 5 broches en ligne?

Quote:
A ceux qui veulent faire un upgrade, vous fournissez le pickit2 de
Microchip et un CD contenant le nouveau firmware + instructions ou alors
vous proposez un service de reprogrammation.

Il faut préciser que mon projet n'est pas commercial, je veux juste le
mettre à disposition de personnes même peu expérimentées en électronique
et/ou microprocesseurs.

Quote:
Le Pickit 2 s'achète chez www.microchipdirect.com no. PG164120 pour
25.50 EUR HTVA.

J'avais vu ce produit, mais je croyais qu'il n'était vendu qu'avec des
cartes d'essai, inutiles dans le contexte et augmentant le prix. Merci
du tuyau.

JLM

Jean-Louis Matrat
Guest

Sun Aug 12, 2007 6:00 pm   



en ce 12/08/2007 09:57, Adrien Gaudel nous disait:

Quote:
Mais de toute façons il me semble que oui, on peut conserver l'usage de
l'UART avec un bootloader. Le bootloader n'est qu'un petit bout de programme
"resident" qui se charge de reprogrammer le PIC

Bon, je vais approfondir tout ça.

Quote:
Sinon, si je me souviens bien du post d'origine, il me semble que tu te
casses un peu trop la tête. je m'explique. Tu prévois le possibilité de
flasher le firmware de ton montage afin que ceux qui savent develloper sur
PIC puisse écrire leur propre firmware, mais justement ceux qui savent
develloper sur PIC savent aussi realiser la manip pour programmer le
composant

Bien entendu.

Quote:
pourquoi donc se casser la tête à essayer de leur facilité la tache

Comme pour tout matos audio, il y aura plein de câbles branchés dans
tous les sens. Ne rien avoir à débrancher, ni de capot à ouvrir, me
semble être un plus.

Quote:
alors que de toutes façons ça ne changera rien pour eux ? prevoir une
interface ICSP sur le montage serait à mon avis bien suffisant.

Sur mon proto, j'ai mis un ICSP, cela va sans dire. Mais l'idée c'est
que si un utilisateur réalise une extension/modification de firmware qui
présente un intérêt général, je souhaite que tout le monde puisse en
profiter, même ceux qui ne savent pas ce que ICSP veut dire!
Cela dit, tu as peut-être raison, un simple connecteur ICSP accessible,
la fourniture du PIC programmé en version de base, plus un programmateur
bon marché en option, ça règlerait le problème de façon acceptable sans
doute. Faut que je repense mon truc...

JLM

kram
Guest

Mon Aug 13, 2007 5:48 am   



Quote:
C'est un 5 broches en ligne?


Il y a 6 pins en ligne. 1 = Vpp//MCLR
2= Vdd Target
3= Vss (ground)
4= ICSPDAT/PGD
5= ICSPCLK/PGC
6= Aux ( non utilisée)

Du coté platine il faut juste prévoir un header 5 ou 6 broches, coudé ou
droit et de la place pour le boitier Pickit2

elektroda.net NewsGroups Forum Index - Electronique FR - PIC, ICSP, ces choses.

Nouveau sujet

Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
RTV map EDAboard.com map News map EDAboard.eu map EDAboard.de map EDAboard.co.uk map Opony