Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

АВМиС - бывшее АПЭВМ / лекции - что-то похожее / 04 Таймер и генерация звука

.asc
Скачиваний:
27
Добавлен:
15.09.2014
Размер:
16.31 Кб
Скачать

4. ’ ©¬Ґа Ё ЈҐ­Ґа жЁп §ўгЄ 

4.1. Џа®Ја ¬¬ЁагҐ¬л© в ©¬Ґа 8253

„«п § ¤ ­Ёп ўаҐ¬Ґ­­ле Ё­вҐаў «®ў Ё д®а¬Ёа®ў ­Ёп бЁЈ­ «®ў б
а §«Ёз­л¬Ё ўаҐ¬Ґ­­л¬Ё Ї а ¬Ґва ¬Ё ў IBM PC/XT ЇаЁ¬Ґ­пҐвбп
Їа®Ја ¬¬ЁагҐ¬л© в ©¬Ґа 8253 (®вҐзҐб⢥­­л©  ­ «®Ј Љђ580‚Ќ53), ў
AT - 8254. ‘ в®зЄЁ §аҐ­Ёп Їа®Ја ¬¬Ёбв  ®­Ё Ё¤Ґ­вЁз­л. ‚ б®бв ў
в ©¬Ґа  ўе®¤пв: ЎгдҐа иЁ­л ¤ ­­ле, б奬  гЇа ў«Ґ­Ёп
ўў®¤®¬-ўлў®¤®¬ Ё ваЁ ­Ґ§ ўЁбЁ¬ле Є ­ « , Є ¦¤л© Ё§ Є®в®але
ᮤҐа¦Ёв ॣЁбва ०Ё¬ , б奬г гЇа ў«Ґ­Ёп Є ­ «®¬, ЎгдҐа Ё
16-а §ап¤­л© бзҐвзЁЄ.

Џа®Ја ¬¬Ёа®ў ­ЁҐ Є ­ «  ®бгйҐбвў«пҐвбп Їг⥬ ўлў®¤ 
гЇа ў«пойЁе б«®ў ў ॣЁбва ०Ё¬  Є ­ «®ў Ё ­ з «м­®Ј® §­ зҐ­Ёп
ў ҐЈ® бзҐвзЁЄЁ. Љ ¦¤л© Є ­ « Ё¬ҐҐв гЇа ў«пойЁ© ўе®¤ GATE Ё ўл室
OUT Ё ¬®¦Ґв а Ў®в вм ў ®¤­®¬ Ё§ б«Ґ¤гойЁе иҐб⨠०Ё¬®ў.

ђҐ¦Ё¬ 0 (ЇаҐалў ­ЁҐ вҐа¬Ё­ «м­®Ј® бзҐв ). Џ®б«Ґ § ЇЁбЁ
гЇа ў«по饣® б«®ў  ў ॣЁбва ०Ё¬  Є ­ «  ­  ўл室Ґ ЋUT
гбв ­ ў«Ёў Ґвбп ­ Їа殮­ЁҐ ­Ё§Є®Ј® га®ў­п; § Јаг§Є  бзҐвзЁЄ  ­Ґ
Ё§¬Ґ­пҐв нв® б®бв®п­ЁҐ. ‡ вҐ¬ ­ зЁ­ Ґвбп ¤ҐЄаҐ¬Ґ­в бзҐвзЁЄ 
(Ї®б«Ґ¤®ў вҐ«м­®Ґ ўлзЁв ­ЁҐ Ё§ ­ҐЈ® Ґ¤Ё­Ёжл). ‚ ¬®¬Ґ­в, Є®Ј¤ 
бзҐвзЁЄ ®Ў­г«Ёвбп, ­  ўл室Ґ OUT гбв ­®ў«Ёў Ґвбп ­ Їа殮­ЁҐ
ўлб®Є®Ј® га®ў­п Ё б®еа ­пҐвбп ¤® § Јаг§ЄЁ бзҐвзЁЄ  ­®ўл¬
§­ зҐ­ЁҐ¬. ‘зҐв ў®§¬®¦Ґ­ в®«мЄ® ЇаЁ ­ «ЁзЁҐ бЁЈ­ «  ўлб®Є®Ј®
га®ў­п ­  ўе®¤Ґ GATE. ЌЁ§ЄЁ© га®ўҐ­м нв®Ј® бЁЈ­ «  Ё«Ё
­ЁбЇ ¤ ойЁ© да®­в § ЇаҐй ов бзҐв.

ЏҐаҐ§ Јаг§Є  бзҐвзЁЄ  ў® ўаҐ¬п ЇаЁў®¤Ёв Є б«Ґ¤го饬г:
§ Јаг§Є  ¬« ¤иҐЈ® Ў ©в  ®бв ­ ў«Ёў Ґв ⥪гйЁ© бзҐв, § Јаг§Є 
бв а襣® Ў ©в  § ЇгбЄ Ґв ­®ўл© жЁЄ« бзҐв . ЊЁ­Ё¬ «м­® ¤®ЇгбвЁ¬®Ґ
§­ зҐ­ЁҐ бзҐвзЁЄ  а ў­® 2.

ђҐ¦Ё¬ 1 (¦¤гйЁ© ¬г«мвЁўЁЎа в®а). Ќ  ўл室Ґ OUT д®а¬ЁагҐвбп
®ваЁж вҐ«м­л© Ё¬Їг«мб ¤«ЁвҐ«м­®бвмо t=n*T, Ј¤Ґ n - зЁб«®,
§ Ја㦥­­®Ґ ў бзҐвзЁЄ, T - ЇҐаЁ®¤ в Єв®ўле Ё¬Їг«мб®ў. ЌЁ§ЄЁ©
га®ўҐ­м ­  ўл室Ґ OUT гбв ­ ў«Ёў Ґвбп б® б«Ґ¤го饣® в Єв  Ї®б«Ґ
Ї®¤ зЁ ­  ўе®¤ GATE бЁЈ­ «  ўлб®Є®Ј® га®ў­п.

‡ Јаг§Є  ў бзҐвзЁЄ ­®ў®Ј® зЁб«  ­Ґ ў«ЁпҐв ­  ¤«ЁвҐ«м­®бвм
⥪г饣® Ё¬Їг«мб ,   гзЁвлў Ґвбп ЇаЁ б«Ґ¤го饬 § ЇгбЄҐ.
ЏҐаҐ§ ЇгбЄ бзҐвзЁЄ  Їа®Ё§ў®¤Ёвбп ­ а бв ойЁ¬ д஭⮬ ўе®¤  GATE
(ЎҐ§ ЇҐаҐ§ Јаг§ЄЁ бзҐвзЁЄ ). ЊЁ­Ё¬ «м­®Ґ ¤®ЇгбвЁ¬®Ґ n=1.

ђҐ¦Ё¬ 2 (ЈҐ­Ґа в®а з бв®вл). Љ ¦¤л© а § Ї®б«Ґ ¤®бвЁ¦Ґ­Ёп
бзҐвзЁЄ®¬ ­г«п ­  ўл室Ґ OUT Ї®пў«пҐвбп ®ваЁж вҐ«м­л© Ё¬Їг«мб б
¤«ЁвҐ«м­®бвмо ®¤Ё­ в Єв. ЏҐаҐ§ Јаг§Є  бзҐвзЁЄ  бЄ §лў Ґвбп
в®«мЄ® Ї®б«Ґ ЇҐаҐ§ ЇгбЄ  бзҐвзЁЄ . ЏаЁ Ёб祧­®ўҐ­ЁЁ бЁЈ­ « 
ўлб®Є®Ј® га®ў­п ­  ўе®¤Ґ GATE ЇаҐЄа й Ґвбп бзҐв Ё ­  ўл室 OUT
Ї®¤ Ґвбп ­ Їа殮­ЁҐ ўлб®Є®Ј® га®ў­п. ЏҐаҐ§ ЇгбЄ бзҐвзЁЄ 
Їа®Ёб室Ёв ЇаЁ ­ «ЁзЁЁ ­  ўе®¤Ґ GATE бЁЈ­ «  ўлб®Є®Ј® га®ў­п.

