J'ai un ATmega8 avec un Nokia LCD 5510 connecté. Tout fonctionne très bien sur une planche à pain et ma prochaine étape est de la déplacer vers une planche plus permanente. Mon problème est que je ne peux pas programmer l'ATmega8 alors que l'écran LCD est également connecté. Je suppose que c'est parce qu'ils utilisent les mêmes broches SPI et que l'écran LCD interfère en quelque sorte avec la programmation. Comment puis-je procéder différemment pour pouvoir flasher l'ATmega via ISP sans débrancher l'écran LCD?
8
Réponses:
Vous devez empêcher tout autre appareil de piloter les lignes SPI pendant la programmation.
Pour éviter les conflits de pilotes, une résistance série doit être placée sur chacune des trois lignes dédiées s'il existe une possibilité que des circuits externes puissent piloter ces lignes.
Jetez un œil à la note d'application AVR910.
Il serait donc préférable que les lignes de réinitialisation de l'ATMEGA et de l'écran soient fonctionnellement connectées pour empêcher l'écran de faire quoi que ce soit pendant que le programmateur maintient la réinitialisation.
la source
Une autre solution consiste à désactiver l'écran lors de la programmation .
L'écran est actif lorsque la broche CS (sélection de puce) est faible (0v). Si vous mettez une résistance de rappel de 10 kR entre la broche CS et le 3V3 , elle sera désactivée / élevée par défaut. Pour l'activer, connectez la broche CS à une sortie de votre micro-contrôleur et réglez cette sortie sur faible (0 V). Je l'ai fait sur l'un de mes projets et cela fonctionne bien.
L'écran fonctionne à 3,3 V, vous devrez ajouter un diviseur de tension si votre micro-contrôleur fonctionne à 5 V.
la source