Argument til program Stepmotor
Hej....Har en lille program til styring af en stepmotor via printer port
det virker fint.... men jeg kunne godt tænke mig at jeg kunne tilføje et argument nå jeg kører programmet, feks : ./step 10000 75 hvor de 10000 er vaiablen (unsleep) og 75 er (loops)
så jeg kan ændrer tid og steps uden at compile om.
Har prøvet med "int main(int argc, char *argv[])" men kan ikke for det til at virke.
Bruger linux og gcc "og er ny i C meget 14 dage :-))"
Her er scriptet som giver fejl når jeg compiler.
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <asm/io.h>
#define BASEPORT 0x378 /* lp1 */
int main(int argc, char *argv[])
{
/* Adgang til port */
if (ioperm(BASEPORT, 3, 1)) {perror("ioperm"); exit(1);}
int us = 'argv[1]'; /* unsleep time */
int sum = 0;
int i = 1;
int loops = 'argv[2]'; /* Step of 10*4 */
while (i <=loops)
{
sum = sum + i;
i++;
/* Step-1 (4) */
outb(165, BASEPORT);
/* Usleep */
usleep(us);
/* Step-2 */
outb(102, BASEPORT);
/* Usleep */
usleep(us);
/* Step-3 */
outb(90, BASEPORT);
/* Usleep */
usleep(us);
/* Step-4 */
outb(153, BASEPORT);
/* Usleep */
usleep(us);
printf("arg1", us);
}
/* Sætter D0-D7 til 0 */
outb(0, BASEPORT);
/* Afbryder forbindelse til port */
if (ioperm(BASEPORT, 3, 0)) {perror("ioperm"); exit(1);}
exit(0);
}
/* Slut af step.c */
Fejl:
step.c:14:12: advarsel: tegnkonstanten er for lang for dens type
step.c:17:15: advarsel: tegnkonstanten er for lang for dens type