ђҐ¦Ё¬ 3 (ЈҐ­Ґа в®а ¬Ґ ­¤а ). Ђ­ «®ЈЁзҐ­ ०Ё¬г 2, ­®
Ї®«®¦ЁвҐ«м­л© га®ўҐ­м ўл室­®Ј® бЁЈ­ «  § ­Ё¬ Ґв ЇҐаўл©
Ї®«гЇҐаЁ®¤,   ®ваЁж вҐ«м­л© - ўв®а®© Ї®«гЇҐаЁ®¤. ’®з­ҐҐ, Ґб«Ё n
(­ з «м­®Ґ §­ зҐ­ЁҐ бзҐвзЁЄ ) зҐв­®, в® ¤«ЁвҐ«м­®бвм
Ї®«®¦ЁвҐ«м­®Ј® Ё ®ваЁж вҐ«м­®Ј® Ї®«гЇҐаЁ®¤®ў а ў­  n*T/2; Ґб«Ё
¦Ґ n ­ҐзҐв­® - в® (n+1)*T/2 Ё (n-1)*’/2 ᮮ⢥б⢥­­®. ЌЁ§Є©
га®ўҐ­м бЁЈ­ «  ­  ўе®¤Ґ GATE § ЇаҐй Ґв бзҐв, ­  ўл室Ґ OUT
гбв ­ ў«Ёў Ґвбп бЁЈ­ « ўлб®Є®Ј® га®ў­п. ‚лб®ЄЁ© га®ўҐ­м GATE
а §аҐи Ґв бзҐв,   ­ а бв ­ЁҐ ҐЈ® § ЇгбЄ Ґв бзҐвзЁЄ ­ з «м­®Ј®
б®бв®п­Ёп. Ћв¬ҐвЁ¬, зв® n=3 ў н⮬ ०Ё¬Ґ ­Ґ¤®ЇгбвЁ¬®.

ђҐ¦Ё¬ 4 (бзҐвзЁЄ б®ЎлвЁ©). Џ® ®Є®­з ­ЁЁ ®вбзҐв  зЁб« ,
§ Ја㦥­­®Ј® ў бзҐвзЁЄ, ­  ўл室Ґ OUT д®а¬ЁагҐвбп ®ваЁж вҐ«м­л©
Ё¬Їг«мб ¤«ЁвҐ«м­®бвмо ®¤Ё­ в Єв. ‡ ЇЁбм ў бзҐвзЁЄ ў® ўаҐ¬п бзҐв 
¬« ¤иҐЈ® Ў ©в  ­Ґ ў«ЁпҐв ­  ⥪гйЁ© бзҐв,   § ЇЁбм бв а襣®
Ў ©в  ЇҐаҐ§ ЇгбЄ Ґв бзҐвзЁЄ. ЌЁ§ЄЁ© га®ўҐ­м ўе®¤  GATE § ЇаҐй Ґв
бзҐв, ўлб®ЄЁ© - а §аҐи Ґв. ЊЁ­Ё¬ «м­®Ґ ¤®ЇгбвЁ¬®Ґ §­ зҐ­ЁҐ
бзҐвзЁЄ  а ў­® 1.

ђҐ¦Ё¬ 5 (бзҐвзЁЄ б®ЎлвЁ© б  ўв®§ Јаг§Є®©). Ћв«ЁзЁҐ ®в
०Ё¬  4 б®бв®Ёв ў ⮬, зв® Є ¦¤®Ґ ­ а бв ­ЁҐ бЁЈ­ «  ­  ўе®¤Ґ
GATE ЇҐаҐ§ ЇгбЄ Ґв бзҐвзЁЄ. ЏҐаҐ§ Јаг§Є  бзҐвзЁЄ  ­Ґ ў«ЁпҐв ­ 
⥪гйЁ© жЁЄ«, ®¤­ Є® б«Ґ¤гойЁ© жЁЄ« ®ЇаҐ¤Ґ«пҐвбп ў­®ўм
§ ­ҐбҐ­­л¬ зЁб«®¬.

‚६Ґ­­лҐ ¤Ё Ја ¬¬л ०Ё¬®ў в ©¬Ґа  ЇаЁўҐ¤Ґ­л ­  б«Ґ¤го饬
аЁбг­ЄҐ:

іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=5 ЪДДДДДДДДДДДДДДДДїn=4 ЪДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ АДДДДЩ
і ЪДДДДДДДДДДДДДДДДДДДДДДДДДї ЪДДДДДДДД
GATE ГДДДДДДДЩ АДДДЩ
ГДДДДДї ЪДДДДДДДДДї ЪДД
OUT і АДДДДДДДДДДДЩ АДДДДДДДДДДДДДДДЩ
і
n і 5 4 3 2 1 0 4 3 2 2 1 0
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 0


іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=4 ЪДДДДДДїn=5 ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ АДДДДЩ
і ЪДДДДДДДДДДї ЪДї ЪДДДДДДДДДДДДД
GATE ГДДДДДДДДДЩ АДДДДЩ АДДДДЩ
ГДДДДДДДДДДДї ЪДДДДДДДї ЪДД
OUT і АДДДДДДДЩ АДДДДДДДДДДДДДДДЩ
і
n і 4 3 2 1 0 5 4 3 5 4 3 2 1 0
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 1


іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=4 ЪДДїn=3 ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ АДДДДЩ
і ЪДДДДДДДДДДДДДДДДДДДДДДДДї ЪДДДДДДДДД
GATE ГДДДДДДЩ АДДДДЩ
ГДДДДДДДДДДДДДї ЪДДДДї ЪДДДДДї ЪДДДДДДДДДДї ЪДД
OUT і АДЩ АДЩ АДЩ АДЩ
і
n і 4 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 2


іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=4 ЪДДДДДДДДДДДДДДДДїn=5 ЪДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ АДДДДЩ
і ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї ЪДДД
GATE ГДДДДДЩ АДДДЩ
ГДДДДДДДДДДї ЪДДДДДї ЪДДДДДї ЪДДДДДДДД
OUT і АДДДДЩ АДДДДЩ АДДДДЩ
і
n і 4 3 2 1 0 4 3 2 1 0 4 3 2 1 0 5 5 4
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 3


іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=4 ЪДДДДДДДДДДДДДДДДїn=5 ЪДДДДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ АДДДДЩ
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї ЪДДДДДДДДДДДДДД
GATE і АДДДЩ
ГДДДДДДДДДДДДДДї ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДї ЪД
OUT і АДЩ АДЩ
і
n і 4 3 2 1 0 5 5 4 3 2 1 0
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 4


іЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪїЪї
CLK ГЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩАЩА
__ Гїn=4 ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
WR іАДДДДЩ
і ЪДДДДДДДДї ЪДї ЪДДДДДДДДДДДДДДДДД
GATE ГДДДДДДДДДЩ АДДДЩ АДДДЩ
ГДДДДДДДДДДДДДДДДДї ЪДДДДДДДДДДДДДДДДДї ЪДДДДДД
OUT і АДЩ АДЩ
і
n і 4 3 2 1 0 4 3 4 3 2 1 0
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ђҐ¦Ё¬ 5

‚ IBM PC в ©¬Ґа Ё¬ҐҐв Ў §®ўл©  ¤аҐб 40h Ё б«Ґ¤гойЁҐ
Їа®Ја ¬¬ЁагҐ¬лҐ аҐЈЁбвал:

Ђ¤аҐб ЋЇҐа жЁп Ќ §­ зҐ­ЁҐ
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
40h § ЇЁбм ‡ Јаг§Є  бзҐвзЁЄ  Є ­ «  0
з⥭ЁҐ —⥭ЁҐ бзҐвзЁЄ  Є ­ «  0

41h § ЇЁбм ‡ Јаг§Є  бзҐвзЁЄ  Є ­ «  1
з⥭ЁҐ —⥭ЁҐ бзҐвзЁЄ  Є ­ «  1

42h § ЇЁбм ‡ Јаг§Є  бзҐвзЁЄ  Є ­ «  2
з⥭ЁҐ —⥭ЁҐ бзҐвзЁЄ  Є ­ «  2

43h § ЇЁбм ‡ ЇЁбм гЇа ў«по饣® б«®ў 
ў ॣЁбва ०Ё¬  Є ­ « 
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД

“Їа ў«по饥 б«®ў® Ё¬ҐҐв б«Ґ¤гойЁ© д®а¬ в:

7 6 5 4 3 2 1 0
ЪДВДДВДДВДДВДДВДДВДДВДДї
і і і і і ЃЁвл Њ бЄ 
АДЕДДБДДЕДДБДДБВДБДДБДВЩ ДДДД ДДДДДДД
і і і А> 0: 0 = ¤ў®Ёз­л© Є®¤,   & 1
і і і 1 = ¤ў®Ёз­®-¤ҐбпвЁз­л© Є®¤
і і АДДДДДДД> 1-3: ०Ё¬ а Ў®вл Є ­ « :   & 0Eh
і і 000 - ०Ё¬ 0
і і 001 - ०Ё¬ 1
і і X10 - ०Ё¬ 2
і і X11 - ०Ё¬ 3
і і 100 - ०Ё¬ 4
і і 101 - ०Ё¬ 5
і АДДДДДДДДДДДДДД> 4-5: ўЁ¤ § Јаг§ЄЁ бзҐвзЁЄ :   & 30h
і 00 - "§ йҐ«ЄЁў ­ЁҐ"
і (ЎЁвл 0-3 ЎҐ§а §«Ёз­л)
і 01 - в®«мЄ® ¬« ¤иЁ© Ў ©в
і 10 - в®«мЄ® бв аиЁ© Ў ©в
і 00 - ¬« ¤иЁ© Ў ©в, § вҐ¬ бв аиЁ©
АДДДДДДДДДДДДДДДДДДДД> 6-7: ­®¬Ґа Є ­ « : a & C0h
00 - Є ­ « 0
01 - Є ­ « 1
10 - Є ­ « 2
11 - § ЇаҐйҐ­­ п Є®¬ЎЁ­ жЁп

‘гйҐбвўгҐв ¤ў  бЇ®б®Ў  з⥭Ёп ⥪г饣® §­ зҐ­Ёп бзҐвзЁЄ 
Є ­ « .

1. —⥭ЁҐ б ®бв ­®ў®¬ бзҐвзЁЄ . „«п ®ЎҐбЇҐзҐ­Ёп бв ЎЁ«м­ле
Ї®Є § ­Ё© ­Ґ®Ўе®¤Ё¬® ЇаЁ®бв ­®ўЁвм а Ў®вг Є ­ «  «ЁЎ® Ї®¤ зҐ©
бЁЈ­ «  ­Ё§Є®Ј® га®ў­п ­  ўе®¤ GATE (Єа®¬Ґ ०Ё¬  1), «ЁЎ®
Ў«®ЄЁа®ў ­ЁҐ¬ в Єв®ўле Ё¬Їг«мб®ў.

2. —⥭ЁҐ "­  «Ґвг". „«п бзЁвлў ­Ёп бзҐвзЁЄ  ЎҐ§ ®бв ­®ўЄЁ
Їа®жҐбб  бзҐв  ЁбЇ®«м§гҐвбп Ї®бл«Є  ў Ї®ав 43h гЇа ў«по饣®
б«®ў  ў ०Ё¬Ґ "§ йҐ«ЄЁў ­Ёп" (б¬. ўлиҐ). ќв® гЇа ў«по饥 б«®ў®
дЁЄбЁагҐв ⥪г饥 §­ зҐ­ЁҐ бзҐвзЁЄ  Ё ‚л ¬®¦ҐвҐ бзЁв вм ҐЈ®
¬« ¤иЁ© Ў ©в,   § вҐ¬ бв аиЁ© Ў ©в.


4.2. ’ ©¬Ґа ­  бЁб⥬­®© Ї« вҐ IBM PC

‚ IBM PC Є ­ «л в ©¬Ґа  Ё¬Ґов б«Ґ¤го饥 ­ §­ зҐ­ЁҐ.

Љ ­ « Ќ §­ зҐ­ЁҐ ђҐ¦Ё¬
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
0 бЁб⥬­лҐ з бл (IRQ0) 3, бзҐвзЁЄ=0 (65536)
1 § Їа®б ¤«п Є ­ «  0 Џ„Џ
(ॣҐ­Ґа жЁп Ї ¬пвЁ) 2, бзҐвзЁЄ=18
2 ЈҐ­Ґа в®а §ўгЄ  ДД
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД

’ Єв®ў п з бв®в  Є ¦¤®Ј® Є ­ «  а ў­  1,19318 Њѓж, в. Ґ.
Є ¦¤л© в Єв Ё¬ҐҐв ¤«ЁвҐ«м­®бвм 0,84 ¬бҐЄ. ‚室 GATE Є ­ «®ў 0 Ё
1 ўбҐЈ¤  Ё¬Ґов ўлб®ЄЁ© га®ўҐ­м, Ї®н⮬г бзҐв ­  нвЁе Є ­ « е
а §аҐиҐ­ ўбҐЈ¤ . ‚室 GATE Є ­ «  2 гЇа ў«пҐвбп ЎЁв®¬ 0 Ї®ав  PB
Ё­вҐадҐ©б  8255 (б¬. Ј«. 5), бўп§ ­­®Ј® б Ї®а⮬ 61h.

ЏаЁ ­ з «м­®© § Јаг§ЄҐ BIOS Ё­ЁжЁ «Ё§ЁагҐв Є ­ « 0 ¤«п
а Ў®вл ў ०Ё¬Ґ 3 б® бзҐвзЁЄ®¬ 0 (в. Ґ. 65536 ¤ҐЄаҐ¬Ґ­в®ў ­ 
жЁЄ« бзҐв ). Џ®н⮬г з бв®в  бЁб⥬­ле з б®ў а ў­ 
1,19 Њѓж/65536 = 18.2 ѓж
Ё ЇаҐалў ­ЁҐ IRQ0, бўп§ ­­®Ґ б ўҐЄв®а®¬ Int 8, Їа®Ёб室Ёв 18,2
а § ў ᥪ㭤г, в. Ґ. Є ¦¤лҐ 55 ¬бҐЄ.

‚л ¬®¦ҐвҐ ЇҐаҐЇа®Ја ¬¬Ёа®ў вм Є ­ « 0, ­® в®Ј¤ 

- BIOS ­Ґ ᬮ¦Ґв ®вб«Ґ¦Ёў вм ⥪г饥 ўаҐ¬п Ё ¤ вг;

- ­ агиЁвбп а Ў®в  б ЈЁЎЄЁ¬Ё ¤ЁбЄ ¬Ё, в. Є. ўЄ«о祭ЁҐ Ё
ўлЄ«о祭ЁҐ Ёе ¤ўЁЈ вҐ«Ґ© ®вбзЁвлў Ґвбп Ї® ⥪г饬㠢६Ґ­Ё.

Љ ­ « 1 а Ў®в Ґв ў ०Ё¬Ґ 2 б® бзҐвзЁЄ®¬ 18, Ї®н⮬г
ॣҐ­Ґа жЁп Ї ¬пвЁ Їа®Ёб室Ёв Є ¦¤лҐ 18 ¬бҐЄ. ЏҐаҐЇа®Ј-
а ¬¬Ёа®ў вм ҐЈ® ­Ґ«м§п, в. Є. нв® ЇаЁўҐ¤Ґв Є Ї®вҐаҐ ¤ ­­ле ў
Ћ‡“.

Џа®Ја ¬¬Ёа®ў ­ЁҐ Є ­ «  2 ®ЇЁб ­® ў б«Ґ¤го饬 Їг­ЄвҐ.


4.3. ѓҐ­Ґа жЁп §ўгЄ 

