bonjour, je programme un pic pour l'utiliser avec un afficheur lcd alphanumerique en mode 4 bits.
comme d'habitude je programme les routine pour les divers fonctions (lecture busy, ecriture commande, ....) bien sur je fais tres attention au tempo car le pic "tourne" a 32MHz
je verifie avec le simulateur MPLAB,.... tout a l'air bon, coool :-)
un petit coup de pickit3 et hop ..... ca fonctionne pas :-(
apres moult essais pendant des heures .... rien :-(
!!!!! :-)
je re-test a 4, 8, 16MHz, ca fonctionne, mais a 32MHz non ! GRRRRRR...!
je verifie un peu tout, je double les tempo pour etre sur et je repasse en 32MHz et..... toujours pas :-(
je m'ennerve, je hurle, je maudis la terre entiere (desole pour vous tous!) et j'essai une derniere chose sans espoir mais bon, je place 4 petit "NOP" entre la modification de la broche "RS" et "R/W" car ils sont tous les deux l'un derriere l'autre dans le programme, on ne sais jamais!.
bsf RS_AFF bsf RW_AFF
deviens:
bsf RS_AFF nop nop nop nop bsf RW_AFF
et ... oooohhh joie de l'electronique, ca fonctionne a 32MHz! :-)
je refais quelques essais et avec un seul NOP ca fonctionne aussi.
curieux, je regarde la doc de mon afficheur et celle de quelques autres egalement et il n'y a aucunes tempo mini entre la modification de RS et RW.
comme quoi, des fois on decouvre des choses et surtout si ca peut aider quelqu"un
bon WE