incteil();
return 0;
}
void priembig(void)
{ int a;
a=priem();
switch (a)
{ case 0: printf("Принято %d\n",d); break;
case 1: printf("Тайм-аут\n"); break;
case -1: printf("ErorCode=%d\n",errcode); inportb(base);
}
}
#define pi 3.1416
// Возвращает главное значение ARCTAN [0..2*pi]
double mARCTAN(double z_sin,double z_cos)
{ double ang;
if (z_sin==0)
{ if (z_cos<0) return (pi/2.0);
else return (1.5*pi);
}
ang=-atan(z_cos/z_sin);
if (z_sin<0) ang+=pi;
if (ang<0) ang+=2*pi;
return ang;
}
char getsym(void)
{ char a;
a=area[teil]; incteil();
return a;
}
//---------------------------------
void exitp(void) //!!! необходимо вызывать перед выходом из программы
{
disable();
reseterr();
outportb(MCR,8); //rts=0 out2=1
restorevect(); // восстановить обработчик
outportb(IMR,(inportb(IMR)|rgmask)); // запретить прерывание
enable();
}
int get_size(void) // возвращает число байт в буфере
{ int i;
if ( (i=(head-teil))<0 ) i+=cbuf;
return i;
}
//===== отобразить информацию ==================
void outinfo(void)
{ char a; char str1[40];
while ( (get_size()>=1) & (!kbhit()) )
{
printf(" %X",(int)getsym());
if (errcode!=0) { printf("ErrCode=%d\n",errcode);
errcode=0;
}
}
}
struct dostime_t w,w1;
doubleat,bt;
void fix_time(void) // фиксирует системное время во внутреней переменной
{
_dos_gettime(&w);
at=(double)(w.hour*360000+w.minute*6000+w.second*100+(double)w.hsecond);
}
double get_time(void) // возвращает время прошедшее с момента последнего
// фиксирования
{
_dos_gettime(&w1);
bt=(double)(w1.hour*360000+w1.minute*6000+w1.second*100+(double)w1.hsecond);
bt-=at;
return bt;}
int wait(int x)
{ fix_time();
while (get_size()<x)
{ if (get_time()>(double)(x*4)) return 0;
}
return 1;}
#define Esc 27
#define sym_S 83
#define sym_W 87
#define sym_Z 90
#define sym_A 65
//====================================
void main(void)
{ char hpl,hph,ch; char mas[100];
int j,i,jh;
long li;
int cos,sin,sh,am;
double sr;
// printf("my_dt=%7.4f \n",(mARCTAN(14927.0,-28113.0)/pi*2000));
// return ;
init(); initrs();
clrscr();
Transb(85);
Transb(6);
Transb(0);
while (!kbhit()) // { Transb(85); delay(100); }
outinfo();
me:
errcode=0;
clearbofkey();
exitp();
}
Девиз: "Не отступать и не сдаваться!"
1. Приемно-адаптерный прибор пожарной сигнализации.
2. УДК 614.842.4
3. КИИ МЧС Республики Беларусь.
4. 2000 год.
5. Объём работы: 44 с.
6. Количество приложений: 3
7. Количество иллюстраций: 3
8. Количество таблиц: 2
9. Источников литературы: 16.
Характеристика работы.
1. Цель: Обеспечение возможности автоматизированной компьютерной обработки информации систем пожарной сигнализации.
2. Методы: анализ технических решений, опытно-конструкторская проработка, программирование.
Основные результаты: разработан проект конструкции приемно-адаптерного прибора пожарной сигнализации и программа информационного обмена.
Наличие документа об использовании научных результатов: да.
подпись автора ______________
об авторе и научном руководителе работы,
представленной под девизом: «Не отступать и не сдаваться!»
1.Хегстрем 2.Сергей3.Сергеевич4. 45. 220118, Республика Беларусь, г. Минск, улица Машиностроителей, 25. | 1.Мисюкевич2.Николай3.Стефанович4.Командно-инженерный институт Министерства по чрезвычайным ситуациям Республики Беларусь5. 056. 17. 28. 220075, г. Минск, улица А. Бачило 5, кв. 68 |
Автор работы ______________
1. Приемно-адаптерный прибор пожарной сигнализации.
2. 45
3. УДК 614.842.
4. 2
5. нет.
6. да.
7. нет.
8. нет.
9. Пожарная автоматика. Пожарная сигнализация. Приемно-контрольное оборужование.
Научный руководитель _____________