/*********************************************** * * ************************************************/ #include #include #include #include #include #include "lv.h" #define T1 60. #define T2 65. #define T3 70. int stato[N_CHAMBERS][2]; main(argc, argv) int argc; char **argv; { LV_MBOX *mod; int evid; float datv[N_CHAMBERS][2]; int i; int cycle; int hra[6]; int nerr, nread; evid = sem_link_cr("lv_mbox", argv[0]); /* create module for sy127 informations */ if((mod = (LV_MBOX *)modlink("lv_mod", 0)) == (LV_MBOX *)-1){ printf(" cannot open data module \n"); sem_unl_del(evid, "lv_mbox", argv[0]); exit(0); } sem_wait(evid, argv[0]); for(i=0; i<6; i++) mod->creat_tim[i] = hra[i]; nread = mod->nread_t; nerr = mod->nerr_t; for(i = 0; i < 6; i++) hra[i] = mod->t_tim[i]; for( i = 0; i < N_CHAMBERS; i++) { stato[i][0] = mod->st[i][0]; stato[i][1] = mod->st[i][1]; datv[i][0] = mod->t[i][0]; datv[i][1] = mod->t[i][1]; } sem_free(evid, argv[0]); printf(" TEMPERATURE PROBES \n\n"); printf(" i Chamber Probe 1 Probe 2 \n"); printf(" Name T(C) T(C) \n\n"); for( i = 0; i < N_CHAMBERS; i++) { printf(" %2d CH%2s ", 1 + i, ch_name[ i ]); if (stato [i][0]) printf("%4.0f ", datv[i][0]); else printf(" -- "); if (stato [i][1]) printf("%4.0f ", datv[i][1]); else printf(" -- "); printf(" "); if ( datv[i][0] > T1 || datv[i][1] > T1 ) printf("! "); if ( datv[i][0] > T2 || datv[i][1] > T2 ) printf("! "); if ( datv[i][0] > T3 || datv[i][1] > T3 ) printf("! "); printf("\n"); } sem_unl_del(evid, "lv_mbox", argv[0]); }