Anonymní profil Anonymní uživatel – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Anonymní uživatel – Programujte.comAnonymní profil Anonymní uživatel – Programujte.com

 

Příspěvky odeslané z IP adresy 212.24.158.–

Anonymní uživatel
C / C++ › Seriovy port v C
22. 4. 2010   #127569

To jouda :

tak hobby to není, mám to mít do konce května. Prostě bakalářka. ale začla jsme pozdě, tradičně,ale když rozchodim toto, tak už to snad půjde.

Moc děkuji za rady:)

Jatagan
C / C++ › Seriovy port v C
21. 4. 2010   #127531

tak jsem vytvořila toto, zatim bez posílání, ale ted mám porblém, že mi to nidke nejde zkompiovat, takže to dělám asi blbě.. Jako základy programování krapet mám, ale nevim, jestli to otveřiát jako windows application nebo console application a jetsli mi na to stačí codeblock?Děkuji za odpovědi

#include <windows.h>

int main()
{
HANDLE hSerial;
hSerial=CreateFile("COM4",
GENERIC_READ | GENERIC_WRITE, //MOZNA POSTACI JEN WRITE, KDYZ NECHCEME CIST
0,
0,
OPEN_EXISTING,
FILE-ATRIBUTE_NORMAL,
0);

if (hSerial=INVALID_HANDLE_VALUE){
if (GetLastError()==ERROR_FILE_NOT_FOUND){
//Serial port does nost exost. Inform user.
}
//Some other error ocurred. Inform user.
}

DCB dcbSerialParams={0};
dcbSerial.DCBlenght=sizeof(dcbSerialParams);
if (!GetCommState(hSerial,&dcbSerialParams)){
//error getting state
}
dcbSerialParams.BaudRate=CBR_9600;
dcbSerialParams.ByteSize=8;
dcbSerialParams.StopBits=ONESTOPBIT;
dcbSerialparams.Parity=NOPARITY;

/*if (!SetCommState(hSerial;&dcbSerialParams)){
//error setting serial port state
}

COMMTIMEOUTS timeouts={0}; //casy v milisekundach
timeouts.ReadInternalTiomeout=50;
timeouts.ReadTotalTimeoutMultiplier=10;
timeouts.WriteTotalTimeoutConstant=50;
timeoutes.WriteTotalTimeoutMultiplier=10;
if (!SetCommTimeouts(hSerial;&timeouts)){
//error ocureed. Inform user.
} */

char szBuff[4]={0}; // n+1
DWOR dwBytesWrite=0;

if (!WriteFile(hSerial,szBuff, 3, &dwBytesWrite, NULL)){
//error ocurres. Report to user.
}

CloseHandle(hSerial);
return 0;
}

Jatagan
C / C++ › Seriovy port v C
14. 4. 2010   #126990

Děkuji mnohokrát za odpovědi, jdu se na to vrhnout, snad se už zadaří

Jatagan
C / C++ › Seriovy port v C
14. 4. 2010   #126975

jouda napsal:
To jatagan : Takze pokud to chapu dobre, tak potrebujes kod pro mikrokontroler i seriovy port v PC? Pokud tomu tak je, mas uz nejakou predstavu o necem jako komunikacni protokol - prikazy pro MCU, nastaveni komunikace...?





Pro mikrokontroler to nepotřebuji, ten už je připravenej od výrobce. Tam je jedno servo ovládáno takto:
<1byte><2byte><3byte>
kde 1byte je synchronizacni, takze vzdy 255
2byte je cislo serva
a 3byte je poloha serva


takze ja si myslim, ze ted potrebuju "jen " nejaky komunikacni program pres ktery toho robota a pocitac propojim pomoci portu a pak na stisk klavesy se odesle vzdy jeden pohyb

jatagan
C / C++ › Seriovy port v C
14. 4. 2010   #126962

Mám problém,
mám redukci na seriový port. Na tento port musím připojit robota se třemi servy, která jsou ovládána, přes seriový port. Ale bohužel nemohu ani vytvořit komunikaci pro seriový port a tento daný mikropočítač.
Mohl byste mi prosím nědko poradit?
Děkuji

jatagan
C / C++ › Seriovy port v C
14. 4. 2010   #126961

Mám problém,
mám redukci na seriový port. Na tento port musím připojit robota se třemi servy, která jsou ovládána, přes seriový port. Ale bohužel nemohu ani vytvořit komunikaci pro seriový port a tento daný mikropočítač.
Mohl byste mi prosím nědko poradit?
Děkuji

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý