/*************************************** * Test tvm743.c 06/08/1987 * * * ***************************************/ #include "std.h" char *ch_name[] = {"CH96", "CH61", "CH62", "CH94", "CH33", "CH34", "CH95", "CH41", "CH42", "CH93", "CH51", "CH52", "CH98", "CH81", "CH82", "CH92", "CH31", "CH32", "CH97", "CH21", "CH22", "CH91", "CH11", "CH12"}; main(argc,argv) int argc; char **argv; { char *command; int i, ch, todo; int base, tipo, level; unsigned char out_bits[8], in_bits[8]; int cpu_nr, tcp_ip_nr; char *hv_config[3]; if (argc < 3) usage(); upperword(argv[1]); upperword(argv[2]); if (strcmp(argv[2], "OK") != 0) usage(); printf (" prima di get_config() \n"); if (get_config( &tcp_ip_nr, &cpu_nr, hv_config) != 0){ printf (" error in get_config \n"); exit (0); } printf (" dopo get_config() \n"); todo = 0; for ( i = 0; i < 12; i++) if (strcmp(argv[1], ch_name[12 * (cpu_nr - 1) + i]) == 0) todo++; if (todo == 0 && strcmp(argv[1], "ALL") != 0) { printf (" Unknown Chamber Name \n"); usage(); } printf (" prima di TVM_Init(0) \n"); TVM_Init(0); /* PIT's inizialization */ printf (" dopo TVM_Init(0) \n"); for ( i = 0; i < 12; i++) { printf (" i = %d \n", i); if (strcmp(argv[1], ch_name[12 * (cpu_nr -1 ) + i]) == 0 || strcmp(argv[1], "ALL") == 0) { TVM_Switch(0, i * 2 + 1, "on"); } } printf (" dopo accensione livello alto \n"); sleep(1); printf (" dopo accensione sleep(1) \n"); for ( i = 0; i < 12; i++) if (strcmp(argv[1], ch_name[12 * (cpu_nr -1 ) + i]) == 0 || strcmp(argv[1], "ALL") == 0) { TVM_Switch(0, i * 2 + 1, "off"); printf("Chamber %s switched\n", ch_name[12 * (cpu_nr -1) + i]); } printf (" dopo spegnimento livello alto \n"); TVM_End(0); } usage() { printf("lv_toggle : switch ON/OFF ( toggle ) the LV Power Supplies\n"); printf(" of a Chamber acting on the 220V Supply\n\n\n"); printf("usage: lv_toggle Ch_name ok\n"); printf(" ( use command \"lv_status\" to see valid Ch_names\n"); printf(" and check their status before/after lv_toggle;\n"); printf(" the \"ok\"parameter is needed for security.\n"); exit(0); } upperword(str) char * str; { while ( *str++ = toupper(*str)) ; }