Ќ  ўе®¤ §ўгЄ®ЈҐ­Ґа в®а  Ї®бвгЇ Ґв «®ЈЁзҐбЄ®Ґ "€" ¤ўге
бЁЈ­ «®ў: ўл室  OUT 2-Ј® Є ­ «  в ©¬Ґа  Ё ᮤҐа¦Ё¬®Ј® ЎЁв  1
Ї®ав  ђ‚ Ё­вҐадҐ©б  8255. Џ®н⮬㠯а®б⥩訩 бЇ®б®Ў ЈҐ­Ґа жЁЁ
§ўгЄ  б®бв®Ёв ў Їа®Ја ¬¬Ёа®ў ­ЁЁ Є ­ «  2 в ©¬Ґа  в Є, зв®Ўл ®­
ўл¤ ў « Їаאַ㣮«м­л© Ё¬Їг«мб § ¤ ­­®© з бв®вл, «Ґ¦ йЁ© ў
§ўгЄ®ў®¬ ¤Ё Ї §®­Ґ (20 ѓж - 20 Љѓж). „«п нв®Ј® б«Ґ¤гҐв
ЁбЇ®«м§®ў вм ०Ё¬ в ©¬Ґа  3 б Ї®¤е®¤пйЁ¬ ­ з «м­л¬ §­ зҐ­ЁҐ¬
бзҐвзЁЄ . …б«Ё § вҐ¬ гбв ­®ўЁвм ЎЁвл 0 Ё 1 Ї®ав  ђ‚, в® Ё¬Їг«мб
­ з­Ґв Ї®бвгЇ вм ­  ўе®¤ §ўгЄ®ЈҐ­Ґа в®а  (ЎЁв 0 - нв® ўе®¤ GATE
Є ­ «  2, а §аҐи ойЁ© бзҐв,   ЎЁв 1 - а §аҐиҐ­ЁҐ ўл¤ зЁ ўл室 
OUT ­  ўе®¤ §ўгЄ®ЈҐ­Ґа в®а ). „«п ўлЄ«о祭Ёп §ўгЄ  ¤®бв в®з­®
бЎа®бЁвм ЎЁвл 0 - 1 ў ђ‚. ЏаҐЁ¬гйҐбвў® нв®Ј® ¬Ґв®¤  б®бв®Ёв ў
⮬, зв®, § ЇгбвЁў ЈҐ­Ґа жЁо §ўгЄ , –Џ ¬®¦Ґв ўлЇ®«­пвм ¤агЈЁҐ
¤Ґ©бвўЁп. ‡­ зҐ­ЁҐ бзҐвзЁЄ  2-Ј® Є ­ «  ўлзЁб«пҐвбп Ї® д®а¬г«Ґ
n=1193181/f=1234DDh/f (1193181 - в Єв®ў п з бв®в  в ©¬Ґа  ў ѓж,
f - вॡ㥬 п з бв®в  §ўгЄ ).

ЏаЁ¬Ґа:

;
; Ї®¤Їа®Ја ¬¬  ЈҐ­Ґа жЁЁ §ўгЄ 
; ‚室: ЂX= з бв®в  §ўгЄ  ў ѓж
;
Sound proc near
push ax ;б®еа ­Ёвм ॣЁбвал
push bx
push dx
mov bx,ax ;з бв®в 
mov ax,34DDh
mov dx,12h ;(dx,ax)=1193181
cmp dx,bx ;Ґб«Ё bx < 18ѓж, в® ўл室
jnb Done ;зв®Ўл Ё§ЎҐ¦ вм ЇҐаҐЇ®«­Ґ­Ёп
div bx ;ax=(dx,ax)/bx
mov bx,ax ;бзҐвзЁЄ в ©¬Ґа 
in al,61h ;Ї®ав ђ‚
or al,3 ;гбв ­®ўЁвм ЎЁвл 0-1
out 61h,al
mov al,00001011b ;гЇа ў«по饥 б«®ў® в ©¬Ґа :
;Є ­ « 2, ०Ё¬ 3, ¤ў®Ёз­®Ґ б«®ў®
mov dx,43h
out dx,al ;ўлў®¤ ў ॣЁбва ०Ё¬ 
dec dx
mov al,bl
out dx,al ;¬« ¤иЁ© Ў ©в бзҐвзЁЄ 
mov al,bh
out dx,al ;бв аиЁ© Ў ©в бзҐвзЁЄ 
Done:
pop dx ;ў®ббв ­®ўЁвм ॣЁбвал
pop bx
pop ax
ret
Sound endp
;
;Ї®¤Їа®Ја ¬¬  ўлЄ«о祭Ёп §ўгЄ 
;
No_Sound proc near
push ax
in al,61h ;Ї®ав ђ‚
and al,not 3 ;бЎа®б ЎЁв®ў 0-1
out 61h,al
pop ax
ret
No_Sound endp

