Förstår mig inte på min D/A omvandlare
Förstår mig inte på min D/A omvandlare
Jag har köpt en TLC7528EN DAC av Electrokit http://www.electrokit.se/download/tlc7528.pdf. Denna har jag kopplat upp så att PORTB på en PIC18F1320 är direkt ansluten till DAC DB0-DB7. Spänningsmatning sker via PICkit2 och VCC uppmätes till 4.8 V. PÅ DACEN ansluter jag Vcc till REFA och DACA/DACB till jord. OUTA ansluts till en spänningsföljare bestående av CA3140E op. Jag mäter dock direkt på OUTA. Har också mätt CS WR till låga på DAC.
Med mina PIC program har jag ställt in olika värden på PORTB dvs data att omvandla till analog spänning. Har kontrollmätt med multimeter att förväntade värden matas till DACs DB0-DB7. Har gjort så att ett värde i taget matas till DAC dataingång och sedan mätt OUTA med multimeter. Dessutom har jag gjort en loop som stegar igenom värden mellan 0 och 255 i en loop och studerat resultatet på ett oscilloskop.
Det jag inte förstår är att i båda fallen blir resultatet en i stort sett stigande ut spänning på OUTA men ibland minskar spänningen (storleksordning tiondels volt) med ökat värde på DB0-DB7 och går sedan upp igen för att senare minska igen. Och förändringen sker inte i jämna steg som med indata värden (som ökas med steg om 7). Vad kan detta bero på?
Med mina PIC program har jag ställt in olika värden på PORTB dvs data att omvandla till analog spänning. Har kontrollmätt med multimeter att förväntade värden matas till DACs DB0-DB7. Har gjort så att ett värde i taget matas till DAC dataingång och sedan mätt OUTA med multimeter. Dessutom har jag gjort en loop som stegar igenom värden mellan 0 och 255 i en loop och studerat resultatet på ett oscilloskop.
Det jag inte förstår är att i båda fallen blir resultatet en i stort sett stigande ut spänning på OUTA men ibland minskar spänningen (storleksordning tiondels volt) med ökat värde på DB0-DB7 och går sedan upp igen för att senare minska igen. Och förändringen sker inte i jämna steg som med indata värden (som ökas med steg om 7). Vad kan detta bero på?
Re: Förstår mig inte på min D/A omvandlare
Ligger du med CS och WR låga hela tiden så verkar allt på indatalinjerna gå rätt ut på analogsidan hela tiden.
Jag hade nog signalerat som i timingdiagrammet på sidan 2 där data latchas in i enheten och sedan ligger fast och störningsfritt tills du drar CS och WR låga igen för ett nytt värde.
Jag hade nog signalerat som i timingdiagrammet på sidan 2 där data latchas in i enheten och sedan ligger fast och störningsfritt tills du drar CS och WR låga igen för ett nytt värde.
Re: Förstår mig inte på min D/A omvandlare
> Har också mätt CS WR till låga på DAC.
Men hur är de "kopplade" ? De kan självklart inte vara "öppna"
men det vet du säkert...
Men hur är de "kopplade" ? De kan självklart inte vara "öppna"
men det vet du säkert...
Re: Förstår mig inte på min D/A omvandlare
Ja CS och WR ligger låga hela tiden men först efter att ha varit höga vid initieringen. De är kopplade till RA2 och RA3 på 18F1320.
Mitt intryck av databladet är att det ska fungera att ha dom låga hela tiden. Förstår inte hur det skulle kunna ge de problem jag ser.
Mitt intryck av databladet är att det ska fungera att ha dom låga hela tiden. Förstår inte hur det skulle kunna ge de problem jag ser.
Re: Förstår mig inte på min D/A omvandlare
OK, det står ju att DAC en ska bli "transparent" i det fallet.
Tja, det kanske är någon annan felkoppling ?
Tja, det kanske är någon annan felkoppling ?
Re: Förstår mig inte på min D/A omvandlare
Det var kopplat som på s6 i databladet sk current output. Försökte med sk voltage mode operation s14 genom att skifta REFA och OUTA. Detta ser ut att ha löst mitt monotonitetsfel. Därför går jag vidare med nästa sak som jag inte tycker stämmer.
Det finns ju en formel Vo=Vi*(D/256) för utspänningen. Detta borde ge en max utspänning på cirka 4.78 V med 4.8 V som referens spänning (kontroll mätt). Men jag får bara cirka 4 V ut vid max D på 255. Hade samma resultat tidigare utöver monotonitetsfelet.
Det finns ju en formel Vo=Vi*(D/256) för utspänningen. Detta borde ge en max utspänning på cirka 4.78 V med 4.8 V som referens spänning (kontroll mätt). Men jag får bara cirka 4 V ut vid max D på 255. Hade samma resultat tidigare utöver monotonitetsfelet.
Re: Förstår mig inte på min D/A omvandlare
Verkar som om din DAC inte har någon buffer på utgången. Det betyder att så fort du belastar den så sjunker spänningen. Om du ska få en riktig spänning behöver du ansluta en OP till utgången som fungerar som spänningsföljare.
The equivalent output resistance (ro) varies with the input code from 0.8R to 3R where R is the nominal value of the ladder resistor in the R-2R network.
Re: Förstår mig inte på min D/A omvandlare
Jag har gjort just detta. DAC utgången är kopplad till ingången på en spänningsföljare. Med PORTB=255 och ett oscilloskop anslutet till DAC utgången så uppmätes 4.04 V (prob 10x). Samtidigt uppmätes då 2.52 V på spänningsföljarens utgång med en multimeter.
Denna spänning ändras inte om jag kopplar bort oscilloskopet från DAC utgången. Uppmätta värden kan variera upp till en tiondels volt beroende om jag mäter med oscilloskop eller multimetern. Spänningsföljarens utgång är kopplad till en lysdiod i serie med ett 100 ohms motstånd. Den lyser. Tidigare försökte jag koppla lysdioden direkt till DAC utgången och då lyste den väldigt svagt på max utspänning. Så visst finns det begränsningar för hur mycket DAC utgången kan belastas. Men jag undrar om detta är fallet nu. Både oscilloskop och multimeter är ju mycket högohmiga.
Denna spänning ändras inte om jag kopplar bort oscilloskopet från DAC utgången. Uppmätta värden kan variera upp till en tiondels volt beroende om jag mäter med oscilloskop eller multimetern. Spänningsföljarens utgång är kopplad till en lysdiod i serie med ett 100 ohms motstånd. Den lyser. Tidigare försökte jag koppla lysdioden direkt till DAC utgången och då lyste den väldigt svagt på max utspänning. Så visst finns det begränsningar för hur mycket DAC utgången kan belastas. Men jag undrar om detta är fallet nu. Både oscilloskop och multimeter är ju mycket högohmiga.
Re: Förstår mig inte på min D/A omvandlare
Har du kontrollerat att 0xFF ligger på PORTB?
256*4.04/4.8 = 215 = 0b11010111
Den här (förvisso väldigt osäkra) beräkningen visar att RB5 och RB3 inte blir satta. RB5 är PGM-pinnen - är den konfigurerad till att vara I/O?
RB3 är CCP1-utgång. Används CCP1?
256*4.04/4.8 = 215 = 0b11010111
Den här (förvisso väldigt osäkra) beräkningen visar att RB5 och RB3 inte blir satta. RB5 är PGM-pinnen - är den konfigurerad till att vara I/O?
RB3 är CCP1-utgång. Används CCP1?
Re: Förstår mig inte på min D/A omvandlare
För att verkligen testa/verifiera funktionen på DAC'en så skulle
jag köra den löst helt utan processor. Det är ju bara att lägga
ingångarna som man vill ha dom på labbplattan med trådar...
jag köra den löst helt utan processor. Det är ju bara att lägga
ingångarna som man vill ha dom på labbplattan med trådar...
Re: Förstår mig inte på min D/A omvandlare
Ja jag har kontrollmätt detta med multimetern. RB5 och RB3 (ja hela PORTB) sätts och clearas helt enligt vad jag skriver på PORTB Även kontrollsignaler är kontrollmättabearing skrev:Har du kontrollerat att 0xFF ligger på PORTB?
256*4.04/4.8 = 215 = 0b11010111
Den här (förvisso väldigt osäkra) beräkningen visar att RB5 och RB3 inte blir satta. RB5 är PGM-pinnen - är den konfigurerad till att vara I/O?
RB3 är CCP1-utgång. Används CCP1?