"Роберт Джордайн. Справочное пособие программиста - 2 (ассемблер, операционная система MS DOS)" - читать интересную книгу автораPCjr, поэтому его лучше не трогать. Выходная линия этого канала
связана с микросхемой прямого доступа к памяти [5.4.2] и ее им- пульс заставляет микросхему DMA обновить всю память. На PCjr канал 1 служит для преобразования входных данных с клавиатуры из последовательной в параллельную форму. PCjr не использует микрос- хему прямого доступа к памяти, поэтому когда он вместо этого прогоняет данные через процессор, то прерывание от таймера забло- кировано. Канал 1 используется для подсчета заблокированных им- пульсов часов времени суток, с тем чтобы можно было обновить значение счетчика после завершения дисковых операций. Канал 2 связан с громкоговорителем компьютера и он производит простые прямоугольные импульсы для генерации звука. Программисты имеют больший контроль над вторым каналом, чем над остальными. Простые звуки могут генерироваться одновременно с другими прог- раммными операциями, а более сложные звуковые эффекты могут быть достигнуты за счет использования процессора. Канал 2 может быть отсоединен от громкоговорителя и использоваться для синхрониза- ции. Наконец, выходная линия канала 2 связана с динамиком компью- тера. Однако динамик не будет генерировать звук до тех пор пока не сделаны определенные установки микросхемы интерфейса с перифе- рией 8255. Две входные линии для каждого канала состоят из линии часов, которая передает сигнал от микросхемы системных часов и линии, называемой воротами (gate), которая включает и выключает сигнал 1. Но они могут быть закрытыми для канала 2, что позволяет неко- торые специальные манипуляции со звуком. Ворота закрываются уста- новкой младшего бита порта с адресом 61H, который является ре- гистром микросхемы 8255; сброс этого бита снова открывает ворота. Эта микросхема обсуждается в [1.1.1]. Отметим что - как и выход канала 2 - бит 1 порта 61H связан с динамиком и также может ис- поьзоваться для генерации звука. На рис. 2-2 приведена диаграмма микросхемы таймера 8253. Микросхема таймера может использоваться непосредственно для временных операций, но это редко бывает удобным. Ввод с часов производится 1.19318 миллионов раз в секунду (даже на AT, где системные часы идут быстрее, микросхема таймера получает сигнал с частотой 1.19 Мгц). Поскольку максимальное число, которое может храниться в 16 битах, равно 65535 и поскольку это число делится на частоту импульсов от часов, равную 18.2, то максимальный воз- можный интервал между импульсами равен приблизительно 1/12 секун- ды. Поэтому большинство временных операций используют счетчик времени суток BIOS. Для подсчета времени читается значение време- ни суток и сравнивается с некоторым ранее запомненным значением для определения числа импульсов, прошедших с того момента. Спе- циальный способ, описанный в [2.1.7], позволяет испоьзовать счет- чик времени суток для операций в реальном времени. 8253 предоставляет разработчикам оборудования 6 режимов работы для каждого канала. Программисты обычно ограничиваются третьим |
|
|