ik moet voor school een robot arm aansturen vanaf de computer. dit moet ik via de parallelle poort doen, maar ik krijg het script niet werkend
dit vond ik op internet
http://www.arunet.co.uk/tkboyd/ele1pp.htm
dat script heb ik toen gemaakt, als test of ik 123 naar de poort kon sturen
deze foutmelding kreeg ik toen
uitgang.pas(5,10) Error: Unknown identifier "AX"
uitgang.pas(5,11) Error: Unknown identifier "DX"
uitgang.pas(5,11) Error: Asm: [xchg ???,???] invalid combination of opcode and operands
uitgang.pas(6,9) Error: Unknown identifier "DX"
uitgang.pas(6,10) Error: Unknown identifier "AL"
uitgang.pas(6,10) Error: Asm: [out ???,???] invalid combination of opcode and operands
uitgang.pas(12,4) Fatal: There were 6 errors compiling module, stopping
uitgang.pas(12,4) Fatal: Compilation aborted
weet iemand hoe ik dit verder moet doen? onze leraren weten het niet, en volgens de boeken hier, hoef je ax dx en al niet als identefier te zetten
mvrgr nilvo
HBontekoe
iets zonder duidelijke functie is vaak meer waard als iets nuttigs...
beetje weinig info.. gebruik je pascal of turbo pascal.
wat is je nivo, hoeveelste jaar hoe goed ben je met de software.
weet je wat de software doet. kun je eigenhandig procedures schrijven ??
denk zelf uit wat ik nu lees en las op die website is dat je de verkeerde compiler gebruikt voor de verkeerde software... MAW de software is niet geschreven voor jou pascal versie.. dus probeer eerst te snappen wat hij doet en schrijf dan met wat logica je eigen programma dat hetzelde doet..
leer je ook wat 
Edit: post ook je software zoals je die nu hebt even tussen [code ] [/code ]
ik ben 2e jaars mts plus, nivo 4, heb weinig ervaring met turbo pascal, ben sinds 4 weken geleden begonnen met turbo pascal leren, het is maar voor 1 prestatie nodig, dus leer alleen het brood nodige. ook heb ik nog 1 week en dan moet er een resultaat zijn.
procedure PortOut (IOport:word; Value:byte);
begin
asm
xchg ax,dx
out dx,al
end;
end;
begin
PortOut(888,123);
end.
dit vond ik op internet
en dit maakte ik er van als besturing voor de robot arm
program Robot;
uses crt;
procedure Portout (IOport:word; Value:byte);
begin
asm
xchg ax,dx
out dx,al
end;
end;
VAR doorgaan, commando : real;
label 01, 02, 03, 04, 05, 06, 07, 08, 09, 10 ;
BEGIN
10 : write('typ 1(rechtsom), 2(linksom), 3(omhoog), 4(omlaag), 5(naar voren), 6(naar achter), 7(naar links), of 8(naar rechts) ');
readln (commando);
if commando = 1 then
goto 01;
if commando = 2 then
goto 02;
if commando = 3 then
goto 03;
if commando = 4 then
goto 04;
if commando = 5 then
goto 05;
if commando = 6 then
goto 06;
if commando = 7 then
goto 07;
if commando = 8 then
goto 08;
if commando >= 9 then
goto 09;
01 : PortOut(888,1);
delay (1000);
PortOut(888,0);
goto 09;
02 : PortOut(888,2);
delay (1000);
PortOut(888,0);
goto 09;
03 : PortOut(888,4);
delay (1000);
PortOut(888,0);
goto 09;
04 : PortOut(888,8);
delay (1000);
PortOut(888,0);
goto 09;
05 : PortOut(888,16);
delay (1000);
PortOut(888,0);
goto 09;
06 : PortOut(888,32);
delay (1000);
PortOut(888,0);
goto 09;
07 : PortOut(888,64);
delay (1000);
PortOut(888,0);
goto 09;
08 : PortOut(888,128);
delay (1000);
PortOut(888,0);
goto 09;
09 : write ('typ 1 om door te gaan, of exit...');
readln (doorgaan);
if doorgaan = 1 then
goto 10;
END.
deze foutmeldingen hou ik over
ROBOT.PAS(8,10) Error: Unknown identifier "AX"
ROBOT.PAS(8,11) Error: Unknown identifier "DX"
ROBOT.PAS(8,11) Error: Asm: [xchg ???,???] invalid combination of opcode and operands
ROBOT.PAS(9,9) Error: Unknown identifier "DX"
ROBOT.PAS(9,10) Error: Unknown identifier "AL"
ROBOT.PAS(9,10) Error: Asm: [out ???,???] invalid combination of opcode and operands
ROBOT.PAS(88) Fatal: There were 6 errors compiling module, stopping
ROBOT.PAS(88) Fatal: Compilation aborted
mvrgr nilvo
edit: nadat ik dit zag leek het mij alsof ik een zelfde soort code als uses crt; nodig heb, kan iemand zeggen of dat zo is, ben nu aan het zoeken op internet daarvoor.
HBontekoe
iets zonder duidelijke functie is vaak meer waard als iets nuttigs...
ik weet waar het fout gaat hoe je het moet oplossen
je compiler vindt het niet aardig dat je ASM gebruikt in je pascal programma, turbopascal heeft hoogstwaarschijnlijk een library nodig om dit te laten werken. Borland Pascal 7.0 of hoger heeft deze er in zitten.
dus kopieer je hele programma in BP 7 en build en run.. of bekijk deze website even
http://www.geocities.com/SiliconValley/Park/3230/pas/pasl2014.html
hier staat genoeg over combineren van pascal en assembly
Edit:
Moeite waard om ook even te kijken of je Printerpoort addres klopt dit lijkt me geen 888 maar eerder 0378h
[Bericht gewijzigd door HBontekoe op ]
HBontekoe
iets zonder duidelijke functie is vaak meer waard als iets nuttigs...
anders gewoon zoals aangegeven staat op de website turbo assembly 3.0 downloaden en die integreren volgens voorschriften op website ben je er ook ...
meeste scholen bieden wel TP en BP 7 of 6
dus moet geen probleem zijn om het aan de gang te krijgen