Таймер на 8254
Подскажите плз... как используя м/сх сист.таймера
реализовать что-то типа генератора чачтоты (но не звуковой)
1. Если использовать канал 0 и изменить загрузку таймера, то как восстановить потом нормальную частоту генерации и испорченное время????? (лучше если будет больше ответов именно на канал 0 т.е. если использовать прерывание 8Н).
2. Если использ канал 2 то как организовать точную генерацию частоты...
ЗЫ:Смысл в том, что мне надо частота более 18,2 Гц.. И по приходу прерывания от таймера прога должна что-то делать....
Блин сам не понял что написал :) !!!!
Цитата:
Originally posted by murdor
ЗЫ:Смысл в том, что мне надо частота более 18,2 Гц.. И по приходу прерывания от таймера прога должна что-то делать....
ЗЫ:Смысл в том, что мне надо частота более 18,2 Гц.. И по приходу прерывания от таймера прога должна что-то делать....
В старадавние времена ДОС-а, делали следующим образом:
1. Сохраняли указатель на оригинальный Int8
2. Подставляли свой обработчик
3. Настраивали таймер
4. В нашем обработчике велся счетчик который показывал когда надо дернуть оригинальный обработчик, чтобы оригинальный обработчик вызывался 18,2 раз в секунду.
Да поповоду времени если ничего не делать, то время будет сбиваться только у ДОС-а, RTC работает самостаятельно (начиная с AT, в XT , был завязан) и ты всегда можешь вытащить реальное время.
Но лучше всетаки что-то делать, чтоб остальные проги не сходили с ума :)