Port parallele, matlab java

Port parallele, matlab java - Divers - Programmation

Marsh Posté le 22-05-2006 à 00:28:33    

Salut à tous!!
 
Je dois gérer une carte avec 3 afficheurs, chacun gérés par 3 registres SN74HCT74. voila mon code sous matlab;
le pb; j'affiche le 1 sur le premier afficheur mais lorsque ke je passe sur le deuxieme afficheur, j'affiche le 0 mais le 1 disparait,  
je pense ke c du au fait que  je fais un "putvalue" sur le parallele2 pour sélectionner le deuxieme afficheur et matlab me met les broches D0 à D7 à 1 logique....alors que je ne lui demande pas...  
 
QUELQ'UN SAIT IL COMMENT REGLER CE PB, Ou sinon comment faire pour utiliser une solution Java  ( langage que je ne connai pas...) ???
 
nbre_personnes = 108;
data_centaines = floor(nbre_personnes/100);
data_dizaines = floor((nbre_personnes - (data_centaines*100))/10);
data_unites = floor(nbre_personnes - (data_centaines*100) - (data_dizaines*10));
 
parallelport0 = digitalio('parallel','LPT1');
ligne_control = addline(parallelport0,0:3,2,'out');
putvalue(parallelport0,[0 0 0 0]);
delete(parallelport0);
 
pause(5);
 
parallelport = digitalio('parallel','LPT1');
val = getvalue(parallelport)
disp('creation port')
ligne_1 = addline(parallelport,3:3,2,'out');
val1 = getvalue(parallelport)
disp('creation ligne')
putvalue(parallelport,[1]);
val2 = getvalue(parallelport)
disp('donne sur la ligne')
 
parallelport1 = digitalio('parallel','LPT1');
val3 = getvalue(parallelport)
val31 = getvalue(parallelport1)
disp('creation port1')
ligne12 = addline(parallelport1, 0:7,0,'out');
val4 = getvalue(parallelport)
val41 = getvalue(parallelport1)
disp('creation ligne1')
if (data_centaines == 1)
     disp('Afficher_Afficheur : data_centaines = 1')
     %Affichage du chiffre 1
     putvalue(parallelport1, [1 0 0 1 1 1 1 1]);
     disp('donne sur la ligne1')
end
% putvalue(parallelport,[0 0 0 0]);
pause(1);
val5 = getvalue(parallelport)
val51 = getvalue(parallelport1)
%putvalue(parallelport,[0]);
delete(parallelport);
disp('delete parar')
pause(1);
%delete(parallelport1);
%disp('delete parar1');
 
parallelport2 = digitalio('parallel','LPT1');
val6 = getvalue(parallelport2)
val61 = getvalue(parallelport1)
disp('creation port2')
pause(5);
%ligne = addline(parallelport2,0:7,0,'out');
ligne_14 = addline(parallelport2,1:1,2,'out');
val7 = getvalue(parallelport2)
val71 = getvalue(parallelport1)
disp('creation ligne 14 et ligne')
pause(10);
%putvalue(parallelport2,[0 0 0 0 0 0 0 0 0 1]);
putvalue(parallelport2,[1]);
val8 = getvalue(parallelport2)
val81 = getvalue(parallelport1)
disp('donne sur la ligne14 et ligne')
pause(10);
 
 
%parallelport3 = digitalio('parallel','LPT1');
%ligne3 = addline(parallelport3, 0:7,0,'out');
if (data_dizaines == 0)
     disp('Afficher_Afficheur : data_dizaines = 0')
     %Affichage du chiffre 0
     putvalue(parallelport1, [0 0 0 0 0 0 1 1]);
end
pause(5);
val9 = getvalue(parallelport2)
val91 = getvalue(parallelport1)
% % putvalue(parallelport2,[0 0 0 0]);
delete(parallelport2);
delete(parallelport1);
%delete(parallelport3);
 
pause(5);

Reply

Marsh Posté le 22-05-2006 à 00:28:33   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed