Контроллеры
Категория реферата: Рефераты по информатике, программированию
Теги реферата: шпаргалки по праву, диплом государственного образца
Добавил(а) на сайт: Lev.
Предыдущая страница реферата | 26 27 28 29 30 31 32 33 34 35 36 | Следующая страница реферата
SlRab<<=12;
}
/*------------------------------------------------------------------------*/
/* Процедура тест контроля ПО */
/*------------------------------------------------------------------------*/
void TestControlPO(void){
int Vprd1=0,Vmdd1=0,Vprg1=0,Vmdg1=0;
PO_Ok=Vmd_Ok=Vpr_Ok=0;
Vprg1=Vprg; /* сохраняем Vprg */
Vmdg1=Vmdg; /* сохраняем Vmdg */
Vprd1=Vprd; /* сохраняем Vprd */
Vmdd1=Vmdd; /* сохраняем Vmdd */
Vmdg=Vprg=speed;
Perevod_Md();
Perevod_Pr();
if (Vmdd!=200) { PO_Ok=1; Vmd_Ok=1; }
if (Vprd!=200) { PO_Ok=1; Vpr_Ok=1; }
/*----------------------------- 206 --------------------------------------*/
SlRab=0;
FormPTM(Vprd);
Adress=0x61;
Priznak_Usvic();/* признак от УСВИЦ-250 */
Priznak_Work(1,0);/* признак тест */
CalcChetSl();/* Подсчет четности */
if(SlRab!=1080820321) { PO_Ok=1; Vpr_Ok=1; }
/*----------------------------- 207 --------------------------------------*/
SlRab=0;
FormPTM(Vmdd);
Adress=0xe1;
Priznak_Usvic();/* признак от УСВИЦ-250 */
Priznak_Work(1,0);/* признак тест */
CalcChetSl();/* Подсчет четности */
if(SlRab!=3228304097) { PO_Ok=1; Vmd_Ok=1; }
SlRab=0;
/*------------------- востанавливаем состояния --------------------------*/
Vprg=Vprg1; /* востанавливаем Vprg */
Vmdg=Vmdg1; /* востанавливаем Vmdg */
Vprd=Vprd1; /* востанавливаем Vprd */
Vmdd=Vmdd1; /* востанавливаем Vmdd */
}
/*------------------------------------------------------------------------*/
/* Процедура проверки скорости < 50км(200), => - нет вычисленных данных */
/*------------------------------------------------------------------------*/
void If_Speed(unsigned int V){
if(V<200) Priznak_Work(0,1); /* признак нет вычисленных данных */
}
/*------------------------------------------------------------------------*/
/* Запуск таймера */
/*------------------------------------------------------------------------*/
void Zapusk(void){
/*---------- Чистка рабочих областей параметров--------------*/
SlRab=0;NomParam=0;
/*------------- Запуск таймера --------------------------*/
asm(" mov TCON,#1 ");
asm(" anl IP,#0 ");
asm(" orl IP,#2 ");
asm(" mov TMOD,#01 ");
asm(" mov a,#0eah "); /* число для загрузки таймера */
asm(" mov TH0,a "); /* 65536-20*36-685+67, где старшая часть */
asm(" mov a,#0d3h "); /* равна eah, а младшая - d3h */
asm(" mov TL0,a ");
asm(" setb TCON.4 ");
asm(" anl IE,#0 ");
asm(" orl IE,#82h ");
}
/*------------------------------------------------------------------------*/
/* Процедура растановки признаков проверок */
/*------------------------------------------------------------------------*/
void Priznak_Test(void){
if((PK_Vpr==0) && (Vpr_Ok==0) && (Vmd_Ok==0) && (PO_Ok==0))
SlRab_bit28=0;
else SlRab_bit28=1;
SlRab_bit27=PK_Vpr;
SlRab_bit26=Vpr_Ok;
SlRab_bit25=Vmd_Ok;
SlRab_bit24=PO_Ok;
}
/*------------------------------------------------------------------------*/
/* Процедура разовой команды ТЕСТ КОНТРОЛЬ */
/*------------------------------------------------------------------------*/
void Test_Kontrol(void){
int V=0;
/* vvodvmd(); */
ImVxodMd(); /* имитация входа Vmd */
Perevod_Md(); /* перевод из грея в двоичную */
/* vvodvpr();*/ ImVxodPr(); /* имитация входа Vmd */
Perevod_Pr(); /* перевод из грея в двоичную */
/*----------------- Сохраняем тестовое значение --------------------------*/
V=Vprd;
/*----------------- Прабавляем тестовое значение -------------------------*/
Vprd+=166*4;
/*----------------- Тест на наличие Vmd >= Vpr ---------------------------*/
if(Vprd>=Vmdd) { RXD=0; PK_Vpr=1; }
else { RXD=1; PK_Vpr=0; }
Рекомендуем скачать другие рефераты по теме: методы изложения, сочинение евгений онегин.
Предыдущая страница реферата | 26 27 28 29 30 31 32 33 34 35 36 | Следующая страница реферата