abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 10:33 | Komunita

V pondělí měl na YouTube online premiéru otevřený krátký 2D film Hero vytvořený v 3D softwaru Blender. Cílem stejnojmenného projektu Hero je vylepšit nástroj Grease Pencil (tužka) v Blenderu 2.8.

Ladislav Hagara | Komentářů: 3
včera 23:22 | Nová verze

Byla vydána verze 4.0 kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Přehled novinek v Changelogu (GitHub).

Ladislav Hagara | Komentářů: 0
včera 17:22 | Komunita

Včera vydanou hru Rise of the Tomb Raider pro Linux lze do pondělí 23. dubna koupit na Steamu s 67% slevou. Místo 49,99 € za 16,49 €.

Ladislav Hagara | Komentářů: 0
včera 16:11 | Komunita

Na Humble Bundle lze získat počítačovou hru Satellite Reign (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 5
včera 15:44 | Zajímavý software

Společnost Apple koupila před třemi lety společnost FoundationDB vyvíjející stejnojmenný NoSQL databázový systém FoundationDB (Wikipedie). Včera byl tento systém uvolněn jako open source pod licencí Apache 2.0. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
včera 15:00 | Nová verze

Po dva a půl roce od vydání verze 5.7 oznámila společnost Oracle vydání nové major verze 8.0 (8.0.11) databázového systému MySQL (Wikipedie). Přehled novinek v poznámkách k vydání. Zdrojové kódy komunitní verze MySQL jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 2
19.4. 14:44 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 151. brněnský sraz, který proběhne v pátek 20. 4. od 18:00 hodin v restauraci Benjamin na Drobného 46.

Ladislav Hagara | Komentářů: 0
19.4. 13:33 | Nová verze

Byla vydána verze 18.04.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 0
19.4. 13:11 | Nová verze

Bylo oznámeno vydání nové stabilní verze 1.26 a beta verze 1.27 open source textového editoru Atom (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
19.4. 12:55 | Komunita

Dle plánu byla dnes vydána hra Rise of the Tomb Raider (Wikipedie) pro Linux. Koupit ji lze za 49,99 €.

Ladislav Hagara | Komentářů: 3
Používáte na serverech port knocking?
 (3%)
 (7%)
 (46%)
 (27%)
 (17%)
Celkem 340 hlasů
 Komentářů: 29, poslední 5.4. 12:25
    Rozcestník

    Dotaz: Pomoc se sériovým kanálem v c++

    14.3.2010 21:06 Lyso
    Pomoc se sériovým kanálem v c++
    Přečteno: 224×
    Zdravím, mám takový menší problém. Programuju spojení mezi Aducem842 a Linuxem ( ubuntu ) pomocí RS232. Komunikaci mám vyřešenou tak, že vysílám tři znaky jednim směrem, tři znaky zpátky. Pořád dokola. Problém však nastane, když vyšlu 10, což je ASCII new line. Většinou mi při tom zkolabuje program v linuxu, tak že se přeruší komunikace.

    Mám tušení, v tom že jsem nastavil špatně seriový kanal. Mohl by se tedy prosím na to někdo podívat ?

    konfigurace kanálu:
     
                    // Get the current options for the port...
    		tcgetattr(fd, &options);
    
    		// Set the baud rates to 38400...
    		cfsetispeed(&options, B38400);
    		cfsetospeed(&options, B38400);
    
    		// Enable the receiver and set local mode...
    		options.c_cflag |= (CLOCAL | CREAD);
    		options.c_cflag &= ~PARENB;
    		options.c_cflag &= ~CSTOPB;
    		options.c_cflag &= ~CSIZE;
    		options.c_cflag |= CS8;
    		options.c_iflag |= (IXON | IXOFF | IXANY);
    		options.c_cflag &= ~CRTSCTS;
    		options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
    
    		//	Set the new options for the port ...
    		tcsetattr(fd, TCSANOW, &options);
    a smyčka v které mi to při 10tce spadne. Z aducu se většinou vrací i ( je to zatim pouze test ) :
                                  for(i = 0;i<24;i++){
    					out_buffer[0] = 'z'; 
    					out_buffer[1] = i;
    					out_buffer[2] = 0;
    					write(fd, out_buffer, 3);
    					read(fd, in_buffer ,strlen(in_buffer));
    					
    					
    					usleep(10);
    					global[i][0] = in_buffer[1];
    					global[i][1] = in_buffer[2];
    
    					in_buffer[0] += '0';
    					in_buffer[1] += '0';
    					in_buffer[2] += '0';
    					printf("%s \r\n",in_buffer);
    					
    					if(i == 9)	
    						i = 10;
    				}
    Předem děkuji za jakoukoliv pomoc.

    Lyso

    Řešení dotazu:


    Odpovědi

    14.3.2010 21:09 Lyso
    Rozbalit Rozbalit vše Re: Pomoc se sériovým kanálem v c++
    Ještě dodám že to
    if(i == 9)	
    i = 10;
    
    
    jsem tam dodal kvůli toho aby se desitka přeskočila, potom to jde. Jenomže kdykoliv se na vstupu/vystupu desítka objeví, začne to dělat neplechu.
    14.3.2010 21:26 comander
    Rozbalit Rozbalit vše Re: Pomoc se sériovým kanálem v c++
    strelim len tak od boku:

    skusil by som port nastavit v konzoli podla clanku: http://www.abclinuxu.cz/clanky/hardware/seriova-komunikace-pod-linuxem-i

    a zakomentovat nastavovanie portu v programe. kazdopadne dajte vediet aky je progres
    15.3.2010 08:40 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Pomoc se sériovým kanálem v c++
    options.c_iflag |= (IXON | IXOFF | IXANY);
    Tohle mi na první pohled přijde podezřelé, tipoval bych, že Xon/Xoff řízení toku by mělo být spíš vypnuté.
    Quando omni flunkus moritati
    15.3.2010 18:28 Lyso
    Rozbalit Rozbalit vše Re: Pomoc se sériovým kanálem v c++
    problém vyřešen, vypnul jsem ixoff, ixon a nastavil seriový kanál podle toho článku.

    Díky :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.