/p>
GetCommTimeouts (hCom, & TimeOuts);. ReadIntervalTimeout=100;. ReadTotalTimeoutMultiplier=1;. ReadTotalTimeoutConstant=100; (hCom, & TimeOuts);
Параметр ReadIntervalTimeout визначає максимальний час, в мілісекундах, між надходженням двох символів в лінії зв'язку. Протягом дії ReadFile, період часу починається тоді, коли отриманий перший символ. Якщо інтервал між надходженням будь-яких двох символів перевищує цю кількість, дію ReadFile завершується.
Далі, в основному циклі роботи функції Execute () відбувається читання послідовності байт через порт COM1:
unsigned long g=1; work1 [2], work2 [2]; (! Terminated)
{= ReadFile (hCom, work1, g, & g, 0); ((fSuccess) && (g> 0))
{
{= ReadFile (hCom, work2, g, & g, 0); ((fSuccess) && (g> 0))
{[index]=work1 [0] | (work2 [0] << 8); + +; (index == 16)
{();=0;
}
}
} while ((fSuccess) && (g> 0));
}
}
Читання проводиться функцією ReadFile. Відповідно з роботою апаратури Контроль, спочатку зчитується молодший байт інформаційного слова, потім - старший. За пришестя 16 інформаційних двобайтових слів відбувається виклик функції-члена класу DecodePacket, що здійснює розкодування прийнятої інформації відповідно до таблиці 2.1.
3.5 Структура використовуваної бази даних
Розроблена структура бази даних буде приведена у вигляді таблиць, кожна з яких представляє собою окремий файл. У кожній таблиці буде представлено чотири стовпці:
опис поля бази даних;
найменування поля;
тип даних;
розмірність (якщо потрібно).
Перед кожною таблицею буде наведено короткий опис того, для чого буде використовуватися ця таблиця в розробляється.
1. Рейкові кола (RCs)
Ця таблиця містить в собі інформацію про рейкових ланцюгах. За кодом ділянки, коду перегону і коду кодового колійного трансмітера здійснюється зв'язок даної таблиці, з таблицями містять допоміжні дані:
Таблиця 3.1 - Структура таблиці рейкових кіл
ОпісаніеНаіменованіе поляТіп даннихРазмерностьКод участкаNumSiteShortКод перегонаNumFrictSiteShortНомер стикаNumJunctionShortНомер светофораNameSignalAlpha20Номер трансляції, до якої належить дана рейкова цепьNumTranslationShortКод кодового колійного трансміттераNumKPTShort
2. Ділянки (Sites)
Таблиця, пов'язана по коду ділянки з таблицями RCs і FrictSites. Cодержит в собі інформацію про залізничні ділянках.
Таблиця 3.2 - Структура таблиці залізничних ділянок
ОпісаніеНаіменованіе поляТіп даннихРазмерностьКод участкаNumSiteShortНазваніе участкаNameSiteAlpha30
. Перегони (FrictSites)
Таблиця, пов'язана по коду ділянки з таблицею ділянок Sites і за кодом перегону - з таблицею рейкових кіл RCs. Ця таблиця містить в собі інформацію про залізничні перегонах, що належать конк...