Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ 3

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ № 3

"Ознайомлення з програмною моделлю таймера ПК

та стандартним системним звуковим каналом".

Сигнал для управления динамиком формируется в результате совместной работы микросхем:

- программируемого периферийного интерфейса і8255 (для ХТ) и і8242 (для АТ);

- таймера і8253.

Основная генерация звука производится микросхемой таймера, имеющей три канала с одинаковой структурой и принципом работы. На каналы таймера подаются импульсы от микросхемы системных часов с частотой 1,19 МГц. Каждый канал имеет два входа и один выход. Канал 0 замкнут на контроллер прерываний и является источником аппаратного прерывания от таймера, возникающего 18,2 раза в секунду. Канал 1 связан с микросхемой прямого доступа к памяти. Канал 2 выходит на динамик компьютера. В состав каждого канала входят:

- регистр ввода-вывода разрядностью 8 бит,

- регистр-защелка (16 бит),

- регистр-счетчик (16 бит).

Каждый регистр ввода-вывода имеет адрес в адресном пространстве ввода-вывода (номер порта ввода-вывода). Регистр ввода-вывода канала 2 имеет номер порта ввода-вывода 42h. Помещаемые в него значения немедленно попадают в регистр-защелку, где значение сохраняется, пока в регистр ввода-вывода не будет записано новое значение. Выбор канала осуществляется обращением к регистру управления (порту 43h), входящему в состав таймера и содержащему слово состояния следующей структуры:

- бит 0 - тип константы пересчета (0 - двоичное число, 1 - двоично-десятичное);

- биты 1-3 - режим работы таймера (в данной работе использовать режим 3);

- биты 4-5 - 00-передать значение счетчика в регистр-защелку; 01-записать в регистр-защелку младший байт; 10-записать в регистр-защелку старший байт; 11-записать в регистр-защелку сначала старший байт, а затем - младший (в данной работе использовать значение 11);

- биты 6-7 определяют номер канала (в данной работе использовать значение 10).

Подачей тока на динамик управляет бит 1 порта 61h. Бит 0 порта 61h открывает или закрывает выход канала.