„«п ЈҐ­Ґа жЁЁ ¬г§лЄЁ ¬®¦­® ЁбЇ®«м§®ў вм б«Ґ¤гойЁ©  «Ј®аЁв¬.
Џгбвм octave - ­®¬Ґа ®Єв ўл (1, 2, ...); note - ­®¬Ґа ­®вл ў
®Єв ўҐ (¤®=1, ¤®#=2, ..., бЁ=12). ’®Ј¤ :

f := 32.625;
for i := 1 to oktave do f := 2*f;
for i := 1 to note do f := 1.059463094*f
Sound (round(f));

‚в®а®© бЇ®б®Ў ЈҐ­Ґа жЁЁ §ўгЄ  б®бв®Ёв ў ⮬, зв®Ўл
ЈҐ­ҐаЁа®ў вм §ўгЄ®ўлҐ Ё¬Їг«мбл ­Ґ ўл室®¬ в ©¬Ґа ,   гбв ­®ўЄ®©
Ё бЎа®б®¬ ЎЁв  1 ў ॣЁбвॠђ‚. „«п гЇа ў«Ґ­Ёп § ¤Ґа¦Є ¬Ё ¬®¦­®
ЁбЇ®«м§®ў вм Їа®Ја ¬¬­л© жЁЄ«, ­ ЇаЁ¬Ґа:

;
; Џа®Ја ¬¬  ЈҐ­Ґа жЁЁ §ўгЄ 
; ‚室: N=Є®«ЁзҐбвў® Ё¬Їг«мб®ў
; FREQ=¤«ЁвҐ«м­®бвм Ё¬Їг«мб 
;
in al,61h ;Ї®ав ђ‚
and al,not ;бЎа®б ЎЁв  0
mov dx,N
Repeat:
or al,2
out 61h,al ;гбв ­®ўЁвм ЎЁв 1
mov cx,FREQ
Wait_On:
loop Wait_On
and al,not 2 ;бЎа®бЁвм ЎЁв 1
out 61h,al
mov cx,FREQ
Wait_Off:
loop Wait_Off
dec dx
jnz Repeat

Џа®Ја ¬¬Ёа®ў ­ЁҐ нв®Ј® бЇ®б®Ў  ®б­®ў ­® ­  б«Ґ¤гойЁе
д®а¬г« е. …б«Ё ’ - ¤«ЁвҐ«м­®бвм §ўгз ­Ёп ў ᥪ, f - з бв®в 
§ўгЄ  ў ѓж,   t - в Єв®ў п з бв®в  Їа®жҐбб®а  Џќ‚Њ, в®

N=T*f; FREQ=t/(34*f).

Љ®­бв ­в  34 ®Ўкпб­пҐвбп ⥬, зв® ¤«ЁвҐ«м­®бвм Є ¦¤®Ј® Ё§
жЁЄ«®ў Wait_on Ё Wait_off ЇаЁЎ«Ё§ЁвҐ«м­® а ў­  (17*cx) ¬ иЁ­­ле
в Єв®ў.

ЌҐг¤®Ўбвў® нв®Ј® ¬Ґв®¤  б®бв®Ёв ў ⮬, зв® –Џ Ї®«­®бвмо
§ ­пв ЈҐ­Ґа жЁҐ© §ўгЄ  - «оЎ®Ґ ЇаҐалў ­ЁҐ ЁбЇ®авЁв ўаҐ¬Ґ­­го
¤Ё Ја ¬¬г §ўгЄ®ў®Ј® бЁЈ­ « . Ћ¤­ Є® ®­ ®ЎҐбЇҐзЁў Ґв в®з­го
Ї®¤бва®©Єг з бв®вл Ё Ї®§ў®«пҐв ᮧ¤ ў вм ­ҐбЁ¬¬ҐваЁз­лҐ Ё¬Їг«мбл
ў амЁа®ў ­ЁҐ¬ § ¤Ґа¦ҐЄ ў жЁЄ« е Wait_on Ё Wait_off.