Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Отчеты по практике » Розробка програми контролю виробів і підготовка програмної документації

Реферат Розробка програми контролю виробів і підготовка програмної документації





------------------------------ ----------------- __fastcall TDevFather :: ~ TDevFather () {}

// --------------------------------------------- ----------------- int __fastcall TDevFather :: link_on ()

{return 0;}

// --------------------------------------------- ----------------- int __fastcall TDevFather :: link_off ()

{return 0;}

// --------------------------------------------- -----------------// Функції для роботи з мостом

int __ fastcall TDevFather :: scan ()// Повертає ознака стану пристрою

{

//

return receiver_size;

}

// --------------------------------------------- ------------------------------

int __ fastcall TDevFather :: read ()// Якщо позитивне число, то це число прийнятих байт, якщо від'ємне, то це код помилки

{

//

return receiver_size;

}

// --------------------------------------------- ------------------------------

char * __ fastcall TDevFather :: get_receiver_ptr ()//

{

return receiver;

}

// --------------------------------------------- ------------------------------

int __ fastcall TDevFather :: write (char * chs, int size)

{

return size;

}

// --------------- TCom ----------------------------- -------------- __fastcall TCom :: TCom (char * comname, int baudrate)

{

//

TCom :: comname = comname;// = "COM1";

TCom :: baudrate = baudrate;// = 115200;

active = false;

}

// --------------------------------------------- ----------------- __fastcall TCom :: ~ TCom ()

{

//

if (active)

{

link_off ();

}

}

// --------------------------------------------- ----------------- int __fastcall TCom :: link_on ()

{

//

if (! active)

{

com_hndl = CreateFile (comname.c_str (), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, 0);

if (com_hndl == INVALID_HANDLE_VALUE)

{

// MessageBoxA (0, "Invalid handle value "," Simple_COM ", MB_OK);

active = false;

return -1;

}

// налаштування параметрів з'єднання

st_dcb.DCBlength = sizeof (DCB);

st_dcb.Parity = NOPARITY;// NOPARITY, ODDPARITY, MARKPARITY, EVENPARITY

st_dcb.StopBits = ONESTOPBIT;// ONESTOPBIT, ONE5STOPBITS, TWOSTOPBITS

st_dcb.ByteSize = 8;// 4-8

st_dcb.BaudRate = baudrate;// CBR_115200

SetCommState (com_hndl, & st_dcb);

if (com_hndl == INVALID_HANDLE_VALUE)

{

// MessageBoxA (0, "Invalid handle value "," Simple_COM ", MB_OK);

active = false;

return -1;

}

SetupComm (com_hndl, 40000, 40000) ;//розміри банків

if (com_hndl == INVALID_HANDLE_VALUE)

{

// MessageBoxA (0, "Invalid handle value "," Simple_COM ", MB_OK);

active = false;

return -1;

}

SetCommMask (com_hndl, EV_RXCHAR);

if (com_hndl == INVALID_HANDLE_VALUE)

{

// MessageBoxA (0, "Invalid handle value "," Simple_COM ", MB_OK);

active = false;

return -1;

}

active = true;

};

if (! active)

{

return -1;

} else {

return 0;

}

}

// --------------------------------------------- ----------------- int __fastcall TCom :: link_off ()

{

//

if (active)

{

active = false;

CloseHandle (com_hndl);

return 0;

}

else

{

active = false;

return -1;

}

}

// --------------------------------------------- ----------------- int __fastcall TCom :: scan ()// Повертає ознака стану пристрою

{

COMSTAT st;

unsigned long Err;

if (active)

{

if (ClearCommError (com_hndl, & Err, & St))

{

return st.cbInQue;

}

else

{

// MessageBoxA (0, "Com scan error "," Simple_COM ", MB_OK);

return -1;

}

}

else

{

return 0;

}

}

// --------------------------------------------- ----------------- int __fastcall TCom :: read ()// Якщо позитивне число, то це число пінятих байт, якщо від'ємне, то це код помилки

{

COMSTAT st;

unsigned long Err;

unsigned long readed_bytes;

//

readed_bytes = 0;

if (active)

{

if (ClearCommError (com_hndl, & Err, & St))

{

if ((Err & CE_BREAK)> 0)

{

// MessageBoxA (0, "Com read error: CE_BREAK "," Simple_COM ", MB_OK);

return -2;

}

if (0x1000> st.cbInQue)

{

if (! ReadFile (com_hndl, receiver, st.cbInQue, & readed_bytes, NU...


Назад | сторінка 10 з 11 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Return to materialism
  • Реферат на тему: Докладне вивчення роботи фінансової функції ДАТАКУПОНДО, яка повертає число ...
  • Реферат на тему: Число Пі
  • Реферат на тему: Число як суще
  • Реферат на тему: Ірраціональне число