PROGRAMMATION D`UN AFFICHEUR LCD
Transcription
PROGRAMMATION D`UN AFFICHEUR LCD
PROGRAMMATION D’UN AFFICHEUR LCD Introduction : Flowcode permet de piloter un certain nombre de périphériques comme par exemple un afficheur LCD de 2 lignes de 16 caractères. Ce type d’afficheur embarque une table de caractères complète qui permet de gérer un affichage relativement sophistiqué en investissant un minimum dans la programmation. Certaines macro-fonctions sont déjà écrites. Affichage d’un texte : Utiliser la ressource matérielle de l’afficheur sur le port B Placer dans l’organigramme une macro ( ). Entrer dans les propriétés de la macro, sélectionner LCD Display0, choisir Cursor et rentrer les paramètres x,y (ils partent de 0) pour la position sur l’écran. Dans une autre macro choisir Print ASCII et rentrer le caractère 65. Tester le programme ( ). Modifier le programme pour écrire « SI » à l’emplacement que vous choisirez (vous pouvez vous aider de la table ASCII en annexe). Dans print ASCII tester un mot entre guillemets ("…") pour rentrer des caractères. Tester également l’option PrintNumber. Pour tester le programme sur la carte de développement, vous devez au début du programme appeler la macro « Init » de l’afficheur pour qu’il puisse s’initialiser et être utilisé. flow_aff_lcd.doc Page 1 sur 4 Affichage de l’heure : On désire afficher l’heure comme le montre l’affichage ci-dessous : Dans le menu PIC, sélectionner clock Speed, rentrer la valeur 32768. Placer l’outil interruption et rentrer dans les propriétés de celle-ci et mettre la valeur 32 dans Prescale value. Sachant que le timer TMRO est un registre de 8 bits qui reçoit en permanence une horloge dont la fréquence est celle de clock speed / 4, valider la fréquence de l’interruption ainsi programmée. Pour exécuter un sous programme d’interruption (ici à chaque débordement du Timer TMR0), il suffit de placer les instructions dans la macro associée, c'est-àdire « INTERRUPT_TMR0 » (menu Macro, Edit/Delete) Ecrire le programme qui permet d’afficher l’heure en temps réel. flow_aff_lcd.doc Page 2 sur 4 flow_aff_lcd.doc Page 3 sur 4 flow_aff_lcd.doc Page 4 sur 4