1

Bonsoir à tous smile

Je (re)sollicite aujourd'hui votre aide pour mon PPE, Projet Personnel Encadré qui compte pour le Bac SSI.
Le travail que l'on m'a attribué au sein d'une équipe de projet est la programmation d'un microcontrôleur PIC 16F88 avec programme créé sous Flowcode V3 destiné à une Pompe à Perfusion portative ou existerai uniquement un affichage LCD et non analogique (comme l'ancien modèle que nous possédons dans notre Labo).

Après une multitude de recherche, nous avons finalement opté pour l'utilisation d'un Keypad pour entrer le nombre de gouttes/min que la machine doit administrer au patient.

Sous Flowcode, nous avons alors, en respectant l'ancien système de sécurité initialement présent ( placement de la tubulure, ect ... ) tout les ports utilisés :

Port A ( uniquement pour le Keypad ) :

A0 Colonne 1
A1 Colonne 2
A2 Colonne 3
A3 ? ( Non écrit )
A4 Rangé A
A5 Rangé B
A6 Rangé C
A7 Rangé D

Port B ( De B0 à B5 = LCD, B6 et B7 = Interrupteurs ):

B0 Donnée 1
B1 Donnée 2
B2 Donnée 3
B3 Donnée 4
B4 RS
B5 Validation
B6 Prise Secteur
B7 Placement Tubulure + Porte

B6 = 1, Affichage sur le LCD que l'Alimentation est sous Secteur.
B6 = 0, Affichage sur le LCD que l'Alimentation est sur Batterie.

B7 = 1, Affichage sur le LCD d'un message d'erreur de placement de tubulure ou de fermeture de la porte.
B7 = 0, Aucun affichage, fonctionnement normal.

Après cela, je transfert le programme sous le 16F88 de Isis et commence le câblage ... Et là arrive mon problème !
En effet, j'ignore ou il me faut brancher certaines entrées/sorties qui sont :
*** A3 et B5 ( Micro PIC ) car A3 non précisé sous Flowcode et B5 ( Validation ) équivaut à quelle entrée du LCD sous Isis ?
*** Vee, RW, E1 et E2 ( Entrées/sorties du LCD sous Isis ).

Sous Isis, voici les entrées/sorties du LCD : Vss, Vdd, Vee, RS, RW, E , D0 à D7.

En attente de vos réponses, bonne soirée à tous wink
La vie est ronde
Le rond est vide
Le vide n'est Con
Et le Con n'est Vis

2

Vee = tension pour le réglage du contraste du LCD. À relier à un potentiomètre monté en diviseur de tension (la valeur est pas critique, 10 kOhm ira très bien) par rapport à la tension d'alimentation. Régler manuellement pour avoir un affichage lisible.

R/W = sélection du sens de transfert de données. Peut être relié directement à la masse si tu ne fais qu'écrire (pas lire) sur le LCD.
C/D = sélection entre commande et données, probablement B4
E = sélection du LCD sur le bus, probablement B5

Au passage, si c'est un LCD avec un contrôleur HD44780 ou compatible, il faut relier les lignes de données à D4 ~ D7, pas à D0 ~ D3.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3

Le forum Électronique est probablement le meilleur endroit pour ces questions.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4

Merci pour ces réponses rapides smile encore une fois ! wink

J'ai déjà fais ce que tu viens de me dire ( entre temps ) or, le problème c'est que le programme se lance mais plante et bloque sur le premier affichage ...

Je suis sûre de mon programme, et du branchement entre mon Micro PIC et le LCD par contre, je ne le suis pas autant au niveau du Keypad ...
Les branches correspondantes sont bien reliées au Micro PIC mais il faut bien ... l'alimenter !

Alors , Colonnes reliées au POWER et Rangées à la masse ? L'inverse ? Ou autre ?
La vie est ronde
Le rond est vide
Le vide n'est Con
Et le Con n'est Vis

5

Y'a pas d'alimentation en temps que tel, elle est réalisée implicitement à travers les signaux des lignes et des colonnes. Ton problème ne vient pas de là.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

6

Je pense que ça ne peut être que mon programme ...
Il se lance bien sous Isis après une attente de ... 30 secondes ! Est-ce parce que j'utilise 85% de la Rom ?

Et est-ce à cause de cela qu'il ne fonctionne que dans quelque cas ? ( Je ne peux taper que les chiffres 7, 8, 9, 0, #, *, le reste me fait planter la simulation et le logiciel m'annonce plus de 2500 messages d'erreurs sur des renvoies d'adresses entre autres et pourtant, sous Flowcode, le programme fonctionne à merveille ...
La vie est ronde
Le rond est vide
Le vide n'est Con
Et le Con n'est Vis

7

Honnêtement je peux pas te dire, je connais ni Flowcode ni Isis.

L'utilisation d'un logiciel de simulation est imposée ? Parce que bon, si vous avez le matériel réel, ça prend 30 secondes de programmer un PIC. Actuellement ça ne se justifie plus vraiment de simuler quelque chose qu'on peut faire tourner aussi facilement en vrai, et sans les imprécisions du simulateur. Y'a que quand on cherche à décortiquer un bug que ça peut être utile.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

8

Oui c'est sur, et on peut le simuler à l'aide d'une carte DE ( or on ne peux utiliser ça qu'en cours et la plage horaire des PPE est le Vendredi Matin alors ...
Mais on le fera wink
La vie est ronde
Le rond est vide
Le vide n'est Con
Et le Con n'est Vis