Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 9 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Решил недавно написать небольшую програмку которая бы показывала температуру проца в ДОСе. Взялся за ассемблер. Но незнаю из какого порта доставать эту температуру. Подскажите может кто занимался такими вопросами.
Мать Epox 8RDA3I. Микросхема мониторинга Winbond W83627HF/F.
Или может есть уже готовая програмка?



Партнер
 

Member
Статус: Не в сети
Регистрация: 06.11.2004
Ищи даташит на свою мамку, если он есть...


 

датащита на мамку нету, а вот на Winbond W83627HF/F есть.
там есть два порта
Port 295h: Index port.
Port 296h: Data port.
Что с ними делать ума неприложу, т.к. в ассемблере максимально возможный порт это FFh.


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
Цитата:
т.к. в ассемблере максимально возможный порт это FFh

ЭЭЭ это почему так, вроде максимальный FFFFh (не помню точно с портами не работал, да и давно это было)

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
virus правильно думаешь:
Код:
xor dx, dx
mov dx, 295h
out dx, al

_________________
Ку ку


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
Daemon Я просто в молодости увлекался асмом под досом,
но работал в основном с памятью а не с портами (если быть точно с видио памятью)

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Advanced member
Статус: Не в сети
Регистрация: 13.11.2002
Откуда: msk.ru
Кстати, я тоже с видео. Ну еще и с клавой. Временами довольно прикольно получалось даже :)

_________________
Поддержка phpBB на русском языке - теперь официально!


 

Member
Статус: Не в сети
Регистрация: 20.06.2003
Откуда: Ижевск
Радиопират
Цитата:
там есть два порта
Port 295h: Index port.
Port 296h: Data port.
Что с ними делать ума неприложу, т.к. в ассемблере максимально возможный порт это FFh.

в индексный порт пишешь номер функции, дата порт - чтение данных.
Температура с процессорного датчика обычно регистр 27h, так что для её чтения
пишешь так:

Установим нулевой банк (см. комментарии ниже)

mov al, 4Eh
mov dx, 295h
out dx, al
inc dx
xor al, al ; ноль ;)
out dx, al

mov al, 27h
mov dx, 295h
out dx, al
inc dx ; 296h
in al, dx

и получаешь в al температуру. Остальные датчики читаются чуть сложнее (из других "банков"),
поэтому надо устанавливать перед чтением номер банка. По дефолту стоит нулевой банк.

Устанавливаем первый банк для второго датчика:

mov al, 4Eh
mov dx, 295h
out dx, al
inc dx
mov al, 1
out dx, al

читаем температуру:

mov al, 50h
mov dx, 295h
out dx, al
inc dx
in al, dx

аналогично с третьим датчиком (второй банк)

mov al, 4Eh
mov dx, 295h
out dx, al
inc dx
mov al, 2
out dx, al

mov al, 50h
mov dx, 295h
out dx, al
inc dx
in al, dx

может где и наглюкал, но смысл наверное понятен :)

для оптимизации переключение банков можно писать так:
mov ax, 4E02h
mov dx, 295h
out dx, ax

al уйдёт в порт 295h, ah в 296h (или наоборот?):oops:


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
awl в ветке обсуждения персоналки xKVector'а он получил необходимый код и советы :-)

_________________
Ку ку


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 9 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan