![]() |
|
|
![]()
|
|
| АНТОН |
|
|||
|
Unregistered |
Подскажите на какие регистры ссылается программа при проверки времени на компе!!!!!
ОТВЕТТЕ ПОЖАЙЛУСТА!! |
|||
|
||||
| SlavaS |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 5.5.2002 Репутация: нет Всего: нет |
Привожу описание микросхемы таймера. (i8253)
Он имеет 3 канала (порты 40H-42H). Нулевой канал замкнут на контроллере прерываний и является источником аппаратного прерывания от таймера, которое возникает 18,2 раза в секунду. 1 канал связан с DMA, 2-й с динамиком. Все каналы таймера одинаковы: -регистр ввода-вывода (8 бит), -регистр- защёлка (16 бит), -регистр- счётчик (16 бит). Регистры связаны след. образом. В регистр ввода- вывода извне помещается некоторое значение (источником может быть системное прерывание либо программа пользователя). Каждый регистр ввода- вывода имеет адрес в адесном пространстве ввода- вывода (номер порта). Регистр ввода-вывода канала 0- это 40h, 1-41h, 2-42h. Помещаемые в него значения немедленно попадают в регистр- защёлку (регистр- фиксатор), где значение сохраняется до тех пор, пока в регистр ввода- вывода не будет записано новое значене. Для согласовыния регистров по разрядности существует регистр управления (порт 43h), который является частью механизма управления всей микросхемой таймера. Он содержит слово состояния, с помощью которого производятся выбор канала, задание режма работы канала и тип операции передачи значения в канал. Структура слова состояния: бит 0: тип константы пересчёта (значения, загружаемого извне в регистр- защёлку). 0-двоичное число, 1- BCD (двочно- десятичное число). биты 1-3: режим работы микросхемы таймера. Всего их шесть. Обычно используется третий- 011; биты 4-5: определяют тип операции. 00-передать значение счётчика в регистр-задвижку (т.е. возможна не только операция записи значения в канал, но и извлечения значения регистра-счётчка из него). 10- записать в регистр только старший байт, 01- только младший байт, 11- сначала старший, а затем младший. биты 6-7: номер программируемого канала. Вроде всё... А! На каналы таймера подаются импульсы от микросхемы системных часов, которые, по сути, представляют собой генератор импульсов с частотой 1,19 МГц. При считывании времени через прерывание (irq 0) оно обновляется 18,2 раза в секунду. Я понимаю, тебе надо чаще... Если есть какие-то вопросы, интересует контроллер прерываний и его регистры, пиши- [email protected] А то очень долго и много про него писать. С наилучшими пожеланями, Вячеслав. |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |