vgrajen sistem za avdio predojaČevalnik

69
Martin Kanič VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK Diplomsko delo Maribor, september 2012

Upload: others

Post on 04-Nov-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Martin Kanič

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Diplomsko delo

Maribor september 2012

Vgrajen sistem za avdio predojačevalnik I

Diplomsko delo univerzitetnega študijskega programa

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Študent Martin Kanič

Študijski program Elektrotehnika UN

Smer Elektronika BU

Mentor doc dr Iztok Kramberger univ dipl ing

Somentor dr Marko Kos univ dipl ing

Maribor september 2012

II Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik III

ZAHVALA

Zahvaljujem se očetu ki mi je bil vselej vzoren

zgled ter me podpiral v dobrih in slabih obdobjih

mojega študija

IV Vgrajen sistem za avdio predojačevalnik

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Ključne besede vgrajen sistem predojačevalnik atenuator daljinsko upravljanje

podatkovno vodilo I2C mikrokrmilnik

UDK 00431246621375(0432)

Povzetek

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z atenuatorjem za regulacijo glasnosti Odločili smo se da

izdelamo predojačevalnik z najmanjšim možnim številom elementov na poti avdio signala

in se povsem izognemo uporabi polprevodniških elementov Želeli smo da so vse funkcije

dostopne tudi preko daljinskega upravljalnika Zato se preklopi avdio vhodov kot tudi

regulacija glasnosti izvajajo s pomočjo relejev Slednjo smo izvedli kot petstopenjski

zaporedno vezani delilnik napetosti Vse funkcije krmili mikrokrmilnik ki z enotami v

sistemu komunicira preko podatkovnega vodila I2C

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik I

Diplomsko delo univerzitetnega študijskega programa

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Študent Martin Kanič

Študijski program Elektrotehnika UN

Smer Elektronika BU

Mentor doc dr Iztok Kramberger univ dipl ing

Somentor dr Marko Kos univ dipl ing

Maribor september 2012

II Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik III

ZAHVALA

Zahvaljujem se očetu ki mi je bil vselej vzoren

zgled ter me podpiral v dobrih in slabih obdobjih

mojega študija

IV Vgrajen sistem za avdio predojačevalnik

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Ključne besede vgrajen sistem predojačevalnik atenuator daljinsko upravljanje

podatkovno vodilo I2C mikrokrmilnik

UDK 00431246621375(0432)

Povzetek

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z atenuatorjem za regulacijo glasnosti Odločili smo se da

izdelamo predojačevalnik z najmanjšim možnim številom elementov na poti avdio signala

in se povsem izognemo uporabi polprevodniških elementov Želeli smo da so vse funkcije

dostopne tudi preko daljinskega upravljalnika Zato se preklopi avdio vhodov kot tudi

regulacija glasnosti izvajajo s pomočjo relejev Slednjo smo izvedli kot petstopenjski

zaporedno vezani delilnik napetosti Vse funkcije krmili mikrokrmilnik ki z enotami v

sistemu komunicira preko podatkovnega vodila I2C

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

II Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik III

ZAHVALA

Zahvaljujem se očetu ki mi je bil vselej vzoren

zgled ter me podpiral v dobrih in slabih obdobjih

mojega študija

IV Vgrajen sistem za avdio predojačevalnik

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Ključne besede vgrajen sistem predojačevalnik atenuator daljinsko upravljanje

podatkovno vodilo I2C mikrokrmilnik

UDK 00431246621375(0432)

Povzetek

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z atenuatorjem za regulacijo glasnosti Odločili smo se da

izdelamo predojačevalnik z najmanjšim možnim številom elementov na poti avdio signala

in se povsem izognemo uporabi polprevodniških elementov Želeli smo da so vse funkcije

dostopne tudi preko daljinskega upravljalnika Zato se preklopi avdio vhodov kot tudi

regulacija glasnosti izvajajo s pomočjo relejev Slednjo smo izvedli kot petstopenjski

zaporedno vezani delilnik napetosti Vse funkcije krmili mikrokrmilnik ki z enotami v

sistemu komunicira preko podatkovnega vodila I2C

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik III

ZAHVALA

Zahvaljujem se očetu ki mi je bil vselej vzoren

zgled ter me podpiral v dobrih in slabih obdobjih

mojega študija

IV Vgrajen sistem za avdio predojačevalnik

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Ključne besede vgrajen sistem predojačevalnik atenuator daljinsko upravljanje

podatkovno vodilo I2C mikrokrmilnik

UDK 00431246621375(0432)

Povzetek

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z atenuatorjem za regulacijo glasnosti Odločili smo se da

izdelamo predojačevalnik z najmanjšim možnim številom elementov na poti avdio signala

in se povsem izognemo uporabi polprevodniških elementov Želeli smo da so vse funkcije

dostopne tudi preko daljinskega upravljalnika Zato se preklopi avdio vhodov kot tudi

regulacija glasnosti izvajajo s pomočjo relejev Slednjo smo izvedli kot petstopenjski

zaporedno vezani delilnik napetosti Vse funkcije krmili mikrokrmilnik ki z enotami v

sistemu komunicira preko podatkovnega vodila I2C

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

IV Vgrajen sistem za avdio predojačevalnik

VGRAJEN SISTEM ZA AVDIO PREDOJAČEVALNIK

Ključne besede vgrajen sistem predojačevalnik atenuator daljinsko upravljanje

podatkovno vodilo I2C mikrokrmilnik

UDK 00431246621375(0432)

Povzetek

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z atenuatorjem za regulacijo glasnosti Odločili smo se da

izdelamo predojačevalnik z najmanjšim možnim številom elementov na poti avdio signala

in se povsem izognemo uporabi polprevodniških elementov Želeli smo da so vse funkcije

dostopne tudi preko daljinskega upravljalnika Zato se preklopi avdio vhodov kot tudi

regulacija glasnosti izvajajo s pomočjo relejev Slednjo smo izvedli kot petstopenjski

zaporedno vezani delilnik napetosti Vse funkcije krmili mikrokrmilnik ki z enotami v

sistemu komunicira preko podatkovnega vodila I2C

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik V

EMBEDDED SYSTEM FOR AUDIO PREAMPLIFIER

Key words embedded system preamplifier attenuator remote control data bus I2C

microcontroller

UDK 00431246621375(0432)

Abstract

The goal of the present diploma work is to develop an embedded system for controlling the

functions of an audio preamplifier It was decided to make use of as few elements as

possible in the audio signal path Furthermore the use of semiconductor elements was

avoided completely All functions were also made to be accessible over an infra red remote

control Therefore all switching functions are performed by relays This involves switching

the audio input signals as well as regulating the volume Volume control was realized as a

series five stage voltage divider All functions are controlled by a microcontroller

communication between the units is performed with the use of the I2C protocol

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

VI Vgrajen sistem za avdio predojačevalnik

VSEBINA

1 UVOD 1

2 PREGLED STANJA 3

21 OJAČEVALNIKI PREDOJAČEVALNIKI 3

22 NASTAVITEV GLASNOSTI - ATENUATOR 7

23 UPRAVLJANJE FUNKCIJ 10

24 DALJINSKO UPRAVLJANJE 12

25 PODATKOVNO VODILO I2C 14

26 MIKROKRMILNIK 16

27 VAKUUMSKO FLUORESCENČNI ZASLON 17

28 IZDELAVA TISKANIH VEZIJ 18

29 PROGRAMSKI JEZIK 19

3 IZVEDBA 21

31 CENTRALNA KRMILNA ENOTA IN IZPIS NA ZASLON 21

32 VODILO I2C IN NJEGOVE KOMPONENTE 24

33 UPRAVLJANJE NA ČELNI PLOŠČI 25

34 ROTACIJSKI KODIRNIK 26

35 DALJINSKO UPRAVLJANJE 27

36 KRMILJENJE STIKAL IN PREKLOPNIKOV 28

37 NASTAVITEV GLASNOSTI - ATENUATOR 28

4 MERITVE IN REZULTATI 32

41 POTROŠNJA ELEKTRIČNEGA TOKA IN ENERGIJE 32

42 PODATKOVNO VODILO I2C 33

43 PROTOKOL DALJINSKEGA UPRAVLJANJA RC5 34

44 ATENUATOR 35

5 SKLEP 38

6 VIRI LITERATURA 39

7 PRILOGE 40

71 CELOTNE ELEKTRIČNE SHEME POSAMEZNIH ENOT 40

72 PREGLED CELOTNEGA PROGRAMA V BASCOM BASIC PROGRAMSKEM JEZIKU 44

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik VII

73 SEZNAM SLIK 55

74 SEZNAM PREGLEDNIC 56

75 NASLOV ŠTUDENTA 56

76 KRATEK ŢIVLJENJEPIS 56

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

VIII Vgrajen sistem za avdio predojačevalnik

UPORABLJENE KRATICE

RIAA Recording Industry Association of America

THD Total Harmonic Distortion (skupna harmonska popačenja)

VFD Vacuum Fluorescent Display (vakuumsko fluorescenčni zaslon)

I2C Inter-Integrated Circuit Bus (naziv medkomponentnega vodila)

DSP Digital Signal Processor (digitalna procesna enota za signale)

PWM Pulse Width Modulation (pulzno širinska modulacija)

LCD Liquid Crystal Display (zaslon s tekočimi kristali)

OLED Organic Light Emitting Diode (organska svetilna dioda)

Boost Stikalni pretvornik tipa Boost pretvarja niţjo napetost v višjo

UV Ultravijolična svetloba

NaOH Natrijev hidroksid

ISP In System Programming (programiranje vgrajenega mikrokrmilnika)

TTL Transistor-Transistor Logic

FET Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 1

1 UVOD

Ojačevalniki za visokokakovostno reprodukcijo glasbe so pogosto razdeljeni na

predojačevalnik in močnostni ojačevalnik Proizvajalci takšnih naprav se odločajo med

dvema arhitekturama Uporabijo lahko polprevodniške sestavne dele najvišjih cenovnih

razredov ki omogočajo najrazličnejše funkcije za manipulacijo signala Druga moţnost je

da se odločijo za ti minimalistično arhitekturo ki vključuje najmanjše moţno število

elektronskih elementov na poti signala predvsem polprevodnikov ter se na tak način

izognejo popačitvam pri reprodukciji

Pri slednji se za preklope signalov uporabljajo releji Kot neţelen učinek ob vsakem

preklopu povzročijo motnjo ki jo zaznamo kot pok v zvočnikih Le-ta ni le prijeten za

poslušalca temveč tudi škoduje zvočnikom Da se mu izognemo je potrebno točno

določeno zaporedje in zakasnitve preklopov

Za regulacijo jakosti zvoka se namesto drsnih potenciometrov uporabljajo stopenjska

stikala z upori saj nudijo boljši kontakt ter vnašajo manj šuma Ker je med poslušanjem

glasbe pogosto potrebno prilagajanje glasnosti je zaţeleno tudi daljinsko upravljanje

Namen diplomskega dela je izdelati vgrajen sistem za upravljanje funkcij

predojačevalnika vključno z regulacijo glasnosti Vse funkcije bodo dostopne tudi preko

daljinskega upravljalnika

Uporabljena bo ti minimalistična arhitektura z releji (brez polprevodnikov) ki bodo

zadolţeni za preklop vhodov in vključitev izhoda Ker je predojačevalnik za gramofon

narejen s tehnologijo vakuumskih elektronk bodo za vklop gretja katod ter vklop visoke

napetosti pravtako uporabljeni releji

Regulacija glasnosti bo mogoča preko rotacijskega kodirnika na aparatu in preko

daljinskega upravljalnika V izogib polprevodnikom in zaradi daljinskega upravljanja bo

regulator glasnosti izveden kot večkratni zaporedno vezani delilnik napetosti

Izpis funkcij se bo zaradi dobre čitljivosti vršil na vakuumsko fluorescenčnem

prikazovalniku (VFD1) Le-ta za delovanje potrebuje visoko napetost Vir visoke napetosti

1 VFD ndash Vacuum Fluorescent Display

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

2 Vgrajen sistem za avdio predojačevalnik

v VFD zaslonih je stikalni pretvornik kateri v avdio signal vnaša visokofrekvenčne

motnje Da bi se izognili morebitnim motnjam se bo prikazovalnik vključil le ob potrebi

sicer bo izključen

Vse funkcije predojačevalnika bodo krmiljene centralno z mikrokrmilnikom Le-ta bo

skrbel za pravilno časovno zaporedje preklopov relejev branje tipk na sprednji plošči

aparata dekodiranje rotacijskega kodirnika in infrardečih daljinskih ukazov ter izpis

funkcij na zaslon

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 3

2 PREGLED STANJA

21 Ojačevalniki predojačevalniki

Najkvalitetnejši ojačevalniki za reprodukcijo glasbe se proizvajajo za uporabo v glasbenih

studiih ter za domačo uporabo Slednji so sestavljeni iz predojačevalnika in močnostnega

ojačevalnika

Predojačevalnik (angl preamplifier) je sestavljen iz vhodne stopnje izenačevalnika (angl

equalizer) ter tonske kontrole in regulacije glasnosti Na vhodno stopnjo so priključene vse

naprave za predvajanje zvočnih medijev vključno z radijskim sprejemnikom

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Najbolj znan izenačevalnik ki se uporablja v večini kvalitetnejših ojačevalnikov je

izenačevalnik po standardu RIAA1 (angl RIAA preamplifier) Le-ta se uporablja za

izenačevanje frekvenčnega poteka posnetkov na gramofonskih ploščah ter ojači amplitudo

signala z nekaj milivoltov na raven primerljivo s signali iz ostalih priključenih naprav

Preklopnik signalov v vhodni stopnji skrbi za to da je vselej vključen le eden izmed

vhodov Ker se signali iz različnih naprav razlikujejo po amplitudi je poskrbljeno da se le-

ti izenačijo preden vstopijo v preklopnik vhodov

Avdio signal iz izbranega vhoda se nato pripelje do regulacije glasnosti ki je najpogosteje

uporabljana kontrola na ojačevalnikih Temu priča tudi ponavadi največji gumb na prednji

plošči

1 Recording Industry Association of America

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

4 Vgrajen sistem za avdio predojačevalnik

Nekateri ojačevalniki imajo vgrajena še razna vezja za prilagajanje zvoka potrebam

poslušalcev Takšnim kontrolam se proizvajalci visokokakovostnih ojačevalnikov zaradi

moţnosti vnosa popačitev in šuma raje izognejo

Signal je nato pripravljen da vstopi v močnostno stopnjo ojačevalnika V našem primeru

se močnostni ojačevalnik nahaja v ločenem ohišju S predojačevalnikom ga poveţemo z

zunanjim avdio kablom

Ko proizvajalci načrtujejo visokokakovosten ojačevalnik se ponavadi odločajo med dvema

arhitekturama

Pri izbiri kompleksne arhitekture se proizvajalci posluţujejo raznih modulov oz vezij s

katerimi skušajo izboljšati kvaliteto zvočne prenosne karakteristike ojačevalnika V

uporabi so najrazličnejši filtri izenačevalniki stabilizatorji delovnih točk ter druga vezja

Do pred nedavnega so se v te namene preteţno uporabljala analogna vezja V zadnjem

času smo priča pospešenemu razvoju hitrih digitalnih vezij kot so npr DSP1 ter FPGA

2

integrirana vezja Le-ta zaradi vse večjih hitrosti kvalitete fleksibilnosti ter nizkih cen

zmeraj pogosteje zamenjujejo analogna vezja

Kljub temu da je s kompleksnimi vezji mogoče odpraviti veliko napak ki so posledica

popačenj neizogibnih elementov v ojačevalnikih se napakam ne moremo povsem izogniti

Omenjena vezja namreč tudi sama vplivajo na kvaliteto signalov ter vnašajo dodatna

popačenja in šum

Odločitev da se načrtuje po minimalistični arhitekturi temelji na predpostavki da vsak

element v vezju vnaša šum ter popačenja ki kazijo končno zvočno sliko reprodukcije

glasbe Zato se v takšnih ojačevalnikih uporabljajo le elementi katerih uporaba je

neizogibna Ker polprevodniški elementi na poti signala najbolj vplivajo na kvaliteto

prenosa se jih proizvajalci pogosto izogibajo

1 Digital Signal Processor

2 Field Programmable Grid Array

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 5

Kvaliteta uporabljenih elementov mora zadostiti visokim zahtevam glede prenosnih

karakteristik saj se ne posluţujemo dodatnih vezij za izboljšanje skupne prenosne

karakteristike ojačevalnika

V zadnjih letih se proizvajalci čedalje več odločajo za izdelavo ojačevalnikov ki za

delovanje ne uporabljajo polprevodniških elementov kot so tranzistorji in integrirana

vezja Namesto njih se kot aktivni elementi na poti signala uporabljajo vakuumske

elektronke

Slika 212 Različni tipi vakuumskih elektronk

Vakuumske elektronke temeljijo na tehnologiji stari več kot 110 let ki se je za domačo

uporabo prenehala uporabljati ţe pred nekaj več kot 50 leti Le-te so v primerjavi s

polprevodniki za uporabo nepraktične Njihova največja pomanjkljivost je velikost katera

zavzema od nekaj deset pa tudi do nekaj milijonov krat več prostora kot polprevodniki

Ker oddajanje elektronov temelji na segrevanju katode za delovanje potrebujejo veliko

količino energije za gretje katod Posledično oddajajo veliko toplote izkoristek se temu

primerno zmanjša Ker je katoda ob vklopu hladna je potreben čas pribliţno pol minute

da se segreje na delovno temperaturo Vpetje katod tudi ni povsem togo zato so občutljive

na vibracije

Povrhu vsega kot aktivni elementi v vezjih v signal vnašajo mnogo večja popačenja kot

tranzistorji Skupna harmonska popačenja THD1 ojačevalnikov z elektronkami nemalokrat

1 Total Harmonic Distorsion

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

6 Vgrajen sistem za avdio predojačevalnik

znašajo tudi do nekaj odstotkov kar je mnogo več kot vrednost skupnih harmonskih

popačenj ki pri sodobnih tranzistorskih ojačevalnikih znaša pod 0005

Kljub naštetim pomanjkljivostim se vakuumske elektronke znova uveljavljajo v

ojačevalnikih za domačo uporabo Mnogi ljudje se navdušujejo nad starimi tehnologijami

saj se po izgledu razlikujejo od naprav ki vsebujejo sodobne elemente Veliki stekleni bati

ki v mraku ţarijo z oranţno svetlobo dajejo občutek topline Fascinira tudi starinska

tehnologija s katero je kljub njeni visoki starosti in zastarelosti mogoče izdelati zmogljiv

ojačevalnik s sposobnostjo visokokakovostne reprodukcije glasbe

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Kljub visoki vrednosti popačenj so popačenja vakuumskih elektronk predvsem

harmonična kar se je izkazalo nemoteče za poslušalce Še več harmonska popačenja

vakuumskih elektronk obarvajo zvok na način kar večina poslušalcev dojema kot raquoprijetno

za uholaquo

Dobro počutje poslušalcev ob poslušanju glasbe in ugajanje reprodukcije tako še zdaleč

nista odvisni le od strogih zahtev po čimmanjših popačenjih in šumu Na ugodje v veliki

meri vpliva tudi psihično stanje poslušalca Ker svet v vsakem danem trenutku dojemamo z

vsemi čuti ki so nam na razpolago ob poslušanju glasbe ne moremo izločiti le sluha Tako

so na našem področju pomembni dejavniki kot so pričakovanja osebni okus izgled

aparature vizualni efekti in drugi

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 7

Zaradi naštetih dejavnikov ki vplivajo na ugodje se ob načrtovanju ali nakupu naprave za

reprodukcijo ne odločamo le na osnovi električnih meritev naprave Mnogi se za nakup

naprave ki deluje s pomočjo tehnologije vakuumskih elektronk odločijo predvsem zaradi

obarvanosti zvoka z višjimi harmoničnimi frekvencami izgleda vizualnega učinka ter

nenazadnje fascinacije nad reprodukcijo s starinsko tehnologijo ki velja za odpisano ţe

več kot petdeset let

22 Nastavitev glasnosti - atenuator

Za prilagajanje glasnosti reprodukcije glasbe se uporabljajo različni atenuatorji Vsi

delujejo na principu delilnika napetosti

Potenciometer

Najpogosteje uporabljena naprava je potenciometer ki se uporablja ţe od vsega začetka

elektronske reprodukcije zvoka Pri uporabi vseh treh priključkov ga uporabljamo kot

nastavljiv delilnik napetosti Princip delovanja potenciometra temelji na uporovni sledi po

kateri se giblje kontakt ndash drsnik Tako lahko izberemo poljubno razmerje upornosti na

delilniku napetosti

Slika 221 Princip zgradbe potenciometra

Pomanjkljivost potenciometrov je uporovna sled ki je narejena iz ogljika ter je

izpostavljena okoljskim vplivom Zaradi drsnika ki mora vseskozi biti v električnem stiku

z uporovno sledjo le-te ni mogoče dobro zaščititi pred prahom oksidacijo in drugimi

nečistočami

Zaradi ogljika kot uporovnega elementa v potenciometru nastaja šum Nečistoče

povzročajo slab električni stik na uporovni sledi kar je dodaten vir šuma Še več zaradi

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

8 Vgrajen sistem za avdio predojačevalnik

njih se pri vsakem gibu drsnika pojavi šum ki ga zaznamo kot praskanje in hreščanje v

zvočnikih

Četudi imajo potenciometri nezanemarljive pomanjkljivosti se zaradi enostavne in poceni

proizvodnje še zmeraj najpogosteje uporabljajo Pri draţjih napravah se proizvajalci tudi

uspešno trudijo izboljšati odpornost uporovnih sledi in drsnikov na okoljske vplive

Prednost potenciometrov je tudi enostavno daljinsko upravljanje saj je zato potreben le

majhen elektromotor z reduktorjem

Večpolno stikalo z upori

Večpolno stikalo z upori se uporablja v napravah višjih cenovnih razredov Sestavljeno je

iz vrtečega se stikala ndash preklopnika in lestvice diskretnih uporov Zaradi izogiba ogljikovi

uporovni sledi ter drsniku pri takšni napravi nastane manj šuma Za razliko od

potenciometra ki je zvezno nastavljiv je večpolno stikalo stopenjsko Več pozicij kot ima

stikalo bolj natančno lahko nastavimo glasnost

Slika 222 Princip zgradbe večpolnega stikala z upori

Takšna stikala ponavadi niso primerna za daljinsko upravljanje saj njihova zgradba in

stopnje oteţujejo krmiljenje z motorji

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 9

Večkratni zaporedno vezani delilnik napetosti

Z daljinskimi upravljalniki za domače avdio in video naprave se je pred pribliţno 30-imi

leti pojavila potreba po alternativnih atenuatorjih za regulacijo glasnosti Pojavili so se ti

večkratni zaporedni delilniki napetosti Bili so vgrajeni v ohišja integriranih vezij funkcije

stikal za preklop pa so opravljali FET1 tranzistorji Zaradi integracije v integrirana vezja je

mogoče narediti stopenjski atenuator z izjemno velikim številom stopenj ter za uporabnika

neslišnimi skoraj linearnimi prehodi med stanji

Takšen atenuator deluje na principu več zaporedno vezanih delilnikov napetosti Vsak

delilnik napetosti ima svojo lastno vrednost slabljenja Več kot imamo delilnikov napetosti

manjši so koraki med nivoji glasnosti Krmilimo jih z ustreznim binarnim številom

Slika 223 Primer sheme zaporednega delilnika napetosti

Kljub praktičnosti takšnih atenuatorjev le-ti niso primerni za avdio naprave visokih

kvalitetnih razredov Veliko število elementov in povezav stlačenih na majhnem prostoru

v integriranih vezjih povzroča parazitne kapacitivnosti ter šum in nelinearnosti v

prenosnih karakteristikah

Zaradi omenjene zgradbe in iz tega izvirajočih slabosti takšen atenuator ne sodi v aparate

načrtovane po načelu minimalistične zgradbe Da bi vseeno ohranili praktičnost in

fleksibilnost večkratnega zaporedno vezanega delilnika napetosti je kot stikalne elemente

mogoče uporabiti releje

1 FET ndash Field Effect Transistor

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

10 Vgrajen sistem za avdio predojačevalnik

Slika 224 Primer zaporednega delilnika napetosti v praktični izvedbi

Takšno vezje za regulacijo glasnosti z releji kot stikalnimi elementi zdruţuje kvalitete

večpolnega stikala z enostavnim elektronskim upravljanjem Slednje nam daje moţnost

daljinskega upravljanja Ker se v vezju uporabljajo releji za majhne signale ki se masovno

proizvajajo so stroški proizvodnje temu primerno nizki Takšni releji imajo ponavadi

pozlačene kontakte in so vakuumsko zaprti kar omogoča še boljši električni stik ter vnaša

manj šuma

23 Upravljanje funkcij

Mikrokrmilniško vodeni aparati za komunikacijo z okoljem uporabljajo razne senzorje

stikala tipke kodirnike in druge vhodne naprave Tam kjer je potreben le izbor funkcij

aparata se najpogosteje uporabljajo tipke in rotacijski kodirniki

Tipke

Tipke so električna stikala katera so sklenjena le tedaj ko na njih pritiskamo z neko

minimalno vnaprej določeno silo Ker z mikrokrmilnikom zaznavamo le dva različna

nivoja napetosti tj 0V in 5V se ena priključna sponka veţe na maso na drugo pa se

vzporedno veţeta mikrokrmilnik in pull-up upor Slednji je priključen na napajalno

napetost 5V

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 11

Slika 231 Električna priključna shema tipke

Nekatere izvedbe mikrokrmilnikov serije ATmega nudijo moţnost prekinitev (interrupts) v

primeru spremembe nivoja napetosti na katerihkoli vratih Te funkcije ATmega8 ne nudi

Zaradi tega mikrokrmilnik napetosti na tipkah ne preverja neprestano temveč le

periodično kot je zapisano v integrirani programski kodi

Rotacijski kodirnik

Za inkrementacijo in dekrementacijo števil se v mikrokrmilniških aplikacijah najpogosteje

uporabljajo rotacijski kodirniki V primerjavi z dvema tipkama eno za povišanje drugo za

pomanjšanje števila zavzame isto število priključkov na mikrokrmilniku Vendar je bolj

prijazen do uporabnika saj z vrtenjem v eno ali drugo smer omogoča enostavno večkratno

inkrementacijo ali dekrementacijo Hitrost ponovitev je odvisna od hitrosti zasuka osi

rotacijskega kodirnika

Najpogosteje uporabljani rotacijski kodirniki imajo štiri binarna stanja V izogib napak pri

zaznavi stanj se uporablja ti Gray-ev kod Le-ta temelji na principu da se dve sosednji

vrednosti razlikujeta le za en bit

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

12 Vgrajen sistem za avdio predojačevalnik

Ko vrtimo os kodirnika se binarna stanja spreminjajo v skladu z zgornjo tabelo Ko

pridemo do zadnjega stanja znova začnemo s prvim V skladu s tem lahko za vsak premik

kodirnika ugotovimo ali smo ga zavrteli v desno ali v levo

Standardni rotacijski kodirniki se razlikujejo predvsem po številu stanj pri zasuku za 360

stopinj Tako jih najdemo z 12 16 in 24 stanji na en obrat Uporabljajo se največ za

relativno povečevanje in pomanjševanje števil saj nam ne nudijo absolutne pozicije osi

24 Daljinsko upravljanje

V zadnjih tridesetih letih se za daljinsko upravljanje glasbenih in video naprav za domačo

rabo uspešno uporablja tehnologija s prenosom podatkov s pomočjo infra rdečih ţarkov

(IR1) Osnova za delovanje IR daljinskega upravljanja sta infra rdeča oddajna dioda in

pripadajoč sprejemnik

Slika 241 IR oddajna dioda Slika 242 IR sprejemnik

IR sprejemnik v ohišju vsebuje tudi vezje za filtriranje IR signalov Na tak način se

izognemo morebitnim motnjam ki bi jih lahko povzročili drugi svetlobni viri kot so

sonce luči in druge naprave ki oddajajo svetlobo v bliţini IR frekvenčnega spektra Na

izhodni priključni sponki sprejemnika je tako prisotna ţe binarna koda katero direktno

vzorčimo z mikrokrmilnikom

V tridesetih letih obstoja IR daljinskega upravljanja so se z razvojem naprav spreminjali le

načini kodiranja binarnih informacij Poznamo najrazličnejša kodiranja oz protokole kot

so Philipsov RC5 in RC6 Sonyjev SIRCS ITT-jev JVC-jev NEC-ev RCA-jev in druge

1 Infra rdeče ali Infra Red (angl)

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 13

Sony-jev SIRCS protokol

Proizvajalec aparatov Sony je za svoje izdelke razvil IR protokol ki za prenos binarnih

informacij uporablja pulzno širinsko kodiranje Tako logično raquo1laquo predstavlja 12 ms pulz

logično raquo0laquo pa 600 μs pulz Pulzi so ločeni s 600 μs trajajočo pavzo

Slika 243 Binarno kodiranje pri SIRCS protokolu

Celoten ukaz za upravljanje aparatov je sestavljen iz 12 bitov Začne se z začetnim

signalom kateri traja 24 ms Le-ta sluţi namenu da izločimo neţelene informacije iz

drugih IR virov Sledi mu 7 bitna raquoCommandlaquo informacija od LSB1 proti MSB

2 ter 5

bitna raquoAddresslaquo informacija raquoCommandlaquo informacija sprejemniku pove kateri ukaz naj

izvrši medtem ko raquoAddresslaquo vsebuje informacijo kateremu sprejemniku oz kateri izmed

naprav je ukaz namenjen Celotni ukazi kot na sliki spodaj si sledijo v taktu 45 ms

Slika 244 Celoten ukazni niz protokola SIRCS

Ker je celotna uporabna informacija dolga 12 bitov je na voljo 4096 različnih ukazov

Philipsov RC5 protokol

Philipsov RC5 protokol je najbolj uporabljan protokol med proizvajalci kateri niso razvili

lastnega kodiranja Zaradi enostavnega kodiranja in dekodiranja ter s tem povezane niţje

cene za proizvodnjo so ga prevzeli tudi drugi proizvajalci Protokol temelji na bifaznem

Manchester-skem kodiranju s pulzi z enako dolţino katera znaša 1778 ms Logično raquo1laquo

1 LSB ndash Least Significant Bit ndash Najmanj uteţen bit

2 MSB - Most Significant Bit ndash Najbolj uteţen bit

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

14 Vgrajen sistem za avdio predojačevalnik

predstavlja 889 μs pulz kateremu sledi 889 μs pavza Logično raquo0laquo pa ravno obratno torej

889 μs pavza kateri sledi 889 μs trajajoči pulz

Slika 245 Binarno kodiranje pri RC5 protokolu

Ukazni niz je vselej sestavljen iz dveh začetnih bitov (Start bits) katera sta vselej raquo1laquo

Sledi jima ti raquoToggle bitlaquo kateri se spremeni ob vsakem novem pritisku na tipko Na tak

način sprejemnik razlikuje med večkratnim kratkim pritiskom in daljšim pritiskom na isto

tipko Naslednjih 5 bitov je naslovnih raquoAddresslaquo katerim sledi še 6 ukaznih raquoCommandlaquo

bitov Če je tipka pritisnjena neprenehoma si ukazni nizi sledijo v zaporedju 144 ms

Slika 246 Celoten ukazni niz protokola RC5

Ker je vsak ukazni niz z uporabno informacijo dolg 11 bitov je mogoče zakodirati 2048

različnih ukazov

25 Podatkovno vodilo I2C

1

Podatkovna vodila se uporabljajo za komunikacijo med digitalnimi elektronskimi

komponentami ki so priključene na isto električno povezavo Prednost vodila je da ni

potrebe po ločenih električnih povezavah Tako se zmanjša število povezav in potreb po

priključnih sponkah na komponentah Še več vse informacije ki se prenašajo po vodilu so

dostopne vsem priključenim komponentam

1 I2C ndash Inter-Integrated Circuit Bus

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59

Vgrajen sistem za avdio predojačevalnik 15

Različne naprave so vzporedno povezane na isto podatkovno linijo Zaradi tega ima vsaka

posamezna komponenta svoj lasten naslov (ang Address) Na tak način pošiljatelj določi

naslovnika kateremu je informacija namenjena

Podatkovno vodilo I2C je razvilo podjetje Philips v zgodnjih osemdesetih letih z namenom

da bi laţje in učinkoviteje povezovali komponente ki se nahajajo na isti ali različnih

elektronskih ploščah znotraj aparata Za povezavo dveh ali več komponent v skladu z I2C

protokolom sta potrebni le dve ločeni električni povezavi To sta SCL (takt oz ura) in

SDA ki je podatkovna linija I2C ne potrebuje natančno nastavljene hitrosti prenosa saj

takt oz uro generira gospodar

Slika 251 Princip povezovanja komponent z I2C vodilom

Ena komponenta največkrat je to centralni mikrokrmilnik je gospodar vodila (angl

Master) ostale komponente so suţnji (angl Slave) Gospodar vodila usmerja komunikacijo

na vodilu ter le on izmenjuje podatke s suţnji Tako dva suţnja ne moreta komunicirati

neposredno temveč zmeraj posredno preko gospodarja

Na trţišču obstaja veliko število perifernih komponent ki se lahko brez posebne

konfiguracije priključijo direktno na vodilo I2C Največkrat so to komponente suţnji ki

dopolnjujejo ţe integrirane komponente v mikrokrmilnikih Tako poznamo

integrirana vezja za razširitev vhodno izhodnih vrat

spominska vezja za razširitev spomina

AD1 in DA

2 pretvornike

razne senzorje za merjenje fizikalnih in električnih veličin

1 AD ndash analogno digitalni pretvornik

2 DA ndash digitalno analogni pretvornik

16 Vgrajen sistem za avdio predojačevalnik

integrirana vezja za krmiljenje naprav kot so zasloni za izpis podatkov

namenska vezja z moţnostjo upravljanja preko vodila I2C kot npr DSP

1 vezja

pretvorniki protokolov (Bridge Adapters)

26 Mikrokrmilnik

Integrirano vezje ki vsebuje tako mikroprocesor kot tudi razne periferne vhodno izhodne

enote se imenuje mikrokrmilnik Le-ta nadzoruje ter krmili procese v napravi v kateri je

vgrajen Zaradi visoke integriranosti in posledično enostavnosti uporabe se mikrokrmilniki

uporabljajo v večini enostavnih do srednje kompleksnih sistemov Uporabljajo se tudi za

krmiljenje perifernih komponent v visoko kompleksnih sistemih

Ker vsebujejo mikroprocesorje se tudi mikrokrmilniki razvijajo v skladu z njimi

Kakorkoli za manj zahtevne naprave zadostujejo ţe tisti z 8-bitnim mikroprocesorjem

Takšni so zaradi zadostne zmogljivosti v večini naprav za domačo uporabo še vedno

najbolj razširjeni

Različni proizvajalci integriranih vezij so razvili lastne mikrokrmilnike Kljub veliki

ponudbi prevladujeta proizvajalca Microchip in Atmel Ker se je na internetu razvila velika

skupnost uporabnikov so gradiva in orodja za razvoj elektronskih vezij in programske

opreme za omenjene mikrokrmilnike postali enostavno dostopni

Različni mikrokrmilniki istega proizvajalca se razlikujejo po

procesorski zmogljivosti

velikosti spomina

številu in vrsti vhodno izhodnih perifernih enot (razni AD in DA pretvorniki

časovniki števci primerjalniki PWM2 krmilniki podpore raznim vodilomhellip)

velikosti in vrsti ohišja

1 DSP ndash Digital Signal Processor

2 PWM ndash Pulse Width Modulation ndash pulzno širinska modulacija

Vgrajen sistem za avdio predojačevalnik 17

27 Vakuumsko fluorescenčni zaslon

Vakuumsko fluorescenčni zasloni (VFD1) se najpogosteje uporabljajo v napravah za široko

potrošnjo kjer je zahtevana dobra vidljivost visoka svetilnost in kontrast V primerjavi z

zasloni s tekočimi kristali (LCD2) so VFD zaradi omenjenih lastnosti zahtevnejši za

izdelavo so draţji in med delovanjem potrošijo več energije

Takšni zasloni so sestavljeni iz katode ki jo predstavlja tlilna nitka mreţice katera krmili

pretok elektronov ter anode iz fosforja ki ob pretoku elektronov zasveti Našteti elementi

se nahajajo znotraj steklenega ohišja pod visokim vakuumom Krmilnik zaslona krmili

napetost bodisi na mreţici ali na anodi ter tako določa kateri segment na zaslonu naj

zasveti

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Za delovanje zaslona je potrebna visoka napetost saj morajo elektroni premagati pot od

katode preko mreţice do anode

Ker imajo standardni VFD zasloni enojno napajanje (5V) imajo vgrajen stikalni pretvornik

tipa Boost3 Takšen stikalni pretvornik deluje na principu sunkovitega vklapljanja in

izklapljanja električne napetosti zaradi katerih se v tuljavi inducira visoka napetost Ker so

1 VFD ndash Vacuum Fluorescent Display ndash vakuumsko fluorescenčni zaslon

2 LCD ndash Liquid Crystal Display ndash zaslon s tekočimi kristali

3 Boost ndash tip stikalnega pretvornika ki pretvarja niţjo napetost v višjo

18 Vgrajen sistem za avdio predojačevalnik

