Гореща молба
16 отговора
0 прегледа
Гореща молба
Обръщам се с молба да погледнете тази библиотека и да ми кажете какво не е наред в нея и как евентуално да се коригира. Не разбирам от тази материя, затова ще ви обясня с прости думи, дано ме разберете.
Библиотеката е писана на C и C++, предназначена е за комуникиране посредством различни интерфейси. Доколкото зная, RS232 работи, но IEEE1394 - не и точно в това е проблемът. Мисля, че липсва и някакъв файл, което пречи библиотеката да се генерира наново. Целта е комуникацията по IEEE1394 да тръгне.
Става дума за дипломна работа на студент в чужбина, молбата ми е ако може някой - да даде едно рамо до два-три дни. Ще се отблагодаря подобаващо.
[линк]
Благодаря.
Библиотеката е писана на C и C++, предназначена е за комуникиране посредством различни интерфейси. Доколкото зная, RS232 работи, но IEEE1394 - не и точно в това е проблемът. Мисля, че липсва и някакъв файл, което пречи библиотеката да се генерира наново. Целта е комуникацията по IEEE1394 да тръгне.
Става дума за дипломна работа на студент в чужбина, молбата ми е ако може някой - да даде едно рамо до два-три дни. Ще се отблагодаря подобаващо.
[линк]
Благодаря.
Re: Гореща молба
Благодаря. Предадох на студентката, но тя каза, че я има инсталирана и това не помага.
no, it doesn't help
so this NIALLib refered to this library also
This NIAL is only interface to this library libraw1394
Съжалявам, но тя не говори български, затова се явявам посредник.
no, it doesn't help
so this NIALLib refered to this library also
This NIAL is only interface to this library libraw1394
Съжалявам, но тя не говори български, затова се явявам посредник.
Re: Гореща молба
Трябва ни повече информация за проблема. Кажи и да ни прати нейна снимка по бански.
Re: Гореща молба
... Доколкото зная, RS232 работи, но IEEE1394 - не и точно в това е проблемът. Мисля, че липсва и някакъв файл, което пречи библиотеката да се генерира наново. Целта е комуникацията по IEEE1394 да тръгне.
Целия код на библиотеката NIALLib липсва така че ако нещо вътре не работи както трябва то няма начин да се оправи. Google нищо не знае за тази библиотека така че и сорс кода не може да се намери.
Ако крайната цел е да се направи комуникация само през IEEE1394 моя съвет е да се използва директно libraw1394...
Целия код на библиотеката NIALLib липсва така че ако нещо вътре не работи както трябва то няма начин да се оправи. Google нищо не знае за тази библиотека така че и сорс кода не може да се намери.
Ако крайната цел е да се направи комуникация само през IEEE1394 моя съвет е да се използва директно libraw1394...
Re: Гореща молба
Казах и. Отвърна ми, че не е редно така - със снимки. Настоява да се видите наживо.
Re: Гореща молба
Благодаря много! А как би могла да използва libraw1394 директно? Към коя функция да се обърне първо?<P ID="edit"><FONT class="small">
raw1394_new_handle() and then raw1394_set_port(). is it enough to open IEEE1394?
raw1394_new_handle() and then raw1394_set_port(). is it enough to open IEEE1394?
Редактирано от devaluator на
Re: Гореща молба
Да погледне в онлайн документацията [линк]
след сетване на порта следващата стъпка е инициализация на връзката
[линк]
ако пусне в Google search някоя функция от API-то ще излязат разни сорсове.. оттам може да види също как стават нещата
след сетване на порта следващата стъпка е инициализация на връзката
[линк]
ако пусне в Google search някоя функция от API-то ще излязат разни сорсове.. оттам може да види също как стават нещата
Re: Гореща молба
За нищо.. Ето един пример за изпращане на данни:
За получаване се използват аналогичните raw1394_iso_recv_init() и raw1394_iso_recv_start().
// callback function for transmission
static int xmit_packet(raw1394handle_t handle, unsigned char *data,
unsigned int *len, unsigned char *tag,
unsigned char *sy, unsigned int cycle,
unsigned int dropped)
{
*len = writeSomeData(data); // here you copy some data to the buffer and return the bytes copied
// the size of data copied must be equal or less than value of max_packet_size passed to raw1394_iso_xmit_init()
*tag = 1;
*sy = 0;
}
int main(int argc, char *argv[])
{
raw1394handle_t handle;
handle = raw1394_new_handle();
if(!handle) {
perror("raw1394_new_handle");
return -1;
}
do {
int which_port = 0;
if (raw1394_get_port_info(handle, NULL, 0) <= which_port) {
fprintf(stderr, "Port %d does not exist.\n",
which_port);
return 1;
}
raw1394_set_port(handle, which_port);
} while (errno == ESTALE);
if(errno) {
perror("raw1394_set_port");
return 1;
}
/*
buf_packets = 8000;
max_packet_size = 584;
channel = 63;
speed = RAW1394_ISO_SPEED_200;
irq_interval = -1;
*/
if(raw1394_iso_xmit_init( handle,
xmit_packet,
8000,
584,
63,
RAW1394_ISO_SPEED_200,
-1 )) {
perror("raw1394_iso_xmit_start");
return 1;
}
if(raw1394_iso_xmit_start(handle, -1, -1)) {
perror("raw1394_iso_xmit_start");
return 1;
}
while(1) {
if(raw1394_loop_iterate(handle)) {
perror("raw1394_loop_iterate");
return 1;
}
}
return 0;
}
За получаване се използват аналогичните raw1394_iso_recv_init() и raw1394_iso_recv_start().
Re: Гореща молба
И от кога дира оцветява така добре кода? :) Някакви параметри ли трябват? Или бруте форце с [цвет-карантия/]? :]]
Re: Гореща молба
Ми вече е основен едитор на програмистите - не знаеше ли?
Прави го онлайн.
Bеer? Mоre?
Плацебото
Прави го онлайн.
Bеer? Mоre?
Плацебото
Re: Гореща молба
Намираш c++ парсер, сетваш callback функция която да ти се вика на всеки token и добавяш каквито си искаш тагове преди/след в зависимост от вида му. В дир-а единствения начин който открих да ми запазва интервалите в началото на редовете е с тага [ pre ] само че недостатъка е че слага по два нови реда вместо един. Може аз нещо да правя не както трябва не знам.
Re: Гореща молба
И на мен ми прави същото :/.. Може да е от \r\n под Виндовс.. Трябва да пробвам ако поствам от Линукс дали ще прави същото.
General Protection Fault in module 0xDEEBAA. Рестартирайте държавата!
General Protection Fault in module 0xDEEBAA. Рестартирайте държавата!
Re: Гореща молба
Майтап майтап, ама има вече и такива. [code="fortran"] оно рипва да го оцветява :)[/code] и после пита дали да го компилира и изпълни :).