Párhuzamos port programozása

Kezdőlap Fórumok Programozás Párhuzamos port programozása

10 bejegyzés megtekintése - 1-10 / 15
  • Szerző
    Bejegyzés
  • #1981471
    pointux
    Felhasználó

      open-nel meg lehet nyitni a device-t, majd bármilyen szabványos mûveletet végre lehet hajtani rajta.
      Persze egy scripttel is lehet pl. filet kiküldeni, meg ilyesmi…

      #1981472
      Morzel
      Felhasználó

        open-nel meg lehet nyitni a device-t, majd bármilyen szabványos mûveletet végre lehet hajtani rajta.
        Persze egy scripttel is lehet pl. filet kiküldeni, meg ilyesmi…
        [align=right][snapback]93881[/snapback][/align]

        Tudnal esetleg adni egy rovid pelda programot?

        Morzel

        #1981473
        pointux
        Felhasználó
          #1981474
          admin
          Adminisztrátor

            http://cvs.easysw.com/cvsweb.cgi/cups/back…llel.c?rev=1.49 🙂
            [align=right][snapback]93894[/snapback][/align]

            Udvozletem!

            Atolvasgattam, de oszinten szolva meg nem jutottam elobbre. Tudnal adni egy rovid peldaprogit, ami megnyitja a parhuzamos portot, kikuld egy jelet, es bezarja azt?

            Morzel

            #1981475
            pointux
            Felhasználó

              //Mintha egy file-t írnál

              if ((fp = open(DEVICE, PARAMS)) < 0) {
              perror(„open”);
              exit(1);
              }

              //aztán a pl:
              read(fp, buffer, sizeof(buffer);
              // de használható write, vagy bármi, amivel file-ba lehet írni…

              close(eszköz);

              /*pl:
              eszköz: „/dev/parallel/0”
              paraméterek: O_WRONLY | másik_paraméter (| – bináris vagy)*/

              #1981476
              Morzel
              Felhasználó

                Udvozletem!

                Ugy vettem eszre, hogy az open a syscalls.h headerben van. Ezt pontosan hol talalom?
                Csinaltam egy egyszeru peldaprogit:

                Code:
                #include
                #include”syscalls.h”

                int main()      {
                       int pp;

                       if ((pp = open(„/dev/printers/0”, „O_WRONLY”))) {
                               perror(„open”);
                               exit(1);
                       }
                       write(0, a, 1);

                       return 0;
                }

                Es ez lett a forditas eredmenye:

                Code:
                morzel:~/Munka$ gcc -ansi -Wall proba.c
                proba.c:2:21: syscalls.h: Nem létezõ fájl vagy könyvtár
                proba.c: In function `main’:
                proba.c:7: warning: implicit declaration of function `open’
                proba.c:9: warning: implicit declaration of function `exit’
                proba.c:11: warning: implicit declaration of function `write’
                proba.c:11: error: `a’ undeclared (first use in this function)
                proba.c:11: error: (Each undeclared identifier is reported only once
                proba.c:11: error: for each function it appears in.)

                Morzel

                #1981477
                pointux
                Felhasználó

                  Elõször is
                  #man open
                  akkor kiírja, mi kell neki, és nem az…

                  write(0, a, 1); pedig biztosan nem jó, mert nem a 0 pointert. (Valószínûsítem, hogy /dev/null bár lehet, hogy valami fontos dolog van ott, aminek az írása beláthatatlan következménnyel jár.) Bár valószínûleg nem engedett volna ilyet csinálni, ha mégis, akkor örülj neki, hogy nem tudtad futtatni. (write(pointer, puffer, méret), de ez a példa file-ban is benne van, amit adtam.)

                  #1981478
                  gabaman
                  Felhasználó

                    $ gcc -ansi -Wall -Ilinux proba.c (minusz-nagy_i-linux)

                    vagy

                    #include

                    #1981479
                    Morzel
                    Felhasználó

                      $ gcc -ansi -Wall -Ilinux proba.c  (minusz-nagy_i-linux)

                      vagy

                      #include
                      [align=right][snapback]94418[/snapback][/align]

                      Udvozletem!

                      Kiprobaltam, de igy sem talat syscalls.h-t

                      Morzel

                      #1981480
                      gabaman
                      Felhasználó

                        Akkor végre feltehetnéd a ********* kernel forráskódot. Ugye elnézed nekem, hogy fogalmam sincs, mi van a gépeden. Az üdvözölgezést meg tartsd meg magadnak!!!

                      10 bejegyzés megtekintése - 1-10 / 15
                      • Be kell jelentkezni a hozzászóláshoz.