vklopi in izklopi napetosti hipni takšen pretvornik ustvarja elektromagnetne motnje ki se

širijo po električnih vodnikih ter po prostoru

Zaradi razvoja visoko svetilnih organskih (OLED1) zaslonov kateri potrošijo manj

električne moči se vakuumsko fluorescenčni zasloni čedalje bolj umikajo iz aparatov za

široko potrošnjo

28 Izdelava tiskanih vezij

Tiskano vezje je plošča na kateri se nahajajo bakrene električne povezave Le-te

nadomestijo ţice s katerimi bi sicer morali povezati elemente Uporabljati so se začela v

50-ih letih prejšnjega stoletja in so prispevala so k hitrejši zanesljivejši in cenejši

proizvodnji aparatov Pripomogla so tudi k enostavnejšemu vzdrţevanju vezij saj so

veliko bolj pregledna od prosto oţičenih

Ţe najenostavnejša tiskana vezja se načrtujejo z računalnikom saj jih je le tako mogoče

najenostavneje urediti ter se izogniti morebitnim napakam pri povezavah Na voljo je

veliko različnih programskih paketov za načrtovanje in izdelavo tiskanih vezij Za

načrtovanje enostavnih in srednje kompleksnih vezij je dovolj zmogljiva večina

programskih paketov Katerega bo uporabil se zato razvijalec ponavadi odloči na osnovi

lastnih izkušenj Ker smo v preteklosti ţe uporabljali programski paket CadSoft Eagle in je

uspešno zadovoljil vse naše potrebe smo se odločili zanj

Tiskana vezja se izdelujejo na različne načine Za majhne serije in prototipe se pred vsemi

uporabljata dva načina izdelave Baker s katerim je oslojena plošča iz izolacijskega

materiala je mogoče odstraniti s frezalnim postopkom z računalniško vodenim frezalnim

strojem ali pa s fotokemičnim postopkom Za izdelavo smo izbrali fotokemični postopek

saj zanj ne potrebujemo dragega frezalnega stroja temveč le nekaj cenenih enostavno

dostopnih pripomočkov

Pri obeh postopkih se uporabljajo z bakrom oslojene pertinaks ali vitroplast plošče

Pertinaks plošče so izdelane iz impregnirane papirne mase vitroplast plošče pa iz steklenih

1 OLED ndash Organic Light Emitting Diode

Vgrajen sistem za avdio predojačevalnik 19

vlaken Odločili smo se za slednje saj so bolj odporne proti nastajanju plesni in so

mehansko in termično odpornejše

Pri fotokemičnem postopku je baker na omenjenih ploščah oslojen še s slojem fotolaka

Le-ta na izbranih mestih ščiti baker pred kislino V izogib oslojevanju ki terja precej

izkušenj se uporabljajo ţe vnaprej s fotolakom oslojene plošče Sliko tiskanega vezja se

natisne na navaden pisarniški papir ter skozi njo z UV1 svetlobo osvetli ploščo Na mestih

kjer skozi sliko prodre UV svetloba fotolak razpade S plošče ga očistimo z raztopino

natrijevega hidroksida NaOH2

Na mestih kjer fotolak ostane nedotaknjen po jedkanju ostanejo bakrene povezave Na

preostalih delih kislina pride v stik z bakrom ga razgradi ter s tem prekine električne

povezave Po jedkanju le še s finim brusnim papirjem odstranimo preostanke fotolaka in

izvrtamo luknje za elemente

29 Programski jezik

Mikrokrmilniki se tako kot ostali mikroprocesorji programirajo v najrazličnejših

programskih jezikih Ti zajemajo strojni jezik ki je lasten vsakemu mikrokrmilniku

posebej kot tudi višje programske jezike Za pisanje manj zahtevnih programov za

mikrokrmilnike proizvajalca Atmel se najpogosteje uporabljata programska jezika Basic in

C Za vsak jezik je na voljo več urejevalnikov in prevajalnikov Vsak izmed njih nudi

razne funkcije in vgrajene ţe napisane rutine za hitrejše in enostavnejše pisanje

programov Tako se programerju ni potrebno ukvarjati s posameznimi protokoli ki so

lastni vsakemu elementu temveč mora poznati le standardne oblike naslavljanja ter branja

podatkov Tako kot pri izbiri programa za načrtovanje tiskanih vezij se tudi pri izbiri

urejevalnika in prevajalnika odločamo na osnovi preteklih izkušenj in ţe osvojenih znanj

uporabe različnih programskih paketov

1 UV svetloba ndash Ultravijolična svetloba

2 NaOH ndash Natrijev hidroksid (lug)

20 Vgrajen sistem za avdio predojačevalnik

Za naš mikrokrmilnik smo uporabili programski paket BASCOM Basic Le-ta je enostaven

za uporabo in še posebej primeren za začetnike saj vključuje najrazličnejše vgrajene rutine

in ukaze za laţje in enostavnejše programiranje

Pomanjkljivost programskega jezika Basic je nepregledna zgradba daljših in

kompleksnejših programov vendar so omenjene prednosti ter izkušnje s programskim

paketom odtehtale to slabost

Vgrajen sistem za avdio predojačevalnik 21

3 IZVEDBA

Namen raziskovalnega dela je bil razviti integriran kontrolni sistem za obstoječ avdio

predojačevalnik Le-ta je zasnovan v skladu z minimalistično arhitekturo in spada v

skupino aparatov višjega cenovnega razreda Sistem je bil razvit z namenom uporabniku

nuditi enostavno in udobno upravljanje ter preventivno preprečiti morebitne motnje ki bi

lahko vplivale na kvaliteto reprodukcije glasbe

Zaradi tega se bomo osredotočili le na sestavne dele kontrolnega sistema in ne na

predojačevalnik kot celoto Če zaradi razumevanja sistema ne bo nujno potrebno se bomo

v opisih izognili ostalih komponent predojačevalnika

Kontrolni sistem je sestavljen iz treh med seboj ločenih enot To so centralna krmilna

plošča plošča za razdelitev napajanja in krmiljenje relejev ter plošča za nastavitev

glasnosti Za takšno razdelitev smo se odločili zato ker je le na tak način najlaţje in z

najkrajšimi povezavami posamezne enote mogoče priključiti na ostale dele

predojačevalnika Vse tri enote so povezane z 10-ţilnim ploščatim kablom na katerem se

nahajajo napajanje 5V in 12V ter komunikacijsko vodilo I2C

Slika 301 Shema kontrolnega sistema za predojačevalnik

31 Centralna krmilna enota in izpis na zaslon

Osrednji del krmilnega vezja predstavlja centralna krmilna enota Na njej se nahaja

napajanje za vse tri enote zunanje releje in zaslon V središču plošče je mikrokrmilnik

Atmel tipa ATmega8 skupaj s standardnimi elementi katere potrebuje za delovanje Enota

22 Vgrajen sistem za avdio predojačevalnik

ima priključke za napajanje priključek za vodilo I2C poseben priključek za zaslon

priključek za programiranje ISP1 ter priključka za tipke in sprejemnik IR

Napajalni del tvorijo trije napetostni regulatorji s pripadajočimi elementi (sl 311) Dva

regulatorja sta tipa 7805 za regulirano napajanje +5V ter eden tipa 7812 za napajanje

+12V Pripadajoče elemente smo izbrali na osnovi priporočil proizvajalca regulatorjev

ustaljenih praks in zahtevanih največjih bremenskih tokov

Mikrokrmilniki Atmel serije ATmega imajo ţe vgrajen RC oscilator zato za nezahtevne

aplikacije ne potrebujemo zunanjega kristalnega oscilatorja To lastnost smo s pridom

izkoristili saj z uporabo notranjega oscilatorja zmanjšamo motnje ki jih povzroča zunanji

kristal in njegovi priključki

Za frekvenco delovanja mikrokrmilnika smo izbrali 1MHz saj ne potrebujemo visoke

računske zmogljivosti Razen tega nizka frekvenca pripomore k manjši porabi električne

energije ter podaljša ţivljenjsko dobo mikrokrmilnika

Za laţje programiranje in enostavnejše kasnejše nadgradnje smo naredili priključek za

programiranje ISP ki bo dostopen tudi na zadnji plošči predojačevalnika Priključne

sponke na mikrokrmilniku si deli s tipkami na čelni plošči Ko le-te niso pritisnjene ne

more priti do motenj med programiranjem Tak priključek nam omogoča programiranje

mikrokrmilnika brez da bi odprli pokrov celotnega aparata

Tipke smo priključili neposredno na priključne sponke vhodov mikrokrmilnika Uporabili

smo vgrajene pull-up upore kateri se aktivirajo na začetku programske rutine

Vodilo I2C smo pravtako neposredno priključili na priključne sponke vhodov

mikrokrmilnika Na plošči se nahaja standardni 10-ţilni priključek za ploščati kabel

Na centralno krmilno enoto se neposredno priključi tudi IR sprejemnik za daljinsko

upravljanje saj vsebuje ţe vsa potrebna vezja za direktno komunikacijo z

mikrokrmilnikom po standardu TTL2

Predojačevalnik ima posebno funkcijo za popoln izklop aparata katero krmili

mikrokrmilnik Vezje za izklop je načrtovano na osnovi samovzdrţevalnega releja Ko se

1 ISP ndash In System Programming

2 TTL ndash Transistor-Transistor Logic

Vgrajen sistem za avdio predojačevalnik 23

napajanje tega releja vsaj za trenutek prekine rele popusti in s tem prekine dovod

napajanja celotnemu predojačevalniku Smisel tega vezja je da se aparat popolnoma loči

od omreţja ko ni v uporabi Tako ne troši energije ko je v pripravljenosti

Za prekinitev napajanja omenjenega releja je zadolţen drugi dodaten rele Ko se le-ta

aktivira prekine napajanje prvemu Za slednjega smo predvideli običajno vezje za

krmiljenje relejev (sl 711) Ker tokovna zmogljivost mikrokrmilnika ni zadostna za

napajanje releja smo za povečanje bremenskega toka uporabili standardni bipolarni npn

tranzistor BC547 Slednji vzpostavlja stik oz tok med negativnim priključkom releja in

maso vezja

Zaslon ima neposredno 4-bitno povezavo z mikrokrmilnikom Na standardni 10-ţilni

priključek za ploščati kabel smo priključili tudi oba napajanja za VFD zaslon To sta

napajanja 5V eden za logični del zaslona ter drugi za visokonapetostni del

Kot smo omenili v poglavju 27 se visoka napetost za napajanje svetilnega dela zaslona

generira s stikalnim pretvornikom tipa Boost Takšen pretvornik deluje na sunkovitem

vključevanju in izključevanju električne napetosti kar povzroča električne in

elektromagnetne motnje Le-te se ne širijo le po vezju predojačevalnika temveč tudi po

prostoru V avdio napravah višjih kvalitetnih razredov niso zaţelene Zato smo napajanje

zaslona zasnovali tako da se vključi le ob potrebi ter se po določenem času znova

samodejno izključi

Slika 311 Napajalni del centralne enote

24 Vgrajen sistem za avdio predojačevalnik

To smo izvedli z dodatnim 5V napajalnim delom kateri se po potrebi vključi in izključi

Ker je padec napajalne napetosti 07V kateri se pojavi na FET1 tranzistorju IRF4905

nedopusten smo regulator priključili šele za tranzistorjem (sl 311) Ker so napetostni

nivoji na izhodih mikrokrmilnika neprimerni da bi krmilili FET tranzistor smo uporabili

dodaten npn tranzistor BC547 skupaj s pull-up uporom Tako smo dobili zadostno

napetost in pravilne napetostne nivoje za krmiljenje FET tranzistorja v razponu pribliţno

125V

32 Vodilo I2C in njegove komponente

Da smo prihranili priključne sponke in vhode na mikrokrmilniku oz da smo lahko izbrali

mikrokrmilnik z manjšim ohišjem ter da smo poenostavili medsebojno povezovanje enot

smo izbrali podatkovno komunikacijsko vodilo I2C Vodilo sestavlja komponenta ndash

gospodar (master) v našem primeru je to mikrokrmilnik ki ukazuje in komunicira z

ostalima dvema komponentama ndash suţnjema (slave) Slednji sta namenski integrirani vezji

I2C za razširitev digitalnih vhodov in izhodov tipa PCF8574 proizvajalca Philips

PCF8574 je 8-bitna komponenta za razširitev vhodnih in izhodnih vrat Vsakega izmed

njenih 8-ih priključkov je mogoče nastaviti kot vhod ali kot izhod Razen tega je na voljo

še dodaten prekinitveni izhod s katerim gospodarju signalizira da se je spremenil vsaj

