📄 cal_spo2.c
字号:
#include "global.h"
uint spo1;
uint spo[6];
uint rat00[10];
uint ratio;
ulong srg00;
uint pp=0,pp2=0;
uint IRR;
uint aq[2]={0,0};
uint bq[2]={0,0};
uint abi,ai,bi;
void cal_spo2(void)
{
uchar pg2,pm,pm2;
uint s_ratio,s_spo;
if(rg0_r!=0)
{
srg00=100*(ulong)(rg0_ir);
IRR=srg00/rg0_r;
if(aq[0]==0)
{
if(bq[0]==0)
{
aq[0]=IRR;
}
if(bq[0]!=0)
{
if(bq[0]>=IRR)
{
bi=bq[0]-IRR;
}
if(bq[0]<IRR)
{
bi=IRR-bq[0];
}
if(bi<=6)
{
bq[1]=bq[0];
bq[0]=IRR;
rat00[pp2]=(bq[0]+bq[1])/2;
pp2++;
if(pp2==10)
{
pp2=0;
}
}
if(bi>6)
{
aq[0]=IRR;
}
}
}
if(aq[0]!=0)
{
if(aq[0]>=IRR)
{
ai=aq[0]-IRR;
}
if(aq[0]<IRR)
{
ai=IRR-aq[0];
}
if(ai<=6)
{
aq[1]=aq[0];
aq[0]=IRR;
bq[1]=0;
bq[0]=0;
rat00[pp2]=(aq[0]+aq[1])/2;
pp2++;
if(pp2==10)
{
pp2=0;
}
}
if(ai>6)
{
if(bq[0]==0)
{
bq[0]=IRR;
}
if(bq[0]!=0)
{
if(bq[0]>=IRR)
{
abi=bq[0]-IRR;
}
if(bq[0]<IRR)
{
abi=IRR-bq[0];
}
if(abi<=6)
{
bq[1]=bq[0];
bq[0]=IRR;
aq[1]=0;
aq[0]=0;
rat00[pp2]=(bq[0]+bq[1])/2;
pp2++;
if(pp2==10)
{
pp2=0;
}
}
if(abi>6)
{
bq[0]=IRR;
}
}
}
}
if(rat00[9]==0)
{
ratio=rat00[pp2-1];
}
if(rat00[9]!=0)
{
s_ratio=0;
for(pg2=0;pg2<10;pg2++)
{
s_ratio+=rat00[pg2];
}
ratio=s_ratio/10;
}
//TXBUF0=ratio;
// while((UTCTL0&0X01)==0);
switch(ratio)
{
case 171:
case 170:
case 169:
case 168:
case 167:
case 166:
case 165:spo1=99;break;
case 164:
case 163:
case 162:
case 161:
case 160:
case 159:
case 158:
case 157:
case 156:
case 155:
case 154:
case 153:
case 152:
case 151:
case 150:
case 149:
case 148:spo1=98;break;
case 147:
case 146:
case 145:
case 144:
case 143:
case 142:spo1=97;break;
case 141:
case 140:
case 139:
case 138:
case 137:
case 136:spo1=96;break;
case 135:
case 134:
case 133:
case 132:
case 131:spo1=95;break;
case 130:
case 129:
case 128:
case 127:
case 126:
case 125:
case 124:
case 123:spo1=94;break;
case 122:
case 121:
case 120:
case 119:
case 118:spo1=93;break;
case 117:
case 116:
case 115:
case 114:spo1=92;break;
case 113:
case 112:
case 111:
case 110:spo1=91;break;
case 109:
case 108:
case 107:spo1=90;break;
case 106:
case 105:
case 104:spo1=89;break;
case 103:
case 102:
case 101:spo1=88;break;
case 100:
case 99:
case 98:spo1=87;break;
case 97:
case 96:
case 95:spo1=86;break;
case 94:
case 93:
case 92:spo1=85;break;
case 91:
case 90:
case 89:
case 88:spo1=84;break;
case 87:
case 86:spo1=83;break;
case 85:
case 84:spo1=82;break;
case 83:
case 82:spo1=81;break;
case 81:
case 80:spo1=80;break;
case 79:
case 78:spo1=79;break;
case 77:
case 76:spo1=78;break;
case 75:spo1=77;break;
case 74:
case 73:spo1=76;break;
case 72:
case 71:spo1=75;break;
case 70:
case 69:spo1=74;break;
case 68:
case 67:spo1=73;break;
case 66:
case 65:spo1=72;break;
case 64:
case 63:spo1=71;break;
case 62:
case 61:spo1=70;break;
}
if(spo[5]==0)
{
for(pm=5;pm>0;pm--)
{
spo[pm]=spo[pm-1];
}
spo[0]=spo1;
spo2=spo[0];
}
if(spo[5]!=0)
{
spo[pp]=spo1;
pp++;
if(pp==6)
{
pp=0;
}
s_spo=0;
for(pm2=0;pm2<6;pm2++)
{
s_spo+=spo[pm2];
}
spo2=s_spo/6;
}
//}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -