Hi world
bon, décidément, j'ai pas de bol en ce moment avec mes PIC et l'ICSP ...
Je suis sur un 18F2510, mais cette fois, j'ai dû utiliser les pin RB7 et RB6 pour connecter un LCD 4x20
RB7 => LCD_Data_B7
RB6 => LCD_Data_B6 (original, non ?! )
Par contre, la pin Vpp (MCLR) est dédiée à l'ICSP (donc en l'air quand y'a pas d'ICSP), évidement, le MCLR est désactivé dans les config bits.
Le schéma :
NB: j'avais prévu des Résistances de 10k au cas ou la prog par ICSP ne soit pas possible ... mais comme ça marche à condition que la carte soit alimentée, j'ai mis des straps ...
J'ai aussi viré les résistances du contraste, ça marche nickel à la masse.
Bon, maintenant, le problème, c'est que mon PIC ne tourne que si l'ICSP est branché ... ... ou alors ... ... si je touche une pin RB6 ou RB7 avec la sonde de l'oscillo !!!
NB: j'ai une pin de debug qui bouge quand le PIC tourne ...
Sans ICSP, si je plug l'alim, le LCD boot (2 lignes sur 4 affichées par défaut) ... ensuite si avec ma sonde, je viens toucher l'une ou l'autre des pin RB6 ou RB7, le PIC boot, fait l'init du LCD et affiche le classique "Hello world !".
Si je mets le connecteur ICSP, le PIC tourne aussi ...
Mes bits de config :
C'est bizarre ce truc quand même ?!!!Code:Address Value Field Category Setting 300001 08 OSC Oscillator INT RC-Port on RA6,Port on RA7 FCMEN Fail-Safe Clock Monitor Enable Disabled IESO Internal External Switch Over ModeDisabled 300002 00 PUT Power Up Timer Enabled BODEN Brown Out Detect Disabled in hardware, SBOREN disabled BODENV Brown Out Voltage 4.5V 300003 1E WDT Watchdog Timer Disabled-Controlled by SWDTEN bit WDTPS Watchdog Postscaler 1:32768 300005 01 CCP2MUX CCP2 Mux RC1 PBADEN PortB A/D Enable PORTB<4:0> configured as digital I/O on RESET LPT1OSC Low Power Timer1 Osc enable Disabled MCLRE Master Clear Enable MCLR Disabled,RE3 Enabled 300006 81 STVR Stack Overflow Reset Enabled LVP Low Voltage Program Disabled XINST Extended Instruction Set Enable bitDisabled 300008 0F CP_0 Code Protect 00800-01FFF Disabled CP_1 Code Protect 02000-03FFF Disabled CP_2 Code Protect 04000-05FFF Disabled CP_3 Code Protect 06000-07FFF Disabled 300009 C0 CPB Code Protect Boot Disabled 30000A 0F WRT_0 Table Write Protect 00800-01FFF Disabled WRT_1 Table Write Protect 02000-03FFF Disabled WRT_2 Table Write Protect 04000-05FFF Disabled WRT_3 Table Write Protect 06000-07FFF Disabled 30000B E0 WRTC Config. Write Protect Disabled WRTB Table Write Protect Boot Disabled 30000C 0F EBTR_0 Table Read Protect 00800-01FFF Disabled EBTR_1 Table Read Protect 02000-03FFF Disabled EBTR_2 Table Read Protect 04000-05FFF Disabled EBTR_3 Table Read Protect 06000-07FFF Disabled 30000D 40 EBTRB Table Read Protect Boot Disabled
Ce qui me gène le plus, c'est que l'ICSP est censé être controlé par la pin Vpp ... aucunement par les signaux pin Clock ou Data !!!
-----