Эмулятор взаимодействия RTC, CPU и таймера

Низкоуровневое программирование портов, микроконтроллеров и т.д.

Модератор: Andy

Ответить
Alexandr
Сообщения: 2
Зарегистрирован: 23 май 2004, 15:28

Мне нужно написать эмулятор взаимодействия RTC, CPU и системного таймера. А я не очень понимаю что эта программа должна делать: как написать что это эмулятор, что должно вводится, что должно на экран выводится, с чего вообще следует начинать. Растолкуйте, если не трудно.
Andy
Сообщения: 238
Зарегистрирован: 17 фев 2004, 08:15
Откуда: Минск

Я тоже не понимаю :) Во первых надо уточнить для каких целей писать. Во-вторых очень уж туманное условие. Что понимать под взаимодействием? Что понимать под эмуляцией?
*provided AS IS
Alexandr
Сообщения: 2
Зарегистрирован: 23 май 2004, 15:28

курсовая работа у меня такая. А по поводу взаимодействия - это студент сам должен придумать. Я придумать не могу, вот и спрашиваю. Мне хоть основы какието узнать, что это вообще такое
Andy
Сообщения: 238
Зарегистрирован: 17 фев 2004, 08:15
Откуда: Минск

Что это такое в двух словах не опишешь. RTC - это регистры CMOS, что такой CPU и таймер думаю понятно. Что могу предложить:
  • Для начала описать систему и нарисовать ее блок схему. Блок CPU, блок CMOS имеющий внешние выходы (то есть порты, от которых стрелку завести на большой блок - регистры RTC), блок Таймер. Блоки связать как надо. Вобщем как фантазии хватит.
  • Далее описать процесс взаимодействия этих частей на примере базовых процедур (к примеру назовем одну из них ПолучениеТекущейДаты).
  • Расписать эту процедуру на ассемблере через RTC (строчек 10 будет)
  • Взять Delphi :)
  • Перенести блок-схему на форму, добавить индикации и менюшек
  • Написать код эмулирующий элементарную процедуру взаимодействия. Например:
    ВыборРегистраRTC:

    Код: Выделить всё

       mov al,REGISTER_NUMBER
       out 70h,al
    
  • Парсить такие элементарные процедуры в составе базовой и выводить инфу - произошла такая запись, выбран такой-то регистр - т.е. показывать как происходит взаимодействие.
  • Остальное по вкусу...
Возможно я усложняю (упрощаю???). Но я бы сделал примерно так. А вот основы узнать надо. Но порекомендовать из литературы ничего не могу...
*provided AS IS
Ответить