Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как узнать температуру платы и проца

282
02 августа 2006 года
Bard
481 / / 26.02.2006
Я хочу зделать програмку, которая в компактном виде выводит на екран состояние оперативной памяти, текущюю емкость винчестера, уровень производительности (текущюю скорость проца), тампературу мат.платы и температуру проца. Датчики там кажись стоят, потому что AIDA выводи такую инфу. Мне надо заюзать ету инфу со своей программы.
354
03 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Ну можно наверное как-то в bios залезть, но вообще существует замечательная вещь - WMI. Там есть несколько классов:
Цитата:

Win32_Fan Represents the properties of a fan device in the computer system.
Win32_HeatPipe Represents the properties of a heat pipe cooling device.
Win32_Refrigeration Represents the properties of a refrigeration device.
Win32_TemperatureProbe Represents the properties of a temperature sensor (electronic thermometer).



Есть еще вот что:
http://www.edelweiss45.narod.ru/Delphi/TEMP.html

282
03 августа 2006 года
Bard
481 / / 26.02.2006
Мне бы под VB... Я с WMI мало знаком.
354
03 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Второй примерчик - я ссылку дал. там не надо WMI знать. Надо драйвер написать. А что проще/сложнее я не знаю... я в WMI тоже не особо :-)))
Могу помочь - попытаться драйвер соорудить. :-))) но никакого VB, только VC++ :о)
282
03 августа 2006 года
Bard
481 / / 26.02.2006
А я в драйверописании вообще профан :). Но если ты знаеш как писать драйвера - посвяти меня в ето дело.
354
05 августа 2006 года
ШпиЁн
468 / / 19.02.2006
У меня не хватает ntstrsafe.h. Там функции форматированного вывода в строку, которую драйвер передает потом нашему приложению. DbgPrint выводит это сообщение отладчику, и вроде сам драйвер работает, НО не будешь же все время смотреть смотреть температуру проца через SoftICE. У тебя(или коллег) есть DDK?
282
05 августа 2006 года
Bard
481 / / 26.02.2006
[QUOTE=ШпиЁн]У тебя(или коллег) есть DDK?[/QUOTE]

Нет :(
354
05 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Мдяяя.... новый DDK я сливать не стану - 174 мега мой старенький модем не выдержит... я тут тему насчет этого запостил - может найдутся добрые люди и скинут мне эти два несчастных файла..:-))))
354
09 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Немного теории... Чипы на разных мамах - разные и никакой универсальности НЕТ! К какждому чипу свой метод доступа. можно лишь научить программку их распознавать.
Я нашел описание двух способов доступа - через ISA 290h и через SMBus. Я попробовал самый простой - через ISA.

После перелопачивания кучи сайтов были найдены исходники xmbmon под linux. Небольшая переделка под Win32, и вот что у меня получилось - смотри вложение.

Как это работает...
Я соорудил программулину, которая НЕ определяет датчики. Она работает только с датчиком ITE IT8712F. Посмотреть какой у тебя стоит датчик можно через проги типа Everest(я через него смотрел). Если у тебя другой датчик - показания будут неправильны!!! (насчет порчи оборудования я сильно сомневаюсь) Скачав исходники xmbmon можно "заточить" эту прогу под твой датчик. работы - минимум:о) (я в linux'е вообще не особо, можно сказать никогда и не кодил под него, все что нужно - это немного здравого смысла и пара банок пЫва :-Р )

Так. Теперь о самой проге. Драйвер sensor.sys кидаешь на диск C:. Далее просто запускаешь load.exe - консольная программулина - с окном лень было писать. Она загрузит драйвер как сервис, драйвер выплюнет инфу. Кстати, я хотел чтобы она и напряжение выводила, но операции с float невозможны в kernel mode.

P.S. Как это все криво! Я писал драйвер чтобы напрямую работать с портами из него, ибо ассемблерные in\out запрещены в винде. Но есть другой способ... в одной из прошлых ссылок (см. выше) описывается способ через драйвер giveio.sys(он разрешает нам работу с портами из кольца пользователя). Втом случае НЕ НУЖНО писать драйвер(как у меня), а все функции из isa.h(в моей проге) можно вызывать из обычной проги(хоть на Delphi). Хотел я сразу сделать так, но лень меня одолела, лето и все такое... Короче, если не сможешь переделать сам - я могу сделать, это недолго.
354
09 августа 2006 года
ШпиЁн
468 / / 19.02.2006
вау, народ, раз скачали - выскажите свое мнение, я собираюсь написать такую профессиональную программулину, мне очень интересно будет послушать вас... :о)
282
09 августа 2006 года
Bard
481 / / 26.02.2006
Преувиличивает температуру проца на 50%!
354
09 августа 2006 года
ШпиЁн
468 / / 19.02.2006
какой у тебя датчик, ты проверил? а все остальное верно показывает? у меня все как и в Everest. Матплата старенькая правда, Gigabyte GA-8IPE1000, чипсет i865PE.
282
09 августа 2006 года
Bard
481 / / 26.02.2006
[QUOTE=ШпиЁн]какой у тебя датчик, ты проверил?[/QUOTE]
Winbond W83627HF
354
09 августа 2006 года
ШпиЁн
468 / / 19.02.2006
!!!!!!!!!
я же написал, что прога заточена под мой датчик ITE IT8712F, и что разные интерфейсы у ВСЕХ датчиков.

Мне другое просто протестить не на чем :-)))
Сам попробуешь из xmbmon переделать?(это несложно), или мне сделать? это час займет, не более...
282
09 августа 2006 года
Bard
481 / / 26.02.2006
Да нет, спасибо, я уж как-то сам постараюсь. Просто делать свою затею я собираюсь на VB а не на C.
Главное, теперь я знаю в какую сторону копать :)
354
09 августа 2006 года
ШпиЁн
468 / / 19.02.2006
:-)))) окей, если что не получается - пиши в этой теме, я похоже, буду делать точно тоже тока на VC++....
7
08 ноября 2006 года
@pixo $oft
3.4K / / 20.09.2006
А может,лишние 50 градусов-последствия перевода из Цельсия в Кельвины?Если хочешь,дам формулы
354
08 ноября 2006 года
ШпиЁн
468 / / 19.02.2006
Нет, к разным датчикам надо обращаться по разным адресам - вот суть :) просто по этому адресу лежит хлам какой-нибудь, вот и показывает + 50....
36K
28 мая 2008 года
Avatar_SBV
1 / / 16.02.2008
вот ссылка. там все рассписал http://www.programmersforum.ru/archive/index.php/t-5420.html
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог