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 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    dnes 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 16:00 | Komunita

    Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.

    Ladislav Hagara | Komentářů: 4
    včera 13:22 | IT novinky

    Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Humor

    Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.

    Ladislav Hagara | Komentářů: 6
    včera 04:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).

    Ladislav Hagara | Komentářů: 0
    včera 03:55 | Nová verze

    Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

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

    Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.

    Ladislav Hagara | Komentářů: 0
    28.11. 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 18
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 423 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    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: 298×
    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: 72
    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.