?? 復件 computer2.c
字號:
{
Max192(0, 23, 5);
if (send_kpa) { send_kpa = 0; TXD_pc(0); }
if (Adend > 900) continue;
if (Adend < 120) {if (Speed_V != 1) {TXD_c(5); Speed_V = 1;} goto ZL1; }
if (Adend < 260) {if (Speed_V != 2) {TXD_c(6); Speed_V = 2;} goto ZL1; }
else
{
DJ_run = 0; TR0 = 0; ET0 = 0; TXD_c(3); P_max = Adend;
TXD_pc(0);
do
{
i = RXD_c();
if (i==5 || i==7) TXD_pc(i);
if (RS_input)
{
RS_input = 0;
if (RS_buf[0] == 5) break;
if (RS_buf[0] == 7) goto ZL4;
}
}while(1);
over = 0; TXD_c(14); /*手動處理*/
sa_v = V_ml;
ZL3:
do
{
if (i == 3)
{
if (DJ_run == 0) { TXD_c(2); DJ_run = 1; }
TR0 = 1; ET0 = 1;
Max192(0, 21, 5);
if (C_run)
{
TXD_pc(0x0a); C_run = 0;
Disp_2(Adend / 3);
Display(21, 7, 3, 5, V_ml, 1);
}
if (V_ml >= 100)
{
TXD_c(3); TXD_c(13);
for (i=0; i<0xff; i++) RXD_c();
DJ_run = 0; TR0 = 0;
ET0 = 0; over = 1;
goto ZL4;
}
}
i = RXD_c();
if (RS_input)
{
RS_input = 0;
if (RS_buf[0] == 7) i = 7;
}
if (i == 7) { over = 1; TXD_c(13); break; }
} while (i == 5);
TR0 = 0; ET0 = 0;
if (DJ_run) { TXD_c(3); DJ_run = 0; }
if (over)
{
V_ml=sa_v;
for (i=0; i<0xff; i++) { _nop_();_nop_();RXD_c(); }
goto ZL4;
}
goto ZL3;
}
ZL1:
if (P_max < Adend) P_max = Adend;
if (C_run)
{
C_run=0;
TXD_pc(0x0a);
Disp_2(Adend/3);
if (over==0) Display(23,7,3,5,V_ml,1);
if (V_ml>=100)
{
DJ_run = 0; TR0 = 0;
ET0 = 0; TXD_c(3);
over = 1;
goto ZL4;
}
}
if (RS_input)
{
RS_input = 0;
switch (RS_buf[0])
{
case 5: break;
case 6:
{
if (DJ_run) { DJ_run = 0; TR0 = 0; ET0 = 0; TXD_c(3); continue; }
DJ_run = 1;TR0 = 1; ET0 = 1;
TXD_c(2);
} break;
case 7: goto ZL5;
default: break;
}
}
if (DJ_run)
{
if (Paus == 0)
{
if (pause == 0) {pause = 1;TR0 = 0;ET0 = 0;TXD_c(3);}
}
else
{
if (pause) {pause = 0;TR0 = 1;ET0 = 1;TXD_c(2);}
}
}
i = RXD_c();
if (i==6 ||i ==7) TXD_pc(i);
} while (1);
ZL5:
TXD_c(3); DJ_run = 0; TR0 = 0; ET0 = 0;
do
{
i=RXD_c();
if (i==5 || i==7) TXD_pc(i);
if (RS_input)
{
RS_input = 0;
switch (RS_buf[0])
{
case 5: goto ZL4;
case 7:
{
TXD_c(2); DJ_run = 1;
TR0 = 1; ET0 = 1;
goto ZL1;
}break;
}
}
} while(1);
ZL4:
do
{
i = RXD_c();
if (i == 5) TXD_pc(i);
} while (!RS_input);
RS_input = 0;
if (RS_buf[0] != 5) goto ZL4;
}
/**************************************/
/**************測量宮容****************/
/**************************************/
void GL()
{
uchar i;
uchar *p;
bit over, pause = 0;
zs=0; over = 0;
Link(15, 220, 300, 0);
Link(15, 60, 160, 1);
DOT_s(16, 12, 94, 32, 0);
p = &DRAG_1[menu][0];
p = TXT1;
CW_PR(1, 6, p);
Display(4, 5, 0, 4, 260, 1);
Display(4, 7, 1, 5, 150, 1);
do
{
Max192(0, 23, 5);
if (Adend > 900) continue;
if (Adend < 120) { if (Speed_V != 1) { TXD_c(5); Speed_V=1; } goto GL1; }
if (Adend < 260) { if (Speed_V != 2) { TXD_c(6); Speed_V=2; } goto GL1; }
else { P_max = Adend; goto GL2; }
GL1: if (P_max < Adend) P_max=Adend;
if (C_run)
{
C_run = 0;
Disp_2(Adend / 3);
if (over == 0) Display(23, 7, 3, 5, V_ml, 1);
if (V_ml >= 150)
{
GL2: DJ_run = 0; TR0 = 0; ET0 = 0;
TXD_c(3); over = 1;
p = &string5[0][0];
Display(29, 3, 4, 5, V_ml, 1);
do { i = RXD_c(); } while (i == 0);
goto GL4;
}
}
if (DJ_run)
{
if (Paus == 0)
{
if (pause == 0) {pause = 1;TR0 = 0;ET0 = 0;TXD_c(3);}
}
else
{
if (pause) {pause = 0;TR0 = 1;ET0 = 1;TXD_c(2);}
}
}
i = RXD_c();
if (i == 4)
{
if (DJ_run == 1)
{
DJ_run = 0; TR0 = 0;
ET0 = 0; TXD_c(3);
continue;
}
DJ_run = 1; TR0 = 1; ET0 = 1; TXD_c(2);
}
} while (i != 5);
TXD_c(3); DJ_run = 0; TR0 = 0; ET0 = 0;
do
{
i = RXD_c();
if (i == 5) { TXD_c(2); DJ_run=1; TR0=1; ET0=1; goto GL1; }
if (i == 3) break;
} while (1);
GL4:
do { i = RXD_c(); } while (!(i==3 || i==5));
if (i == 3)
{
do { i = RXD_c(); }while (i == 0);
}
}
/*********************************/
/*************擴宮****************/
/*********************************/
void KG()
{
uchar i, b;
uchar *p;
bit over, pause = 0;
P_max = 450; b = 0;
zs = 0; over = 0;
Link(15, 220, 300, 0);
Link(15, 60, 160, 1);
DOT_s(16, 12, 94, 32, 0);
p = &DRAG_1[menu][0];
p = TXT1;
CW_PR(1, 6, p);
Display(4, 5, 0, 4, P_max, 1);
Display(4, 7, 1, 5, 150, 1);
DJ_back = 0;
do
{
Display(4, 5, 0, 4, P_max, 1);
Max192(0, 23, 5);
if (Adend > 900) continue;
if (Adend < P_max)
{
if (Speed_V != 2) { TXD_c(6); Speed_V = 2; }
}
else /* 壓力大了,電機后退 */
{
if ( DJ_back==False )
{
if (V_ml < 1) goto KG4;
DJ_back = 1; TXD_c(1);
}
}
KG1:
if (C_run)
{
C_run = 0;
if (DJ_back == 1)
{
if (b >= 10) {DJ_back=0;TXD_c(2);b++;} else b++;
if (V_ml == 0) {DJ_back=0;TXD_c(2);b++;}
}
else
{
if (b>0) b--;
}
if (DJ_back==0 && b==0) Disp_2(Adend / 3);
if (over == 0) Display(23, 7, 3, 5, V_ml, 1);
if (V_ml >= 150)
{
DJ_run=0; TR0=0; ET0=0; TXD_c(3); over=1;
do { i=RXD_c(); }while (i == 0);
goto KG4;
}
}
if (DJ_run)
{
if (Paus == 0)
{
if (pause == 0) {pause = 1;TR0 = 0;ET0 = 0;TXD_c(3);}
}
else
{
if (pause) {pause = 0;TR0 = 1;ET0 = 1;TXD_c(2);}
}
}
i = RXD_c();
if (i == 4)
{
if (DJ_run == 1) { DJ_run=0; TR0=0; ET0=0; TXD_c(3); continue; }
DJ_run=1; TR0=1; ET0=1; TXD_c(2);
}
if (i == 1) { if (P_max < 500) P_max += 10; }
if (i == 2) { if (P_max > 260) P_max -= 10; }
}while( i != 5);
TXD_c(3); DJ_run = 0; TR0 = 0; ET0 = 0;
do
{
i = RXD_c();
if (i == 5) { TXD_c(2);DJ_run=1;TR0=1;ET0=1;goto KG1; }
if (i == 3) break;
}while (1);
KG4:
do { i = RXD_c(); }while (!(i==3 || i==5));
if (i == 3)
{
do { i=RXD_c(); }while (i == 0);
}
}
/***************************************/
/**************畫壓力曲線***************/
/***************************************/
void Disp_2(uchar ad)
{
uchar i,j,save_x;
uchar *p;
uchar xdata *mem;
j = 219-ad;
i = V_ml; i--;
mem = &M8155;
mem = mem + i;
*mem = ad;
save_x = 15 + V_ml;
if (V_ml == 1) save_y = j;
if (save_y > j) /* 畫上線 */
{
for (i=0; i<=save_y-j; i++) W_DOT(save_x, save_y-i);
}
if (save_y < j) /* 畫下線 */
{
for (i=0; i<=j-save_y; i++) W_DOT(save_x, save_y+i);
}
W_DOT(save_x, j);
save_y = j;
p = &string5[zs][0];
if (zs >= 4) zs = 0; else zs++;
}
/****************************************************/
/********************輸液量顯示**********************/
/****************************************************/
void Display(uchar o_x,uchar o_y,uchar id,uchar id1,uint x,bit open)
{
uchar *p;
uchar i;
p = M_D.list;
if (id==4 || id==5) i = 3; else i = 8;
strcpy(p, str_3[id]);
p = &M_D.list[i-3];
sprintf(p, "%u", x);
if (x <= 9)
{
M_D.list[i] = M_D.list[i-3];
M_D.list[i-1] = 0x2e;
M_D.list[i-2] = 0x30;
M_D.list[i-3] = 0x30;
goto Disp_1;
}
if (x <= 99)
{
M_D.list[i] = M_D.list[i-2];
M_D.list[i-1] = 0x2e;
M_D.list[i-2] = M_D.list[i-3];
M_D.list[i-3] = 0x30;
goto Disp_1;
}
else { M_D.list[i] = M_D.list[i-1]; M_D.list[i-1] = 0x2e; }
Disp_1:
p = &M_D.list[i+1]; strcpy(p, str_3[id1]);
M_D.list[i+4] = 0xff;
p = M_D.list;
if (open) CW_PR(o_x, o_y, p);
}
/***************MAX192********************/
void Max192(uchar i,uchar o_x,uchar o_y)
{
uchar j,k;
k = i;
for (j=0; j<=3; j++)
{
AD = k;
io_clock = 0;
data_in = 0;
io_cs = 0;
AD <<= 4;
AD |= 0x8e;
for (i=0; i<8;i++)
{
data_in = AD_7;_nop_();_nop_();_nop_();
io_clock = 1; _nop_();_nop_();_nop_();
io_clock = 0; _nop_();_nop_();_nop_();
AD <<= 1;
}
_nop_(); _nop_(); io_cs = 1;
AD = 0;
for (i=0; i<=32; i++) {;};
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -