Na obrázku je zobrazen možný způsob připojení malého reproduktoru k výstupu mikroprocesoru (I/O pin P1.1). Reproduktor je ovládán přes spínací tranzistor T1, odpor R2 slouží k nastavení hlasitosti. Při "oživování" místo pevného odporu R2 použijeme odporový trimr 4k7 nebo můžeme použít logaritmický potenciometr 5kW, pokud budeme chtít měnit hlasitost častěji a plynule v určitém rozsahu.

Připojení malého reproduktoru

Programová obsluha
     Pro generování zvukového signálu nahrazujeme sinusový průběh tónové frekvence obdélníkovým tvarem tak, jak to ukazuje obrázek níže. Střídavě na dobu jedné půlperiody T/2 vysíláme do reproduktoru (=do pinu P1.1) logickou 1, na dobu druhé půlperiody logickou 0. Doba periody T nám pak určuje vý‘ku tónu a počet period délku tónu. Takto vytváříme symetrický signál, tedy se střídou 1:1. Můžeme v‘ak generovat i asymetrický signál tak, že budeme měnit i střídu generovaného signálu, tj. dobu, po kterou je aktivní log.1 a aktivní log.0. během jedné periody.

Průběh signálu na I/O pinu mikroprocesoru

Příklad jednoduchého programu, který vytváří symetrický nepřetržitý signál o frekvenci 2kHz (při f krystalu 12MHz).
      V programu je použit 16-bitový časovač, abychom mohli generovat i signál o velmi nízké frekvenci (až pod 10Hz). Je dobré si ale vypočítat max. a min. hodnotu periody pro sli‘itelný rozsah frekvencí (přibližně 100Hz až 16kHz), dle vztahu f=1/T. V programu není uvažováno s nutnou korekcí doby provádění instrukcí při obsluze přeru‘ení (druhá půlperioda je tak zhruba o 6us del‘í než by měla být při 12MHz). Jak je z programu vidět, nelze frekvenci signálu principielně nastavovat plynule v celém možném rozsahu. Pokud bychom ale potřebovali nastavit jednu konkrétní frekvenci, je tu je‘tě možnost změny frekvence krystalu.
        ORG 0
        JMP START
        ORG 30H
START:  MOV TMOD,#00000001B    ;casovac0 v modu1
        MOV TH0,#high 65285    ;perioda 500us (=2kHz)
        MOV TL0,#low 65285
        SETB EA
        SETB ET0
        SETB TR0
KONEC:  JMP KONEC
;obsluha preruseni od casovace0
        ORG 0BH
        JMP PRERUS
        ORG 50H
PRERUS: CPL P1.1               ;pin,na kterem je pripojeny reprak
        MOV TH0,#high 65285	
        MOV TL0,#low 65285 
        RETI
END

      Velice jednoduchou modifikací zapojení můžeme získat jednoduchý hudební strojek, který zahraje po připojení napájecího napětí melodii uloženou v paměti. Ve výpisu programu je několik písní již připravených a nebo si můžete velice jednodu‘e "vyrobit" melodii vlastní. Samozřejmě na schématu chybí krystal s kondenzátory a resetovací obvod. Dal‘í konstrukci s reproduktorem naleznete na jiné stránce.
Vytisknout stránku

Zpátky Zpátky
© DH servis 2002 -