eden izmed vhodov Tako gospodar zahteva podatke le takrat ko je to potrebno

Tokovna zmogljivost izhodnih priključkov PCF8574 znaša 25mA kar je premalo da bi

neposredno iz njih napajali vse releje Zato smo izbrali gonilno integrirano vezje

ULN2003 ki poveča največji dovoljeni tok Priključne sponke ULN2003 smo neposredno

povezali z negativnimi priključki relejev (sl 713)

Ob vklopu napajanja so vse priključne sponke vezja PCF8574 v visoko impedančnem

stanju (open drain) Ker ULN2003 obrača fazo so njegovi izhodi v stanju logične ničle

torej povezani z maso vezja Sledi da bi se ob vsakem vklopu napajanja vključili vsi releji

dokler mikrokrmilnik ne bi inicializiral izhodov vezja PCF8574

1 FET ndash Field Effect Transistor

Vgrajen sistem za avdio predojačevalnik 25

Da bi se izognili temu nezaţelenemu pojavu smo razvili zakasnitveno vezje ki z

zakasnitvijo vključi napajanje na pozitivnih priključnih sponkah relejev V ta namen smo

uporabili standardno integrirano vezje 555 ki napajanje relejev vključi šele po poteku časa

2s V tem času je mikrokrmilnik ţe inicializiral izhode komponent ndash suţnjev na vodilu I2C

Ker izhod vezja 555 nima zadostne tokovne zmogljivosti smo uporabili dva vzporedno

vezana bipolarna pnp tranzistorja tipa BC557

Opisan tip vezja smo uporabili na enoti za razdelitev napajanja in krmiljenje relejev kot

tudi na enoti za nastavitev glasnosti

33 Upravljanje na čelni plošči

Upravljanje in dostop do funkcij bo mogoč na čelni plošči ter preko daljinskega

upravljalnika Funkcije predojačevalnika obsegajo

Izbor avdio vhoda

Uravnavanje glasnosti

Funkcija za utišanje (Mute) in

Izklop aparata

Slika 331 Čelna plošča predojačevalnika

Ob vsakem sprejetem ukazu bodisi preko čelne plošče ali preko daljinskega upravljalnika

se bo vključil zaslon ter izpisal sprejet ukaz Po pretečenem času 5s se bo znova

samodejno izključil

Tipke na čelni plošči smo neposredno povezali s priključnimi sponkami vhodov

mikrokrmilnika Namesto zunanjih pull-up uporov smo uporabili notranje ţe vgrajene v

mikrokrmilnik Te vključimo na začetku ob inicializaciji

26 Vgrajen sistem za avdio predojačevalnik

V glavni rutini periodično preverjamo tipke ker krmilnik tipa ATmega8 nima moţnosti PC

prekinitev (PC prekinitve bi sproţile prekinitveno rutino vsakič ko bi se spremenilo stanje

vsaj enega bita na posameznem vhodu) Skladno s tem katera tipka je bila pritisnjena

spremenimo zastavico za ukaz Kasneje v glavni rutini preverimo zastavice in po potrebi

izvršimo ţelen ukaz

34 Rotacijski kodirnik

Rotacijski kodirnik (kodirnik) uporabljamo za nastavitev ţelene glasnosti predvajanja

glasbe Ko spremenimo njegov poloţaj se istočasno spremeni tudi glasnost Vključi se

zaslon ter se izpiše stopnja nastavljene glasnosti Čez 5s se zaslon znova izključi

Izbrali smo rotacijski kodirnik z drsnimi kontakti ter 24 stanji na obrat Vsako stanje ima

poloţaj kjer se os kodirnika rahlo zatakne Tako dobimo neposredno povratno informacijo

za koliko korakov smo spremenili glasnost

Ker so na plošči za nastavitev glasnosti ostali prosti še trije vhodi smo dva uporabili za

priključitev kodirnika Tukaj smo s pridom uporabili prekinitveno funkcijo integriranega

vezja PCF8574 Ko spremenimo stanje kodirnika PCF8574 pošlje signal za prekinitev

mikrokrmilniku kateri nemudoma preveri njegova stanja V skladu s postavljeno

zastavico ki signalizira ali smo kodirnik zavrteli en korak v desno ali en v levo

mikrokrmilnik v glavni rutini spremeni nastavitev atenuatorja za glasnost

Da ugotovimo kam smo zavrteli os kodirnika moramo poznati njegovo prejšnje stanje

Zato ob vklopu napajanja ob inicializaciji preberemo njegovo trenutno stanje Kasneje ob

vsaki prekinitvi najprej preverimo kateri izmed dveh bitov se je spremenil in je sproţil

signal za prekinitev Če je to storil bit A v nadaljevanju pogledamo ali sta stanji A in B

različni Če sta različni je os bila zavrtena v desno sicer je bila zavrtena v levo Če pa je

signal za prekinitev sproţil bit B v nadaljevanju pogledamo ali sta stanji A in B enaki Če

sta enaki je os bila zavrtena v desno sicer je bila zavrtena v levo

Vgrajen sistem za avdio predojačevalnik 27

Slika 341 Stanja rotacijskega kodirnika

35 Daljinsko upravljanje

Vse vgrajene funkcije predojačevalnika so uporabniku dostopne na čelni plošči aparata ter

preko daljinskega upravljalnika Uporabimo lahko vsak daljinski upravljalnik ki podpira

Philipsov protokol RC5 in je namenjen upravljanju ojačevalnika Najbolj primerni so ti

univerzalni upravljalniki katere lahko nastavimo na poljuben protokol

Edina komponenta potrebna za sprejem daljinskih ukazov je IR sprejemnik (sl 242)

Sprejemnik tipa SFH5110 ţe vsebuje vezje ki izloči IR signale na nosilni frekvenci

36kHz Za dekodiranje ukazov po protokolu RC5 smo morali napisati le še programsko

rutino Ker je IR sprejemnik priključen na vhod mikrokrmilnika ki podpira prekinitve se

programska rutina za dekodiranje RC5 ukazov zaţene le ob potrebi

Ko IR sprejemnik sprejme signal v območju infrardeče svetlobe (940nm) z nosilno

frekvenco 36kHz v mikrokrmilniku sproţi prekinitev Takoj se zaţene programska rutina

za dekodiranje RC5 ukazov

V primeru veljavnega RC5 ukaza prekinitev sproţi prvi Start bit oz bit1 (sl 351) ko se

prvič spremeni stanje iz logične 0 na 1 Ker Toggle bit za našo aplikacijo ni pomemben ga

preskočimo Manchestrsko kodiranje vzorčimo zmeraj na sredini druge polovice bita Nivo

signala na tem mestu predstavlja logično stanje pripadajočega bita Od začetka

prekinitvene rutine počakamo 475μs preden začnemo vzorčiti prvi naslovni (Address) bit

(bit4) Nato počakamo naslednjih 173μs ter vzorčimo naslednji bit Proceduro ponovimo

za vseh 5 bitov Enako storimo še za sledečih 6 ukaznih (Command) bitov

28 Vgrajen sistem za avdio predojačevalnik

Slika 351 Primer ukaza po protokolu RC5

Kasneje v glavni rutini dobljen naslov (Address) in ukaz (Command) primerjamo z

vrednostmi v tabeli ter spremenimo zastavico za ukaz Slednja v nadaljevanju programa

povzroči izvršitev ukaza

36 Krmiljenje stikal in preklopnikov

Krmilno vezje in programske rutine smo zasnovali tako da so preklopi ob izvršitvah

funkcij predojačevalnika čimmanj opazni za uporabnika ter neškodljivi za zvočnike Med

preklopi relejev lahko pride do sunkovitih izenačitev električnih potencialov kar se sliši

kot neprijeten raquopoklaquo v zvočnikih Takšne napetostne konice niso le neprijetne za

uporabnika temveč so tudi škodljive za zvočnike

Da se izognemo omenjenim pojavom je vgrajen rele ki izhod predojačevalnika ob potrebi

sklene z maso Tako pred vsakim preklopom kateregakoli releja v aparatu najprej

sklenemo izhod z maso izvršimo ustrezne preklope relejev ter šele po času 500ms od

preklopa zadnjega releja znova sprostimo izhod

Iz tega pravila je izvzet atenuator za nastavitev glasnosti saj ţelimo da se glasnost

spreminja zvezno Povrhu tega smo ga zasnovali tako da preklopi ne povzročijo za

poslušalca opaznih razelektritev

37 Nastavitev glasnosti - atenuator

Da bi se izognili čim večjemu številu moţnih vzrokov za nastanek šuma in drugih

nelinearnosti pri prenosu avdio signala smo tudi atenuator za nastavitev glasnosti

Vgrajen sistem za avdio predojačevalnik 29

načrtovali po načelu minimalistične zgradbe V ta namen smo uporabili zaporedno vezani

delilnik napetosti z releji kot stikalnimi elementi

Atenuator se nahaja na posebnem zanj predvidenem tiskanem vezju S centralno krmilno

ploščo je povezan z 10 ţilnim ploščatim kablom Na njem se nahajajo napajanje 5V za

krmilno vezje 12V za napajanje relejev ter vodilo I2C za komunikacijo z

mikrokrmilnikom

Pravtako kot na plošči za razdelitev napajanja in krmiljenje relejev smo tudi tukaj kot

vmesnik za vodilo I2C uporabili integrirano vezje PCF8574 za razširitev vhodno izhodnih

vrat Ker tokovna zmogljivost slednjih ni zadostna za krmiljenje relejev smo posegli po

gonilnem vezju ULN2003

Vsi priključki PCF8574 so ob vklopu v visoko impedančnem stanju ULN2003 pa obrača

fazo To pomeni da bi se ob vklopu vključili vsi releji dokler mikrokrmilnik na vodilo ne

bi poslal ukaz za inicializacijo vrat Da bi se izognili temu neţelenemu pojavu smo v vezje

vgradili zakasnitev vklopa napajanja relejev Kot na plošči za razdelitev napajanja in

krmiljenje relejev smo tudi tukaj uporabili splošno znan časovnik integrirano vezje 555

ter dva vzporedno vezana p-kanal FET tranzistorja BS250 za povečanje tokovne

zmogljivosti Tako se napajanje relejev vključi po poteku določenega časa šele potem ko

je mikrokrmilnik inicializiral vhode in izhode integriranega vezja PCF8574

Slika 371 Krmilno vezje atenuatorja

Sam atenuator je zgrajen zelo enostavno in pregledno Ker smo ţeleli slabljenje do 62dB in

za našo aplikacijo zadoščajo koraki po 2dB smo uporabili 5 zaporedno vezanih delilnikov

napetosti Releji so izvedeni kot dvojna preklopna stikala To lastnost smo s pridom

uporabili za istočasno krmiljenje delilnikov napetosti za levi in desni kanal

30 Vgrajen sistem za avdio predojačevalnik

Za delilnike napetosti smo uporabili upore izdelane po tehnologiji kovinskega traku

Takšni so za našo aplikacijo še posebej primerni saj vnašajo manj šuma kot oglene

izvedenke

Slika 372 Shema atenuatorja

Upore smo izbirali po spodnji formuli tako da izhodna upornost atenuatorja Rizh ne

preseţe 10kΩ in da vhodna upornost Rvh ni manjša od 10kΩ

2

1 2

RA

R R

20logA dB A (371)

Izračun za prvi delilnik napetosti katerega dušenje naj znaša 2dB pod pogojem da vhodna

upornost delilnika ni manjša od 10kΩ Dušenje 2dB je torej enako ojačenju A[dB]

2

20 2020log 10 10 08

A dB

A dB A A

(372)

Če je R1=10kΩ

2 12

1 2

08 08 1039

1 08 02

R R kA R k

R R

(373)

Ko smo izračunali upore za vse delilnike preverimo še ali je vhodna upornost atenuatorja

še zmeraj večja ali enaka 10kΩ To storimo tako da seštejemo vse vzporedne upornosti

vključenih atenuatorjev

11 12 21 22

11 12 21 22

1 1 1 1

1 1

vh

vh

RR R R R R

R R R R

(374)

Vgrajen sistem za avdio predojačevalnik 31

Izračunali smo še preostale upore za delilnik

Tabela 371 Izračun uporov za delilnik

slabljenje ojačanje upornost upornost

A[dB] A R1[k] R2[k]

-2 079 10 386 486

-4 063 16 274 434

-8 040 16 106 266

-16 016 56 105 665

-32 003 470 121 4821

skupna vh upornost 102 k

Pri izvedbi smo izbirali upore z najbliţjo vrednostjo izračunani Zahteve po natančnosti za

enakomernost korakov niso visoke zato so vrednosti uporov lahko odstopale tudi do 10

V kolikor ni bilo upora z dovolj podobno vrednostjo smo vzporedno vezali dva primerna

upora

32 Vgrajen sistem za avdio predojačevalnik

4 MERITVE IN REZULTATI

Za meritve in posnetke smo uporabili naslednjo merilno opremo

Multimeter Philips PM2525

Funkcijski generator Philips PM5131

Milivoltmeter Grundig MV5-O

Osciloskop Rigol DS1052

41 Potrošnja električnega toka in energije

Vgrajen kontrolni sistem za avdio predojačevalnik ima dvojno napajanje

5V za digitalna vezja (mikrokrmilnik zaslon ter I2C in RC5 enote)

12V za napajanje relejev

Poraba električnega toka je odvisna predvsem od vključenih enot Največji potrošnik je

zaslon ki je vključen le ob potrebi Posamezni releji sicer potrošijo manj el toka vendar

jih je veliko Zato se poraba precej razlikuje med različnimi stanji kontrolnega sistema

Poraba električnega toka napajanja 5V

mikrokrmilnik s pripadajočim vezjem in enotami max 12 mA

VFD zaslon (poraba je odvisna od prikazane slike) max 300 mA

LED diode (4 diode) 4 16 mA

Skupna največja poraba toka napajanja 5V pribliţno 372 mA

Poraba električnega toka napajanja 12V

releji za vklop napajanja RIAA predojačevalnika (2 releja) 2 35 mA

releji v vhodni enoti za preklop avdio signalov (6 relejev) 6 20 mA

releji v atenuatorju (5 relejev) 5 12 mA

Skupna največja poraba toka napajanja 12V pribliţno 200 mA

Vgrajen sistem za avdio predojačevalnik 33

Čeprav je v vhodni enoti 6 relejev v nobenem stanju kontrolnega sistema niso vključeni

vsi temveč največ 3 releji

42 Podatkovno vodilo I2C

Z osciloskopom smo preverili komunikacijo na podatkovnem vodilu I2C Za ta namen smo

si izbrali spremembo glasnosti (iz stopnje glasnosti 21 na 22) kar predstavlja spremembo

dušenja atenuatorja iz 22dB na 20dB

Zasuk rotacijskega kodirnika v desno sproţi zahtevo po prekinitvi preko prekinitvene

linije ki poteka vzporedno z vodilom I2C V prekinitveni rutini mikrokrmilnik zahteva

podatke od PCF8574 (suţenj) ter jih prebere (sl 421) Pred izhodom iz prekinitvene rutine

se postavi zastavica da je potrebno ovrednotenje podatkov in sprememba nastavitve

atenuatorja

Mikrokrmilnik se ob prekinitvi lahko nahaja na kateremkoli mestu glavne rutine Zato je

odvisno od naključja po kakšnem času bo upošteval zastavico in zagnal rutino za

ovrednotenje podatkov in spremembo stanja atenuatorja (sl 422) Posneli smo 30

sprememb glasnosti najdaljši čas je znašal 25ms

Na obeh slikah je prva polovica niza do potrditve (acknowledge) zahtevek

mikrokrmilnika (gospodarja) za enega izmed suţnjev (slave) Prvih 7 bitov predstavlja

naslov suţnja 8 bit pa ali bo gospodar sprejemal podatke (read) ali pa jih bo poslal suţnju

(write) Druga polovica niza oz zadnjih osem bitov za potrditvenim bitom (acknowledge

bit) predstavlja stanje vrat PCF8574 Prva dva bita predstavljata stanje rotacijskega

kodirnika tretji bit je neuporabljen naslednjih pet bitov pa predstavlja stanje atenuatorja

Slika 421 Branje enote PCF8574 Slika 422 Sprememba glasnosti ndash 20dB

34 Vgrajen sistem za avdio predojačevalnik

Iz prve slike je tako razvidno da je ob branju atenuator imel vrednost 10100 kar ustreza

dušenju 22dB Na drugi sliki je mikrokrmilnik poslal novo stanje atenuatorja 10101 za

dušenje 20dB

43 Protokol daljinskega upravljanja RC5

Z osciloskopom smo preverili podatke na izhodni priključni sponki sprejemnika za

daljinsko upravljanje Po pravilih Manchestrskega kodiranja prehodi stanj določajo

binarne vrednosti Zato smo v spodnjih slikah binarne vrednosti zapisali pod prehode stanj

V primerjavi s teoretičnimi diagrami ima signal tukaj obrnjeno fazo Na obeh slikah sta

razvidna začetna bita (Start Bits) in bit za spremembo (Toggle Bit) Vse tri ignoriramo

Vzorčiti začnemo šele pri četrtem bitu kjer se začne naslovni niz (Address)

Slika 431 Zmanjšanje glasnosti Slika 432 Povečanje glasnosti

Naslovni niz 10000 (bin) = 16 (dec) Naslovni niz 10000 (bin) = 16 (dec)

Ukazni niz 010001 (bin) = 17 (dec) Ukazni niz 010000 (bin) = 16 (dec)

Po Philipsovem standardu RC5 imajo ojačevalniki naslov 16 Ukaz 17 je dodeljen

zmanjšanju ukaz 16 pa povečanju glasnosti

Vgrajen sistem za avdio predojačevalnik 35

44 Atenuator

Atenuator ima 32 stopenj dušenje se lahko nastavi od 0dB do 62dB po korakih 2dB

Dušenje smo merili tako da smo na vhod atenuatorja priklopili sinusni generator s

frekvenco 1kHz ter nastavili največjo moţno amplitudo Na izhodu atenuatorja smo z

milivoltmetrom merili dušenje atenuatorja od 0dB do 62dB

Tabela 411 Meritev dušenja atenuatorja

Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2 Dušenje Kanal 1 Kanal 2

Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko Stopnja zahtevano dejansko dejansko

na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB] na zaslonu [dB] [dB] [dB]

32 0 00 00 21 22 216 216 10 44 438 438

31 2 19 19 20 24 238 238 9 46 458 458

30 4 40 40 19 26 258 258 8 48 477 477

29 6 59 59 18 28 279 279 7 50 492 492

28 8 80 80 17 30 299 299 6 52 509 509

27 10 99 99 16 32 319 319 5 54 527 527

26 12 119 119 15 34 338 338 4 56 545 545

25 14 139 139 14 36 358 358 3 58 560 560

24 16 157 157 13 38 379 379 2 60 575 575

23 18 177 177 12 40 398 398 1 62 586 586

22 20 197 197 11 42 418 418

Iz rezultatov je razvidno da delilnika napetosti za 2dB in 15 dB nista bila dovolj natančno

odmerjena saj sta njuni dejanski vrednosti dušenja 19dB in 157dB Popraviti bi morali

predvsem delilnik z dušenjem 16dB saj njegova napaka znaša 03dB

Ker nismo imeli na razpolago upora 105kΩ smo vstavili upor 13kΩ Dušenje bi lahko

popravili z zmanjšanjem upora R16 (R22 za kanal 2) ali povečanjem upora R4 (R10 za

kanal 2)

Razvidno je tudi da se izmerjene vrednosti z večjim dušenjem več ne ujemajo s

teoretičnimi vrednostmi Zaradi velikega dušenja od pribliţno 50dB naprej je signal na

izhodu atenuatorja majhen Takrat je razlika med merjenim signalom in šumom ţe tako

majhna da z milivoltmetrom ne merimo več le sinusnega signala temveč tudi šum Slednji

se prišteje k signalu ter tako navidezno zmanjša dušenje

Da bi odpravili to napako pri merjenju bi morali uporabiti večjo amplitudo sinusnega

signala na vhodu atenuatorja V ta namen bi morali med sinusni generator in atenuator

priključiti še ojačevalnik ki bi povečal amplitudo signala

36 Vgrajen sistem za avdio predojačevalnik

Frekvenčno karakteristiko smo izmerili s pomočjo funkcijskega generatorja s funkcijo

preleta frekvenc od 0 do 30kHz Posneli smo karakteristiko atenuatorja pri dušenju 0dB

saj so takrat vsi delilniki napetosti izključeni Pri dušenju 30dB pa so vključeni vsi razen

zadnjega ki sicer duši 32dB

Slika 441 Dušenje 0dB Slika 442 Dušenje 30dB

Iz frekvenčnih karakteristik je razvidno da ima atenuator linearno frekvenčno

karakteristiko in tako ne vpliva na frekvenčni odziv predojačevalnika

Da smo ugotovili kako se atenuator obnaša med preklopi relejev smo na vhod

atenuatorja priklopili enosmerno napetost 5V ter jo z osciloskopom merili na izhodu

Atenuator smo zasnovali tako da je njegovo dušenje največje če so releji izključeni oz

brez napetosti Dušenje posamezne stopnje atenuatorja se izključi čim vključimo dotični

rele

Slika 443 prikazuje trenutek ko smo spremenili dušenje iz 2dB na 0dB v katerem se je

vključil rele (K1) za dušenje 2dB Na sliki ni zaznati motenj pri prehodu Prehod dušenja iz

0dB na 2dB je manj gladek Pojavi se poskakovanje kontakta releja

Slika 443 Spre dušenja iz 2dB na 0dB Slika 444 Spre dušenja iz 0dB na 2dB

Vgrajen sistem za avdio predojačevalnik 37

Pravtako se pojavlja poskakovanje kontaktov relejev pri večini ostalih prehodov stanj Na

spodnjih dveh slikah je viden tudi čas med izklopom enega in vklopom drugega releja Ta

znaša med 250μs in 350μs

Slika 445 Spre dušenja iz 2dB na 4dB Slika 446 Spre dušenja iz 4dB na 6dB

Naslednja slika prikazuje spremembo dušenja od 20dB do 0dB če pritisnemo in drţimo

gumb na daljinskem upravljalniku za povečanje glasnosti Najmanjši čas med preklopi smo

določili v programu in znaša pribliţno 200ms

Slika 447 Sprememba dušenja od 20dB do 0dB

38 Vgrajen sistem za avdio predojačevalnik

5 SKLEP

Vgrajen sistem za predojačevalnik smo izdelali v skladu z načeli minimalistične

arhitekture Da bi zmanjšali moţnost negativnih vplivov smo uporabili čimmanjše število

elementov na poti avdio signala ter se ob tem povsem izognili uporabi polprevodnikov

Vhodna enota oz enota za preklop avdio vhodov vsebuje 6 relejev 5 jih je zadolţenih za

preklop in en za sprostitev izhoda predojačevalnika Program v mikrokrmilniku skrbi za

pravilno časovno zaporedje vklopov in izklopov posameznih relejev Tako se izognemo

nastankom morebitnih motenj ob preklopih

Enoto za nastavitev glasnosti ndash atenuator smo pravtako izdelali z uporabo relejev Vsak

izmed petih zaporedno vezanih delilnikov napetosti vsebuje po en rele ki skrbi za njegov

vklop in izklop Delilniki napetosti so zaporedno vezani in imajo vsak svojo

nespremenljivo vrednost dušenja Tako lahko s petimi delilniki napetosti z vrednostmi 2

4 8 16 in 32dB nastavimo katerokoli izmed 32 stopenj dušenja od 0 do 62dB s koraki po

2dB

Stanje predojačevalnika se izpisuje na vakuumsko fluorescenčnem zaslonu le ob

spremembi funkcije Da bi se izognili morebitnim motnjam ki jih povzroča v zaslon

vgrajen stikalni pretvornik tipa Boost smo vgradili funkcijo ki vključi zaslon le ob potrebi

in za kratek čas

Vse funkcije sistema krmili mikrokrmilnik tipa Atmel ATmega8 Z enoto za napajanje in

krmiljenje relejev ter enoto za nastavitev glasnosti ndash atenuatorjem komunicira preko

podatkovnega vodila I2C Za to skrbi v obe enoti vgrajeno integrirano vezje PCF8574

Uporabnikove ukaze sprejema preko tipk in rotacijskega kodirnika na čelni plošči

predojačevalnika ter poljubnega daljinskega upravljalnika ki oddaja infra rdeče signale v

skladu s Philipsovim protokolom RC5

Vgrajen sistem za avdio predojačevalnik 39

6 VIRI LITERATURA

[1] G Haas High-End mit Roumlhren Elektor Verlag 2007

[2] Jos van Eijndhoven RelaiXed Audio 2 Elektor Special Project 2 (2009) str 74-80

[3] M v d Veen High-End-Roumlhrenverstaumlrker Neue Theorien fuumlr neue Loumlsungen

Elektor Verlag 2007

[4] Vladimir Mitrović Programiranje mikrokontrolera programskim jezikom Bascom

AX elektronika Ljubljana 2002

[5] Philips Semiconductors PCF8574 Remote 8-bit IO expander for I2C-bus

Koninklijke Philips Electronics NV 2002

[6] San Bergmans SB-Projects

httpwwwsbprojectscomknowledgeirindexphp (10072012)

[7] Atmel Corporation Atmel 8-bit AVR ATmega8 San Jose 2009

[8] Atmel megaAVR Microcontroller Family

httpwwwatmelcomproductsmicrocontrollersavrmegaavraspx (15072012)

[9] EAGLE PCB design software httpwwwcadsoftde (25062012)

[10] BASCOM AVR ndash Windows BASIC COMPILER

httpwwwmcseleccom (06072012)

40 Vgrajen sistem za avdio predojačevalnik

7 PRILOGE

71 Celotne električne sheme posameznih enot

Slika 711 Električna shema centralne enote

Vgrajen sistem za avdio predojačevalnik 41

Slika 712 Tiskano vezje centralne enote

42 Vgrajen sistem za avdio predojačevalnik

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Vgrajen sistem za avdio predojačevalnik 43

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

44 Vgrajen sistem za avdio predojačevalnik

72 Pregled celotnega programa v BASCOM Basic programskem jeziku

-----------------------------------------------------------------------------------------

name Controllerbas

copyright Martin Kanic Avgust 2012

purpose SRPP RIAA Preamp with IR and Relay Volume Control

micro ATMega8 PCF8574P PCF8574AP

-----------------------------------------------------------------------------------------

$crystal = 1000000

$hwstack = 32 default use 32 for the hardware stack

$swstack = 10 default use 10 for the SW stack

$framesize = 40 default use 40 for the frame space

spremenljivke

Dim Stevec As Byte stevec za countdown za vklop HV RIAA

Dim Napis As Byte

Dim Tipka As Byte pritisnjena tipka rot enk ali ukaz preko

IR

Dim Riaaon As Bit

Vfd Alias Portb7 vklopizklop HV za VFD

Reoff Alias Portc3

T1 Alias Pinb0 tipka Power

T2 Alias Pinb1 tipka Tuner

T3 Alias Pinb2

T4 Alias Pinb3

T5 Alias Pinb4

T6 Alias Pinb5

T7 Alias Pinc1 tipka A

T8 Alias Pinc2 tipka B (Mute)

Reheatingriaa Alias Pcfport_sup7 PCF8574AP port 7

Rehvriaa Alias Pcfport_sup0 PCF8574AP port 0

Reout Alias Pcfport_sup1

Retape Alias Pcfport_sup2

Reaux Alias Pcfport_sup3

Rephono Alias Pcfport_sup4

Retuner Alias Pcfport_sup6

Recd Alias Pcfport_sup5

-------------------------------------------------------

Prikljucki Ports

Port x 7 6 5 4 3 2 1 0

Port B VFD nc T6 T5 T4 T3 T2 T1

Port C na na SCL SDA OFF T8 T7 ADC

Port D DB7 DB6 DB5 DB4 INT IR EN RS

DDRx = ampB76543210

DDRx Vhod - 0 Izhod - 1

Ddrb = ampB10000000 vsi vhodi razen VFD

Ddrc = ampB00001000 vsi so vhodi razen OFF

Ddrd = ampB11110011 PORT za display 2 je IR vhod (int0) 1 je

I2C int1 vhod

PORTx = ampB76543210

PORTx Vhodi Pull-up - 1 Hi input -0 Izhodi logicna 1 ali 0

Portb = ampB01111111 vsi so pull-up VFD = 0

Portc = ampB11110111 vsi so pull-up Reoff = 0

Portd = ampB00001100 PORTD3 je INT1 vhod PORTD2 ja IR INT0

vhod

PORTx -ampB76543210

Config Portd1 = Output ce ne bi zgornji ukazi delovali

Config Portd7 = Output

-------------------------------------------------------

Inicializacija I2C

Dim Pcfport_vol As Byte

Dim Pcfport_sup As Byte

Const Pcfw_vol = ampH42 PCF8574 Write Mode Volume Control Board

Const Pcfr_vol = ampH43 PCF8574 Read Mode Volume Control Board

Const Pcfw_sup = ampH70 PCF8574A Write Mode Power Supply Board

Const Pcfr_sup = ampH71 PCF8574A Read Mode Power Supply Board

Config Sda = Portc4 I2C configuration

Config Scl = Portc5

Config I2cdelay = 5 10 was used previously 5 being default

Vgrajen sistem za avdio predojačevalnik 45

I2cinit

Pcf_xx = ampB76543210

Pcfport_vol = ampB11000000 Pcfport_vol5 je izhod 6 in 7 sta vhoda za

encoder

I2csend Pcfw_vol Pcfport_vol

Pcf_xx = ampB76543210

Pcfport_sup = ampB00000000 Pcfport_sup7 je Heating RIAA

I2csend Pcfw_sup Pcfport_sup

-------------------------------------------------------

Inicializacija Rotary Encoder Volume

Dim Volume As Byte

Dim Pcftemp As Byte

Dim A As Bit vhoda za Rotary Encoder A in B

Dim B As Bit

Dim P5 As Bit dodatni izhod P5 na Volume Control Board

Dim Olda As Bit

Dim Oldb As Bit

Dim Cwflag As Byte zdaj je Tipka = 9 in 10

Const True = 1

Const False = 0

Config Int1 = Falling set INT1 for Falling Edge Interrupt (Mcucr

= 8)

On Int1 Read_encoder define INT1 Interrput Vector

Enable Int1

Dim Tiktak As Byte steje inkrementira vsake 026112 sekunde

Q=1MHz

Config Timer2 = Timer Prescale = 1024 timer za izklop VFD po dolocenem casu

On Timer2 Stevec_int timer overflow interrupt vsakih 026112

sekunde

Enable Timer2

Stop Timer2

-------------------------------------------------------

Inicializacija IR - RC5

Dim Address As Byte

Dim Command As Byte

Dim N As Byte

Dim Waited As Bit

Waited = 0

Pulse Alias Portb6 diagnosticni pulz za osciloskop za IR RC5

Receiver Alias Pind2

Config Int0 = Falling

On Int0 Read_rc5

-------------------------------------------------------

Inicializacija Tipke (PC interrupts)

Enable Pcint0 omogoci pcint0 (portb)

On Pcint0 Citaj_tipke we jump to this label when one of the pins

is changed

Pcmsk0 = ampB00111111 enable (portb0 - portb5)

Enable Pcint1 omogoci pcint1 (portc)

On Pcint1 Citaj_tipke

Pcmsk1 = ampB00000110

-------------------------------------------------------

Config Lcd = 20 2

Gosub Vfd_on reset in vklop napajanja za anodo VFD

Cls

Lcd Made By

Lcd Preamplifier

Wait 1

Cls

Lcd Martin amp Borut Kanic

Lcd Controller

Wait 1

Cls

Wait 1

Gosub Napisilcd izpis Select input

46 Vgrajen sistem za avdio predojačevalnik

Stop Timer2 ustavim Timer2 da se VFD kasneje ne ugasne

Tiktak = 0 resetiram timer Tiktak

Address = 1 RC5 Address nastavimo na neveljavno

Volume = 18 nastavimo zacetno vrednost Volume

Tipka = 9 ki se nastavi takoj ko pridemo v gl

rutino

Set Gifrintf1

Enable Int0 IR interrupt (remote control)

Enable Int1 I2C interrupt (rotary encoder)

Enable Interrupts

------------------------------------------------------------

------------------------------------------------------------

G L A V N A R U T I N A

Glavna_rutina

Do

Home Lower

Lcd Vol Volume Reout

Home

Gosub Preglej_rc5 pregleda RC5 kodo in nastavi vrednost spr

Tipka

Gosub Citaj_tipke precita tipke na aparatu

Select Case Tipka

Case 1 Gosub Pwroff

Case 2 Gosub Tuner

Case 3 Gosub Phono

Case 4 Gosub Tape

Case 5 Gosub Tape2

Case 6 Gosub Cd

Case 7 Gosub T_a funkcija VFD ON

Case 8 Gosub T_b funkcija Mute

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

If Tiktak = 16 Then Gosub Napisilcd2 5 sekund izpisuj Volume nato izpisi

aktualen enkran

If Tiktak gt 64 Then Gosub Vfd_off po 20 sekundah izklopi VFD

Loop

------------------------------------------------------------

------------------------------------------------------------

R U T I N E Z A P R E K L A P L J A N J E V H O D O V

------------------------------------------------------------

Tuner

Tuner subrutina

Napis = 1

Gosub Napisilcd

Gosub Izklop_relejev

Set Retuner vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklopi Line Out

Return

------------------------------------------------------------

Phono

Phono

Cls subrutina

If Napis = 2 Then Funkcija RIAA permenent ON OFF

If Riaaon = 0 Then

Vgrajen sistem za avdio predojačevalnik 47

Riaaon = 1

Lcd RIAA permane ON

Elseif Riaaon = 1 Then

Riaaon = 0

Lcd RIAA permane OFF

End If

Wait 1

Gosub Napisilcd

Return

End If

Napis = 2

Gosub Napisilcd

Stop Timer2

Gosub Izklop_relejev

If Riaaon = 1 Then Goto Phonoonly ce je vkljucen RIAA permanent

Set Reheatingriaa vklopi gretje RIAA

I2csend Pcfw_sup Pcfport_sup

Cls

Lcd Warming up

For Stevec = 20 To 0 Step -1 cca 30 sekund

Wait 1 segrevanje

Locate 1 12 Lcd Stevec Lcd s izpisuj countdown v sekundah

Select Case Tipka deluje le za tipke na aparatu

Case 1 Goto Pwroff

Case 2 Goto Tuner

Case 3 Goto Vklop_hv_riaa preskoci segrevanje

Case 4 Goto Tape

Case 5 Goto Tape2

Case 6 Goto Cd

Case 7 Gosub T_a

Case 8 Gosub T_b

Case 9 Gosub Changevol

Case 10 Gosub Changevol

End Select

Next

Vklop_hv_riaa

Cls

Waitms 250

Lcd High Voltage

Wait 1

Lcd ON

Waitms 50

Set Rehvriaa vklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Wait 2

Phonoonly

Set Rephono vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout ne vklopi Line Out - Mute

Gosub Napisilcd

Locate 1 16 funkcija Mute

Lcd M

Return

------------------------------------------------------------

Tape

Tape subrutina

vklop Tape Monitor

If Retape = 0 Then ce je vklopljen ze drug vhod

Cls

Lcd Tape Monitor

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Set Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

izklop Tape Monitor

Else izklop Tape Monitor

Gosub Napisilcd

Reset Reout izklopi Line Out

48 Vgrajen sistem za avdio predojačevalnik

I2csend Pcfw_sup Pcfport_sup

Waitms 200

Reset Retape vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

End If

Wait 1

Return

------------------------------------------------------------

Tape 2 Monitor

Tape2 subrutina

Napis = 4

Gosub Napisilcd

Gosub Izklop_relejev

Set Reaux vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Compact Disc

Cd subrutina

Napis = 5

Gosub Napisilcd

Gosub Izklop_relejev

Set Recd vklopi izbrani vhod

I2csend Pcfw_sup Pcfport_sup

Gosub Vklop_reout vklop Line Out

Return

------------------------------------------------------------

Tipka A (VFD ON)

T_a subrutina

Gosub Vfd_on

Stop Timer2

Lcd Display ON

Wait 1

Gosub Napisilcd

Stop Timer2 ustavi Timer2 da se VFD kasneje ne ugasne

Return

------------------------------------------------------------

Tipka B (MUTE)

T_b subrutina MUTE

If Reout = 1 Then

Locate 1 16 sicer Locate 1 20

Lcd M

Reset Reout izklopi izhodni rele

I2csend Pcfw_sup Pcfport_sup

Else

Gosub Vklop_reout vklop Line Out

Locate 1 16

Lcd

End If

Wait 1

Tipka = 0

Address = 1

Return

------------------------------------------------------------

Power OFF

Pwroff subrutina za izklop vseh relejev

Cls

Lcd Shutdown

Waitms 250 cakaj da se iskrenje umiri proti motnjam

Initlcd se enkrat konf LCD ce je prislo do motenj

Vgrajen sistem za avdio predojačevalnik 49

Cursor Off

Cls

Lcd Shutdown

Waitms 250

Lcd

Reset Reout izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

If Reheatingriaa = 1 Then

Reset Rehvriaa izklopi HV RIAA

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Reset Reheatingriaa

I2csend Pcfw_sup Pcfport_sup izklopi Heating RIAA

Waitms 250

Lcd

End If

Pcfport_sup = ampB00000000 izklopi vse releje

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Lcd

Waitms 250

Cls

Waitms 250

Lcd Off

Wait 1

Set Reoff izklopi aparat

Wait 3

Reset Reoff v primeru da se aparat ne izklopi

Wait 1

Set Reoff

Wait 3

Gosub Vfd_on

Stop Timer2

Lcd Shutdown failed

Wait 3

Reset Reoff

Address = 1

Tipka = 0

Napis = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P O M O Z N E R U T I N E

------------------------------------------------------------

Izklop_relejev

Reset Reout najprej izklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Waitms 250

Pcfport_sup = Pcfport_sup And ampB10000001 zamaskiram Reheatingriaa in Rehvriaa

If Riaaon = 0 Then ce je izkljucen RIAA permanent-ON

Reset Reheatingriaa izklopi Heating RIAA in HV RIAA

Reset Rehvriaa

End If

I2csend Pcfw_sup Pcfport_sup izklopi vse ostale releje

Waitms 250

Return

------------------------------------------------------------

Vklop_reout

Waitms 500

50 Vgrajen sistem za avdio predojačevalnik

Set Reout vklopi Line Out

I2csend Pcfw_sup Pcfport_sup

Address = 1

Tipka = 0

Return

------------------------------------------------------------

Napisilcd

Gosub Vfd_on

Napisilcd2 da se VFD ne vklaplja ce smo le spremenili

Volume

Cls

Select Case Napis

Case 0 Lcd Select Input

Case 1 Lcd Tuner

Case 2 Lcd Phono

Case 3 Lcd Tape Monitor

Case 4 Lcd TV

Case 5 Lcd Compact Disc

End Select

If Napis = 0 Then ce se ni izbran vhod

Stop Timer2 ne izklapljaj VFD

Tiktak = 0

End If

Address = 1

Tipka = 0

Return

------------------------------------------------------------

V K L O P V F D

Rutina vklopi VFD (Vakuumsko fluorescencni prikazovalnik)

Vfd_on

If Vfd = 0 Then

Set Vfd Vfd = 1

Waitms 200

Initlcd

Cursor Off

End If

Home

Tiktak = 17 stejem od 17 naprej za izklop VFD

Start Timer2 zazenem Timer Tiktak da se kasneje izklopi

VFD

Return

------------------------------------------------------------

I Z K L O P V F D

Rutina izklopi VFD (Vakuumsko fluorescencni prikazovalnik) da ne povzroca motenj

Vfd_off

Cls

Reset Vfd Vfd = 0

Waitms 100

Stop Timer2 ustavim in resetiram Timer Tiktak

Tiktak = 0

Return

------------------------------------------------------------

------------------------------------------------------------

P R E G L E D R C 5 U K A Z O V

Vgrajen sistem za avdio predojačevalnik 51

Preglej_rc5

If Address = 1 Then Return ce ni novega ukaza preskoci

Amplifier

If Address = 16 Then Address = 16 je Amplifier

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

CD Player

Elseif Address = 20 Then Address = 20 je CD Player

Select Case Command

Case 54 Tipka = 1 Power (tipka Stop)

Case 53 Tipka = 3 Phono (tipka Play)

Case 28 Tipka = 8 Mute (tipka Shuffle)

Case 29 Tipka = 6 Compact Disc (tipka Repeat)

Case 33 Tipka = 4 tipka Previous

Case 32 Tipka = 5 tipka Next

Case 50 Tipka = 0 tipka Rewind

Case 52 Tipka = 0 tipka Forward

End Select

TV

Elseif Address = 0 Then Address = 0 je TV

Select Case Command

Case 16 Tipka = 10 Volume Up

Case 17 Tipka = 9 Volume Down

End Select

End If

Waitms 50 pocakaj da se inkrementira samo enkrat

Locate 2 12 cisto na desno stran

Lcd Address Command

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Return

------------------------------------------------------------

S P R E M E M B A G L A S N O S T I

Changevol

Spremeni vrednost Volume

If Tipka = 10 And Volume lt 32 Then Incr Volume

If Tipka = 9 And Volume gt 1 Then Decr Volume

If Tipka = 9 Or Tipka = 10 Then ce je bila pritisnjena tipka za Volume

Spremeni vrednost Volume sicer preskoci

If Tipka = 10 And Volume lt 32 Then vrednosti Volume so med 1 in 32

Incr Volume

Elseif Tipka = 9 And Volume gt 1 Then

Decr Volume

Else ce je Volume ze na 1 ali 32

Address = 1

Tipka = 0

Return

End If

Pcfport_vol = Volume Or ampB11100000 zamaskiram vhoda za kodirnik

Pcfport_vol5 = P5 vrnem stanje dodatnega izhoda P5

Decr Pcfport_vol vrednosti Pcfport_vol so med 0 in 31

I2csend Pcfw_vol Pcfport_vol

Volume = Volume And ampB00011111 odstranim encoder in P5

Waitms 100 pavza da upocasnim spreminjanje glasnosti

Address = 1 pobrisem RC5 ukaz da ne zleti naprej

Tipka = 0 pobrisem Tipka da ne zleti naprej

Cls

Lcd Volume Volume

Tiktak = 0

Start Timer2

End If

Return

52 Vgrajen sistem za avdio predojačevalnik

------------------------------------------------------------

------------------------------------------------------------

B R A N J E R O T A C I J S K E G A E N K O D E R J A

rotacijski kodirnik se bere preko vodila I2C PCF8574

interrupt rutina

Read_encoder

Disable Interrupts

Waitms 10 contact debounce

I2creceive Pcfr_vol Pcftemp

A = Pcftemp6

B = Pcftemp7

If A causes the interrupt check B for direction of rotation

If Olda ltgt A Then

If A and B are different it was clockwise rotation

If A ltgt B Then

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Cw izkljuci -||-

Otherwise it was counter-clockwise rotation

Else

Goto Ccw

End If

End If

If B causes the interrupt check A for direction of rotation

If Oldb ltgt B Then

If A and B are the same it was clockwise rotation

If A = B Then

Goto Cw

Otherwise it was counter clockwise rotation

Else

Goto Endint vkljuci ce zelis da preskakuje stanja 01

in 10

Goto Ccw izkljuci -||-

End If

End If

Goto Endint

Cw it was clockwise rotation

Cwflag = 1

Tipka = 10 Volume Up

Goto Endint

Ccw it was counterclockwise rotation

Cwflag = 0

Tipka = 9 Volume Down

Endint

Olda = A

Oldb = B

Set Gifrintf1

Enable Interrupts

Return

-------------------------------------------------------

B R A N J E R C 5 I R K O D E

interrupt rutina

Read_rc5

Disable Interrupts

Disable Int0

If Waited = 0 Then varnost preskocim prvi burst citam komaj

naslednjega

Waitms 40

Waited = 1

Set Gifrintf0

Enable Int0

Return

End If

Vgrajen sistem za avdio predojačevalnik 53

Reset Pulse generiram pulz za osciloskop

Da preskocim dva start bita in toggle bit je potrebno 4752 ms = 4752 us

Vsak nadalnji bit traja 1728 ms = 1728 us

Waitus 4752 cakam na prvi vzorec bit 4 (MSB)

Waitus 4852 sinhronizacija - jemanje vzorca premaknem

malo v desno

For N = 4 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Addressn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

For N = 5 To 0 Step -1

Set Pulse generiram pulz za osciloskop

Commandn = Receiver precitaj bit

Waitus 100

Reset Pulse

Waitus 1628

Next N

Set Pulse

Waited = 0 flag postavim nazaj na nic

Waitms 20

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta Glej str69

med int rutino si zapomni samo se prvi int zato po koncani int rutini skoci na njo se enkrat

Set Gifrintf0

Enable Int0

Enable Interrupts

Return

------------------------------------------------------------

C I T A J T I P K E

Rutina prebere tipke in si zapomni katera je bila pritisnjena

Interrupt rutina (zdaj ni ker ni PC interruptov)

Citaj_tipke

Disable Int1

Disable Interrupts

Debounce T1 0 T_pwroff

Debounce T2 0 T_tuner

Debounce T3 0 T_phono

Debounce T4 0 T_tape

Debounce T5 0 T_tape2

Debounce T6 0 T_cd

Debounce T7 0 T_t_a

Debounce T8 0 T_t_b

Goto Preskoci ce ni bila pritisnjena nobena tipka

T_pwroff

Tipka = 1 Goto Preskoci

T_tuner

Tipka = 2 Goto Preskoci

T_phono

Tipka = 3 Goto Preskoci

T_tape

Tipka = 4 Goto Preskoci

T_tape2

Tipka = 5 Goto Preskoci

T_cd

Tipka = 6 Goto Preskoci

T_t_a

Tipka = 7 Goto Preskoci

T_t_b

Tipka = 8 Goto Preskoci

Preskoci

flag 0 v GIFR registru postavim na 1 (ga zbrisem) da ne sprozi se enega interrupta

Glej str69 Med int rutino si zapomni samo se prvi int zato po koncani int rutini

skoci na njo se enkrat

Set Gifrintf1 intf0 ali intf1

Pcifrpcif1 = 1 write a 1 to clear the flag so we can detect it

again

Enable Interrupts

54 Vgrajen sistem za avdio predojačevalnik

Enable Int1

Return

------------------------------------------------------------

I Z B R I S I T I P K E

Rutina izbrise spomin katera tipka je bila pritisnjena

Izbrisi_tipke

Tipka = 0

Address = 1 izbrise spomin za RC5 ukaz

Return

------------------------------------------------------------

------------------------------------------------------------

S T E V E C

interrupt rutina

Stevec_int

Incr Tiktak inkrementira vsake 026112 sekunde

Return

------------------------------------------------------------

End

Vgrajen sistem za avdio predojačevalnik 55

73 Seznam slik

Slika 211 Shematski prikaz komponent predojačevalnika z minimalistično arhitekturo

Slika 212 Različni tipi vakuumskih elektronk

Slika 213 Dva modela ojačevalnikov na vakuumske elektronke

Slika 221 Princip zgradbe potenciometra

Slika 222 Princip zgradbe večpolnega stikala z upori

Slika 223 Shema zaporednega delilnika napetosti

Slika 224 Zaporedni delilnik napetosti v praktični izvedbi

Slika 231 Električna priključna shema tipke

Slika 232 Rotacijski kodirnik njegov oscilogram ter diagram stanj

Slika 241 IR oddajna dioda

Slika 242 IR sprejemnik

Slika 243 Binarno kodiranje pri SIRCS protokolu

Slika 244 Celoten ukazni niz pri SIRCS protokolu

Slika 245 Binarno kodiranje pri RC5 protokolu

Slika 246 Celoten ukazni niz pri RC5 protokolu

Slika 251 Princip povezovanja komponent z I2C vodilom

Slika 271 Princip delovanja VFD zaslona in njegova praktična izvedba

Slika 301 Shema kontrolnega sistema za predojačevalnik

Slika 311 Napajalni del centralne enote

Slika 331 Čelna plošča predojačevalnika

Slika 341 Stanja rotacijskega kodirnika

Slika 351 Primer ukaza po protokolu RC5

Slika 371 Krmilno vezje atenuatorja

Slika 372 Shema atenuatorja

Slika 711 Električna shema centralne enote

Slika 712 Tiskano vezje centralne enote

Slika 713 Električna shema enote za razdelitev napajanja in krmiljenje relejev

Slika 714 Tiskano vezje enote za razdelitev napajanja in krmiljenje relejev

Slika 715 Električna shema atenuatorja

Slika 716 Tiskano vezje atenuatorja

56 Vgrajen sistem za avdio predojačevalnik

74 Seznam preglednic

Tabela 371 Izračun uporov za delilnik

Tabela 411 Meritev dušenja atenuatorja

75 Naslov študenta

Martin Kanič

Groharjeva ulica 14

2000 Maribor

76 Kratek življenjepis

Rojen 25071982 v Mariboru

Šolanje 1989 ndash 1994 1 do 5 razred OŠ Borisa Kidriča Maribor

1994 ndash 1997 6 do 8 razred Leibniz Gymnasium Duumlsseldorf Nemčija

1997 ndash 1999 1 do 2 letnik SKSMŠ Strojna gimnazija Maribor

1999 ndash 2001 3 do 4 letnik II Gimnazija Maribor Mednarodna matura

2001 ndash 2012 Fakulteta za elektrotehniko računalništvo in informatiko

2006 ndash 2010 Zaposlen v podjetju Mikro+Polo doo

na delovnem mestu serviserja za analitske aparate

Vgrajen sistem za avdio predojačevalnik 57

58 Vgrajen sistem za avdio predojačevalnik

Vgrajen sistem za avdio predojačevalnik 59