Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
blak
9 / 9 / 0
Регистрация: 05.09.2010
Сообщений: 195
#1

Аппаратное прерывание от таймера,частота мерцания курсора - C++

25.12.2012, 23:23. Просмотров 526. Ответов 0
Метки нет (Все метки)

здравствуйте !подскажите пожалуйста как в этой программе перехватить частоту мерцания курсора и сделать так чтобы она мерцала раз в 3 секунды например!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Аппаратное прерывание от таймера, генерация звука от 700 до 1200 Гц каждые 3 секунды
#include <dos.h> 
#include <stdio.h>
#include <conio.h>
#include <bios.h>
 
unsigned long far *count =  (unsigned long far*) MK_FP(0x0040, 0x006c); // тут храниться время
 
void interrupt mybeep(...) // моё прерывание
{
    int i;
    if (*count % 54L == 0) // берем каждую 3 секунду 18*3
    {
        for(i = 0; i <= 1200; i++) 
            sound(700 + i/30);
        nosound(); 
    }
}
 
int main(void)
 {
    clrscr();
    void interrupt (*oldvect)(...);
    oldvect = getvect(0x1c); // получаем значение вектора прерываний
    setvect(0x1c, mybeep);  // создаем свое прерывание
    printf("Для выхода из тишины, нажмите любую клавишу...\n"); 
    getch();
    setvect(0x1c, oldvect);  // восстанавливаем значения
    return 0;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2012, 23:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Аппаратное прерывание от таймера,частота мерцания курсора (C++):

Через HyperTerminal доступна частота COM порта 921600, но в приложении максимальная частота гораздо меньше - C++
Через HyperTerminal доступна частота COM порта 921600, но когда я пишу на C++ максимальная частота гораздо меньше. Кто знает, как на с++...

Аппаратное программирование клавиатуры. - C++
Доброго времени суток всем. Есть определённая задача - сделать сброс клавиатуры не перезагружая компьютер. Нарыл в дебрях...

Что такое аппаратное прерывание? - C (СИ)
Пишу в эту тему, потому что хочется поучить аппаратное прерывание на си (пусть даже это будет ассемблерная вставка для получения...

Организовать аппаратное прерывание DOS - Assembler
Вопрос заключается в следующем: как организовать аппаратное прерывание? Конкретно нужно вот что: на любом этапе работы программы при...

Как в ms-dos настроить прерывание аппаратное по lpt порту? - Assembler
Почему может прерывание не работать не подскажете .MODEL tiny .386 .DATA oldSeg dw 0 oldOfs dw 0 base = 0378h .CODE...

Прерывание таймера 8h. - Assembler
Ребята, помогите. Задали задачку на асме. Необходимо переопределить прерывание таймера 8h, и каждые 5 секунд загонять в буфер клавиатуры...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2012, 23:23
Привет! Вот еще темы с ответами:

Изменить скорость мерцания курсора консоли - C#
Друзья, подскажите пожалуйста, можно ли средствами C# изменить скорость мерцания курсора консоли? Или только через Api?

Прерывание таймера T1 в ATMega16 - AVR
Доброго времени суток! Пишу программу для ATMega16 под VMLAB нужно обработать прерывание от таймера T1 (работает в режиме СТС) . Так вот...

Прерывание по переполнению таймера на Ардуино - Arduino
Не пойму это ардуина с прерываниями не работает или я туплю? #define led 5 void setup() { DDRB |= 1&lt;&lt;led; TCCR0B |=...

ATmega16. Настроить прерывание для таймера Т1 - Микроконтроллеры
помогите настроить таймер Т1


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru