lmmir 发表于 2010-2-25 21:21:15

关于 CPU 温度 和风扇转速

最近在写EPC的CPU温度 风扇转速获取方法

问题
在获取CPU温度和风扇转速后
再次循环获取 CPU温度,数据就出现错误了,为什么?
做了缓冲区满空判断
下面是判断代码

void check_buffer(int in_out,int port)
{
        DWORD dw_temp=0;
        GetPortVal(port,&dw_temp,1);
        if(in_out==INPUT)
        {
                while(dw_temp&0x02)
                {
                        GetPortVal(port,(&dw_temp),1);
                        dw_temp=(BYTE)dw_temp;
                        Sleep(5);}
        }
        else if(in_out==OUTPUT)        
{
                while(!(dw_temp&0x01))
                {
                        GetPortVal(port,&dw_temp,1);
                        dw_temp=(BYTE)dw_temp;
                        Sleep(50);
                }
        }

}

alize123456 发表于 2010-2-26 15:24:49

能告诉我你是怎么读的吗

lmmir 发表于 2010-2-26 16:28:00

已经找到问题了
在setportval 前后 都要进行一次缓冲区输入检测,原来我只是在setportval 前检测了,后没检测。
页: [1]
查看完整版本: 关于 CPU 温度 和风扇转速