Beste mensen,

Ik ben nog steeds bezig met de eerder genoemde versterker. Daarin zit een AT90S8535 controller die op 8MHz draait. De volume/bass/treble/loudness regeling wordt geregeld door o.a. een AD5204 van Analog. Deze chip is een 4 voudige EEPOT met elks 256 stappen, en is SPI aangestuurd.

Ik heb drie I/O lijnen aan de chip geknoopt via optocouplers. Dit omdat de audio een andere compleet seperate voeding heeft van het digitale gedeelte. ECHTER, bij het naar mijn mening correct aansturen van de chip gebeurd er OF niets OF potmeter 0 (mijn volume) wordt plots ineens (bijna) 0 ohm. Stilte dus :)

Ik heb de pulsen 20ms lang gemaakt om eens goed te kunnen kijken op de scoop, maar alles lijkt okee.

- CS wordt 0
- Drie keer een adres bit met daarbij een klokpuls van 0 -> 1 op het juiste moment
- Acht maal data met daarbij een klokpuls van 0 -> 1 op het juiste moment
- CS wordt weer 1

Ik snap er even niets meer van. De PR en SHDN lijnen hangen gewoon aan 5 Volt. De chip is ontkoppeld met 100n. De optocouplers hebben een 10k pullup weerstand aan de collector en de emitter aan massa. Maar goed, de signalen lijken wel correct door te komen.

Overigens moet ik er bij zeggen dat als ik bij de data de SDI pin hoog houdt, dan gebeurt er niets, als ik bij de data de SDI pin laag hou dan krijg ik stilte op pot 0, zelfs als ik een andere pot selecteer.

Alvast bedankt voor uw tips :), ik heb al heel wat ontwikkeld, ook al VEEL met optocouplers en RS232 en zo. Maar waarom dit niet werkt vind ik vreemd. Wellicht ergens een C'tje nodig.

Groeten
Antoine

PS Versterker is bijna klaar, en klinkt geweldig, alleen een beetje hard op het moment ;)

Nu weet ik niet zo heel veel van digitaal, maar misschien kun je wat met de volgende ideeen (neem me maar niet kwalijk als het een open deur intrappen is):

1. Voor en na de opto's goed signaal? Duidelijk gedefinieerde niveau's?
2. Misschien neergaande flank gebruiken ipv. opgaande flank?
3. Ergens een reset die laag blijft?
4. Werkt(e) het wel zonder opto's? Desnoods eens grounds aan elkaar hangen en/of rechtstreeks sturen?

Ik prefereer persoonlijk toch een goede ALPS of Noble pot voor mijn versterkertjes hoor :-D

Haha, kan best, maar ik wou het beide combineren :). Er zijn al plannen voor een "echte" amp, maar goed.

1. Ja, duidelijke strakke flanken
2. Nee, vind het ook vreemd, maar de flank MOET opgaand zijn volgens de datasheet. Heb het wel andersom geprobeerd, maar dan gebeurd er helemaal niets
3. Nee, dat is de SHDN (Shutdown), en die is duidelijk HOOG anders worden de pots gedisabled.
4. Nog geen idee, ik vermoed van wel, maar dat moet ik even morgen testen.

[edit]
http://www.analog.com/UploadedFiles/Data_Sheets/140808745AD5204_6_0.pd… voor de datasheet. Voor de duidelijkheid de audio gaat niet door deze EEPOT's heen hoor :)

Even nog een edit, de chip "start op" met de lopers van de pots in het midden. M.a.w. het enige wat ik tot nu toe gezien heb is deze opstart situatie, of dat pot 0 helemaal "dichtgedraaid" werd.

[Bericht gewijzigd door Antoine op ]

Op 1 juni 2005 22:51:15 schreef Antoine:
1. Ja, duidelijke strakke flanken

Als je de scoop eens synct met je clocksignaal, misschien een faseverschuiving of jitter?

4. Nog geen idee, ik vermoed van wel, maar dat moet ik even morgen testen.

Als het dan wel werkt, is er toch iets mis met de overdracht via de opto's.
Misschien ander type nemen? Stroom door de LED te laag?

Even nog een edit, de chip "start op" met de lopers van de pots in het midden. M.a.w. het enige wat ik tot nu toe gezien heb is deze opstart situatie, of dat pot 0 helemaal "dichtgedraaid" werd.

Hmm.......clock wel goed? Staat me iets bij dat er verschil was in instelling van de Atmel voor 4 en 8 MHz.......

Wat is PR<inv> voor een lijntje? Optional reset die alle lopers naar de middenstand forceert?

[Bericht gewijzigd door KT88 op ]

1. Dat heb ik gedaan, de scoop gesync met het clocksignaal (werk al langer met die dingen ;)), zoals ik al zei, het signaal is echt strak, en netjes 0 en 5 volt. Ik gebruik PC817's van sharp, en heb daar al eens 115k2 RS232 overheen gestuurd zonder problemen.

4. LED stroom is +/- 10mA, meer als voldoende voor deze opto's

Bij de 90S8535, staat deze standaard op een xtal, omdat deze oude chips geen opties hebben voor clockpulsen, dat kwam pas bij de Mega controllers.

Die PR is inderdaad een lijntje dat de pots naar het midden trekt. Dat doet ie als ie laag gemaakt wordt, maar hij hangt aan de harde 5 volt.

