Простички програмки
написани за собствено удоволствие и обучение. Свободни за ползване от всеки, комуто вършат работа.
Програмите са писани на C с чувство за отговорност и стремеж да не съдържат грешки. Сканирани са за вируси с Malwarebytes Premium и не са открити вируси или други заплахи. Въпреки това ползването на програмите е единствено на ваша собствена отговорност.

LVA_receiver.zip

Програмка за приемане данни от LVA Geiger Counter v. 2.1

Пуска се от DOS prompt на Windows. Параметрите се задават от командната линия. Програмката е толкова проста, че дори краткия помощен текст, с който тя самата се описва е достатъчен:

C:\Education\LVA_Receiver>LVA_RECEIVER /h
Written by LZ1FW in February 2018.
/C : port number.
/W : welcome message to be sent
/P : file preffix
/S : file suffix
Example: LVA_RECEIVER /C 4 /W HELO /P R1W1_ /S _A
         The file name will be: R1W1_02041256_A.txt
Press F (capital letter F, not small f) for exit.

C:\Education\LVA_Receiver>

След /C трябва да напишете към кой комуникационен порт е свързана UART платката на LVA гайгер мюлеровия брояч (LVA GC). Възможни са стойности от 1 до 255. Програмката работи с фиксираните за LVA GC стойности за скорост, брой битове за данни и стоп битове и четност.

При стартирането си програмата може да изпрати команда към LVA GC. Командата е текста след ключ /W. Примерно при "/W HELO" LVA GC ще отговори с черната част от реда по-долу:

04.02.2018 10:55:52,   14, O HAI,336,44
червената част показва датата, час, минута и секунда на приемане на отговора и броят байтове, който съдържа отговора. Червената част не се предава от LVA GC, а допълнително се добавя от програмата за отразяване хронологията на комуникацията.

Програмата записва получените от LVA GC данни във файл. Името на файла съдържа задължителна част, състояща се от годината, месеца, деня, часа и митутата на създаването му. Примерно ако програмата се стартира в 13:37 часа на 04.02.2018 то тя ще създаде файл 1804031337.txt. Към тази задължителна част могат да се добавят префикс и суфикс, съответно с параметри "/P" и "/S". Използването на префикси и суфикси е особено удобно когато към един компютър са свързани два LVA GC. В този случай се отварят два DOS прозореца и се пускат едновременно две копия на програмата, но с различни параметри. Двете програми пишат в една и съща папка, но файловете с данни да различните LVA GC са различни. Примера на паралелна работа с два LVA GC е показан на картинката.

Ако програмата се остави да работи дълго време, то точно в полунощ тя ще създаде нов файл във който ще продължи да зиписва данните. Така за всеки отделен ден от продължителната й работа ще е наличен отделен файл, с име съдържащо префикси и суфикси, ако такива са зададени при стартирането на програмата.

Работата на програмата се прекъсва с натискате на голяма буква F.


Сорс кодове

Сорс кодовете на програмата са включени в LVA_receiver.zip

От мен е писан само модул RX.C. Останалите части са намерени в интернет и са писани от други.

Файловете са компилирани с minGW. Начина за компилиране е показан по-долу.

C:\Education\LVA_Receiver>dir
 Volume in drive C has no label.
 Volume Serial Number is 0C35-61F4

 Directory of C:\Education\LVA_Receiver

06.02.2018  21:03    <DIR>          .
06.02.2018  21:03    <DIR>          ..
03.02.2018  19:40             3 488 rs232.c
04.02.2018  10:55             9 161 rx.c
28.01.2018  19:10             2 067 serialport.h
               3 File(s)         14 716 bytes
               2 Dir(s)  279 829 364 736 bytes free

C:\Education\LVA_Receiver>gcc rx.c rs232.c -o LVA_RECEIVER.EXE

C:\Education\LVA_Receiver>dir
 Volume in drive C has no label.
 Volume Serial Number is 0C35-61F4

 Directory of C:\Education\LVA_Receiver

06.02.2018  21:05    <DIR>          .
06.02.2018  21:05    <DIR>          ..
06.02.2018  21:05            63 425 LVA_RECEIVER.EXE
03.02.2018  19:40             3 488 rs232.c
04.02.2018  10:55             9 161 rx.c
28.01.2018  19:10             2 067 serialport.h
               4 File(s)         78 141 bytes
               2 Dir(s)  279 829 291 008 bytes free

C:\Education\LVA_Receiver>

Обратно