vgrajen sistem za avdio predojaČevalnik
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