Bedankt voor het meedenken ! Top !

Ga nu eens naar bed, kom er morgen op terug
Antoine

Het enige dat me nog opviel zo snel was dat de clock input "positive edge triggered" is, maar dat had je vast zelf ook al gezien.

Zoals ik al zei, open deuren.......

Slaap lekker en succes!

Okee, heb het de AD5204 even aan een Mega8 geknoopt op een breadboard, en mijn code erin gezet en het werkt meteen. Mijn code is dus correct.

Probleem dat blijft zijn de opto's.

Op gevaar af weer zo'n open deur in te trappen: wel eens aan gedacht dat een opto het signaal inverteert?

Hee ;), voordat ik iets post hier, kijk ik eerst naar alles wat ik zelf al bedacht had :). Dus nee, maar goed, het zou kunnen natuurlijk.

De anoden van de opto's hangen aan de voeding
De kathoden van de opto's worden geschakeld
De emitters van de opto's hangen aan de massa van de audiovoeding
De collectors aan een weerstand die aan de voeding van de audio hangt

Bij een "1" op de kathode van een opto zal de LED uitgaan. Omdat de voeding gelijk is aan die "1", aan de andere kant wordt de CE overgang gespert en zal de weerstand het signaal omhoog trekken en heb ik dus ook een "1" aan de andere kant.

Bedankt voor het meedenken !

[edit]
Zojuist even gekeken, maar alle verbindingen zijn in orde. Kan helaas geen plaatje uploaden van mijn schema, gezien gebrek aan webspace. Ik zit er stiekem aan te denken om een smitttrigger buffertje tussen de opto's en de AD5204 te zetten. Twee 74hc14 inverters achter elkaar of zo. Ik denk eigenlijk dat het dan opgelost is.

[Bericht gewijzigd door Antoine op ]

Update:

Door de pullup weerstanden van de opto's te veranderen krijg ik een stuk meer activiteit. De weerstanden veranderd naar 1k i.p.v. 10k en zowaar het volume reageerd. Welliswaar erg schokkerig, en soms gaat het geluid vol open en dan weer dicht, maar het reageert in ieder geval.

Ik ga kijken voor de schmitt triggers, ik denk dat het dan over is.

Weer een update :)

Het werkt (bijna) :), in ieder geval functioneert de volume regelaar van mijn versterker nu bijna goed. Dit bijna komt waarschijnlijk nog door een programmeerfoutje.

Waarschijnlijk heeft het probleem toch gezeten in de flanken van de signalen uit de optocouplers. Waarschijnlijk zit er een capaciteit in de AD5204 waardoor de 10k pull up weerstanden niet snel genoeg het signaal veranderden.

Bedankt voor de hulp !

Groeten
Antoine

Mooi dat het is opgelost.

Hulp??? Je hebt het toch eigenlijk zelf gevonden, hm? ;-)

Nee, helaas het is niet opgelost. Het werkt wel een stuk beter maar der regeling werkt nu op een manier die ik niet echt meer volg.

Hoe meer "enen" er in de datastroom naar de AD5204 worden gestuurd hoe "harder" het volume.

Bijvoorbeeld:

Data: 0111.1111 = harder dan data: 1000.0000
Data: 0010.1111 = harder dan data: 0011.0000

De eepot's worden wel correct geselecteerd. Deze data bevindt zich in de eerste drie bits.

Data: 001.0111.1111 betekent dus dat pot 1 (eerste 001), de waarde 127 aan moet nemen.

Wat meedenk hulp is weer aan te raden, achter de opto's met 10k pull-up zit nu een 74HC14 trapje, eigenlijk twee achter elkaar om het signaal weer goed te krijgen omdat de 7414 een inverter is.

Nee, msb moet eerst, zie datasheet

Okee, weer wat gemeten....

Het probleem lijkt te zitten in de 4 LSB bits. Omdat telkens als die door nul gaan (d.w.z. 1111 -> 0000) mijn spanning in elkaar zakt.

Een meting


SPI Code:  Uitgang in volts:
1011.1111   9.48

1100.0000   8.13
1100.0001   8.29
1100.0010   8.49
1100.0011   8.66
1100.0100   8.87
1100.0101   9.05
1100.0110   9.27
1100.0111   9.47
1100.1000   9.72
1100.1001   9.91
1100.1010  10.19
1100.1011  10.41
1100.1100  10.71
1100.1101  10.96
1100.1110  11.27
1100.1111  11.52

1101.0000   9.98

En dit patroon herhaalt zich telkens bij het resetten van de 4 LSB's. De uitgangspanning is overigens de spanning gemeten op de uitgang van mijn eindtrap bij een 50Hz sinus.

Wie denkt raad te weten ?

Alvast bedankt

Ja, ik weet het ook niet meer :), ik ga straks eens kijken wat er gebeurd als ik de opto's weghaal.

Ondanks dat niemand het meer schijnt te weten :), het probleem is intussen opgelost, de regeling werkt als een zonnetje, ook de treble, bass en balance regeling werken nu perfect. NOg een paar cinch aansluiten toevoegen aan de kast en het is klaar.

Wat was nu het probleem?
Andere opto's genomen?

4N33's deden de truc. Alhoewel ik het toch vreemd blijf vinden :)