|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.03 Kraj: Dragomer
|
Objavljeno: Pet Sep 23, 2011 12:06 am Naslov sporočila: GNU C Pomoč začetniku III |
|
|
Spet prosim pomoč:
Naprava na kateri delam (Beagleboard)
http://beagleboard.org/hardware
ima RS232 in teče pod Linux-om.
Na njej prevajam moje prve C-vaje. Premetavanje bajtov mi še nekako gre, počepnem pa, ko je potrebno kaj dati na izhod.
Kaj moram vse napisati v C-u, da bi zasegel ta vrata v moj program, definiral hitrost 9600 Bd in napisal "Hej, ljudje!"
Se priporočam. |
|
Nazaj na vrh |
|
|
polh Član
Pridružen-a: Pet 08 Apr 2005 18:27 Prispevkov: 225 Aktiv.: 1.01 Kraj: Maribor-Ljubljana
|
Objavljeno: Pet Sep 23, 2011 8:04 am Naslov sporočila: |
|
|
Če je vse kakor je ponavadi na Linux-u, potem ti bo ta koda mogoče kaj pomagala...
Koda: |
#include <stdio.h>
#include <unistd.h>
#include <termios.h>
#include <fcntl.h>
#include "slika.h"
int main( int argc, char **argv )
{
int com0, n=0, i=0, x, y;
struct termios nastavitve;
char chout=-1;
slika( *(argv+1) ); //Nalo?i BMP sliko
com0=open( "/dev/ttyS0" , O_RDWR | O_NOCTTY | O_NDELAY);
if ( com0==-1 ) printf( "Ne morem odpreti /dec/ttyS0" ), exit(1);
fcntl( com0, F_SETFL, FNDELAY);
tcgetattr( com0, &nastavitve );
cfsetispeed( &nastavitve, B9600 );
cfsetospeed( &nastavitve, B9600 );
nastavitve.c_cflag |= ( CLOCAL | CREAD );
nastavitve.c_cflag &= ~PARENB;
nastavitve.c_cflag &= ~CSTOPB;
nastavitve.c_cflag &= ~CSIZE;
nastavitve.c_cflag |= CS8; //8N1
nastavitve.c_oflag &= ~OPOST; // RAW output jebote bog!!!!!
nastavitve.c_cflag &= ~CRTSCTS; //Disable flow control
nastavitve.c_lflag &= ~(ICANON | ECHO | ISIG);
tcsetattr( com0, TCSANOW, &nastavitve ); //Uveljavi nastavitve
y=0;
while ( y<8 )
{
x=0;
while ( x<128 )
{
write( com0, &polje[x][7-y], 1 ); // 7-y &polje[x][0]
usleep(1000);
x++;
}
usleep(200000);
y++;
}
close( com0 );
printf( "\n" );
|
Lp Tine _________________ Gledališka skupina Reciklaža |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.03 Kraj: Dragomer
|
Objavljeno: Pet Sep 23, 2011 9:00 am Naslov sporočila: |
|
|
Hmm, hvala.
Vsekakor bo potrebno malo študiranja.
Najprej preverim, ali moj linux ima vse #include datoteke (razen slike).
Potem bom malo iskal po tutorial, da najdem uporabljene funkcije/podprograme da vem kaj delajo.
Bom javill.
Hvala |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.03 Kraj: Dragomer
|
Objavljeno: Pet Sep 23, 2011 9:25 am Naslov sporočila: |
|
|
Z malimi spremembami je prevedel program.
Sedaj grem študirat funkcije termios.h
Hvala za smer! |
|
Nazaj na vrh |
|
|
polh Član
Pridružen-a: Pet 08 Apr 2005 18:27 Prispevkov: 225 Aktiv.: 1.01 Kraj: Maribor-Ljubljana
|
Objavljeno: Pet Sep 23, 2011 9:32 am Naslov sporočila: |
|
|
Malenkost. Če je prevedel, bi skoraj moral delat.
Srečno! _________________ Gledališka skupina Reciklaža |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.03 Kraj: Dragomer
|
Objavljeno: Pet Sep 23, 2011 9:37 am Naslov sporočila: |
|
|
polh je napisal/a: |
Malenkost. Če je prevedel, bi skoraj moral delat.
Srečno! |
Nisem na lokaciji, delam od daleč, tako ne morem od daleč priklopiti terminal-emulatorja na napravo, da vidim, kako in kaj.
Se bo treba vzdigniti iz stola in premakniti nekaj km daleč, in tam probat.
Ta čas bomo pa malo študirali.
Hvala. |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.03 Kraj: Dragomer
|
Objavljeno: Ned Sep 25, 2011 1:59 pm Naslov sporočila: |
|
|
To je nekako proradilo, ko sem (začasno) dobil root user-a z vsemi privilegiji.
Sedaj pa zares:
http://www.elektronik.si/phpBB2/viewtopic.php?t=27458
Kako programirati tako, da pri vhodu RS232 'ne preslišimo nič, kako merimo čas v linuxu, ne da bi programorali zakasnitvene programske zanke?
Vprašanje je specificirano na zgornji povezavi. |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 75 dni
Powered by phpBB © 2001, 2005 phpBB Group
|