| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Узнать температуру |
| Автор: Delphist 20.4.2005, 15:45 |
| Как узнать температуру проца + скорость вращения вентилятора. Только не говорите что это не возможно. Внизу исходник на асме. Мож кто перевести его может! |
| Автор: chipset 21.4.2005, 00:33 |
| Есть теги _asm вроде ;) |
| Автор: AISIN 4.5.2005, 23:42 |
| Я знаю в компьютер вставляется микросхема LM79. Она может: контролировать температуру, управлять вентиляторами, контроль вскрытия системного блока. для определения вращения вентилятора. номер базового порта base=0х290 получаем текущее значение счетчика outPort(Base+5,0х28.1) //читаем значение регистра конфигурации dwResult=0; inPort(Base+5, 0x28,1) uCur=dwResult; //проверяем крутится ли вентилятор if(uCur==0xFF) return 0; outPort(Base+5,0x47,1)///получим значение делителя inPort(Base +6 ,&dwResult,1)//читаем значение делителя switch(Cooler) { case 1: uC=1<<((dwResult>>4)&0x03); break; case 2: uC=1<<((dwResult>>6)&0x03); break; case 3: uC=2 } //считаем кол-во оборотов в мин для вентилятора(1350000/(uC*uCur)); |
| Автор: Leksey 10.5.2005, 22:37 |
| AISIN можно поподробнее о функциях: inPort и outPort |
| Автор: AISIN 10.5.2005, 23:24 | ||
| Leksey программирование этих функций зависит от того какая у тебя операционка. Допустим в winde2000 нужно работать с драйверами устройства. А в winde98 необязательно использовать драйверы, а можно и использовать... Аргументы inPort и outPort первый аргумент номер порта, второй передает или получает значение от порта, а третий определяет размер передаваемых данных. Допустим Для 98
|