Для генерации (второй канал таймера прямоугольных импульсов, загружаемые в порт 42 значения (value) должны быть четными:

 

Value =  1193181/f   (f - частота звукового сигнала)

Таким образом, для программирования звукового канала таймера необходимо:

- посредством порта 43h выбрать канал, задать режим работы и тип операции передачи значения в канал;

- подать ток на динамик установив в 1 бит 1 порта 61h;

- поместить в порт 42h значение, соответствующее высоте тона.

  1.  Составить две функции: вида void идентификатор (unsigned int Tn), где Tn – продолжительность звучания (или паузы) представлена рядом констант:

Tn=T0=4 сек

Tn=T0T=6 сек

Tn=T2=2 сек

Tn=T2T=3 сек

Tn=T4=1 сек

Tn=T4T=1,5 сек

Tn=T8=0,5 сек

Tn=T8T=0,75 сек

Tn=T16=0,25 сек

Tn=T16T=0,375 сек

Tn=T32=0,125 сек

Tn=T32T=0,187 сек

Tn=T64=0,062 сек

Tn=T128=0,031 сек

для генерации звука с заданными значениями частот, определяемых идентификаторами:

1

С0=65 Гц,

D0=74 Гц

2

E0=82 Гц,

F0=87 Гц

3

G0=98 Гц,

A0=110 Гц

4

В0=116 Гц,

Н0=124 Гц

5

С=130 Гц,

D=148 Гц

6

E=164 Гц,

F=174 Гц

7

G=196 Гц,

A=220 Гц

8

B=232 Гц,

H=248 Гц

9

C1=260 Гц, 

D1=296 Гц

10

E1=328 Гц,

F1=348 Гц

11

G1=392 Гц,

A1=440 Гц

12

B1=464 Гц,

H1=496 Гц

13

C0D=69 Гц,

D0D=78 Гц

14

F0D=92 Гц,

G0D=104 Гц

15

CD=138 Гц,

D0=156 Гц

16

FD=184 Гц,

GD=208 Гц

17

C2=520 Гц,

D2=592 Гц

18

E2= 656 Гц,

F2=696 Гц

19

G2=784 Гц,

A2=880 Гц

20

B2=928 Гц,

H2=992 Гц

21

C1D=276 Гц,

D1D=312 Гц

22

F1D=368 Гц,

G1D=416 Гц

23

C2D=552 Гц,

D2D=624 Гц

24

F2D=736 Гц,

G2D=832 Гц

25

C3=1040 Гц,

D3=1184 Гц

26

E3=1312 Гц,

F3=1392 Гц

27

G3=1568 Гц,

A3=1760 Гц

и функцию паузы вида void P (unsigned int Tn).

Таблица 2. Частота нот хроматической гаммы

До

До#

Ре

Ре#

Ми

Фа

Фа#

Соль

Соль#

Ля

Ля#

Си

Октава

1

2

3

4

5

6

7

8

9

10

11

12

Контроктава

33

35

37

39

41

44

46

49

52

55

58

62

13

14

15

16

17

18

19

20

21

22

23

24

Большая

65

69

73

78

82

87

92

98

104

110

117

123

25

26

27

28

29

30

31

32

33

34

35

36

Малая

131

139

147

156

165

175

185

196

208

220

233

247

37

38

39

40

41

42

43

44

45

46

47

48

Первая

262

277

294

311

330

349

370

392

415

440

466

494

49

50

51

52

53

54

55

56

57

58

59

60

Вторая

523

554

587

622

659

698

740

784

831

880

932

988

61

62

63

64

65

66

67

68

69

70

71

72

Третья

1047

1109

1175

1245

1319

1397

1480

1568

1661

1760

1865

1976

73

74

75

76

77

78

79

80

81

82

83

84

Четвертая

2093

2217

2349

2489

2637

2794

2960

3136

3322

3520

3729

3951

Точка рядом с нотой увеличивает ее длительность на половину.

Требования к оформлению лабораторной работы

Работа должна быть оформлена как в виде твердой копии, так и в электронном варианте (на диске). На диске должны быть представлены файлы с исходными программными кодами и соответствующий компилированный вариант (.exe). Исходный код должен содержать краткие комментарии и соответствовать требованиям “хорошего стиля” программирования.

Работа выполняется в тетради и содержит описание хода выполнения задания (назначение разрабатываемой программы в целом и ее функциональных модулей-функций, описание работы программы и ее функциональных модулей, полный исходный код программы на алгоритмическом языке высокого уровня С/С++.

Пример записи исходного программного кода:

# include <заголовочный файл>

# define T0   // описательные

......................................

# define T128   // константы (14 - значений )

void E (...);

void E2 (...);   // объявление прототипов функций

void P (...);

void main (  )

{

E(T0); P(T32); E2(T4); E(T0); P(T4); и т.д. последовательно из 10-12 составленных Вами функций

}

void E (...)

{ }

void E2 (...)   // определение функций

{ }

void P(...)

{ }

К заданию 2 предъявляются аналогичные требования. В задании 2 необходимо продемонстрировать сравнительное звучание системного звукового сигнала со звуком с определенной Вами частотой.

Некоторые замечания. При модификации битовых значений регистров-портов, допускающих чтение и запись (R/W), необходимо сохранить исходное состояние битов регистра во временной переменной для их последующего восстановления в заключительной части программного кода.

Мелодии.

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.

30.

31.




1. ВАРИАНТ 2 1. Какой сплав используется при изготовлении штампов и контрштампов
2. то граница и в нем нет места приключениям
3. Тема 6 11- Исследование муки
4. происшествий ежедневно можно встретить рубрику
5. Дата рождения- дата время MS ccess
6. 51 Зимник А.В. Прийняв- Пухтаевич Г.html
7. Othersideru- Перевод- Wicked Редактура- Калле Лайла Оформление- Wicked Аннотация Все любят прекрасного
8. реферат дисертації на здобуття наукового ступеня кандидата політичних наук Льв
9. реферат дисертації на здобуття наукового ступеня кандидата медичних наук
10. I hve never pretended to be nything but story teller
11. Пророк Алмустафа избранный и возлюбленный заря своего дня двенадцать лет ждал в городе Орфалесе возвр
12. Анализ коммуникативных стратегий в общественно-публицистическом дискурс
13. Лекція 4 Тренінги та ігри в цілях особистісного зростання План 1
14.  Перевод с французского Дягилевъ Центръ
15. 0002 ~діалектика та методологія пізнання А в т о р е ф е р а т дисертації на здобуття науковог
16. Сотрудница уходит в декретный отпуск1
17. Оплата и мотивация труда
18. Руководитель Чмырь И
19. Оказание платных медицинских услуг
20. походить від латинського invest