Forum: Mikrocontroller und Digitale Elektronik Sample & Hold Kondensator Aufladen


von el p. (elpistolero84)


Lesenswert?

Hallo zusammen,

wie kann in einem pic der Sample & Hold kondensator aufgeladen werden? 
bei der setup einstellungen habe ich bereits im ADCON1 register VREF+ 
als VDD und VREF- als VSS ausgewählt! Am analogen Eingang ist ein 
Kondensator Clast angeschlossen. wo ich die spannung am außen angelegten 
kondensator durch ladungstransfer messen möchte.

hier der ablauf die programmiert werden soll!

1. TRIS als ausgang (TRIS = 0)
2. Sample&Hold(Chold) kondensator über VREF aufladen
3. TRIS als eingang wählen (TRIS = 1)
4. ADCON wählen
5. Konvertierung starten (GODONE == 1)
6. ADCWERT ablesen (10Bits -> ADRESH und ADRESL)
7. Kondensator Clast am AN0 entladen (TRIS = 0)

Der zweite schritt fehlt mir

Bitte um Hilfe......

void main(void)
{

Setup();

????????     <------------------Hier muss der Sample&Hold Kondensator
????????                        aufgeladen werden..aber wie???

TRISAbits.TRISA0 = 1; //Als Eingang gewählt

ADCON = 0x00; // AN0 Ausgewählt
GODONE = 1;
while(GODONE == 1);

ADCWERT = ADRESH;
ADCWERT = ADCWERT << 8;
ADCWERT = ADCWERT + ADRESL;

TRISAbits.TRISA0 = 1;

}

void Setup(void)
{
ANSELA = 0x00; //kein pin auf analog
PORTA = 0x00;  //auf low
TRISA = 0x00;  //als ausgang

ADCON1 = 0x00;
ADCON2 = 0x3C;
}

von el p. (elpistolero84)


Lesenswert?

hallo an alle experten,

kann wirklich keiner einen tipp geben ??

mfg

von blub (Gast)


Lesenswert?

Eine Angabe zum verwendeten µP wäre schon mal ein guter Anfang.

von Ralli (Gast)


Lesenswert?

Also, bei den mir bekannten AD-Wandlern wird der S&H-
Kondensator zu Beginn der AD-Wandlungs-Sequenz geladen:

Ein FET-Schalter verbindet den S&H-Kondensator für eine
kleine Anzahl von Takten mit dem Eingangssignal.

Sein Wert ist < 10 pF, der externe Kondensator sollte
etwa 10 nF haben, um den Fehler kleiner 0,1% zu
halten.


... Kenne deinen pic nicht, nehme aber an, dass du noch
nicht ganz verstanden hast, wie der AD-Wandler arbeitet.

- Oder ich habe nicht verstanden, was das denn soll.

von Karl H. (kbuchegg)


Lesenswert?

> wie kann in einem pic der Sample & Hold kondensator aufgeladen werden?

Ich mag mich irren.
Aber das würde mich jetzt schon sehr wundern, wenn du programmgesteuert 
den internen S&H Kondensator per Programm an VCC schalten kannst. Wozu 
soll das in der Praxis gut sein?

Der S&H Kondensator wird geladen, indem du an den Pin extern eine 
Spannung anhängst und den ADC startest.

von spess53 (Gast)


Lesenswert?

Hi

>Ich mag mich irren.

Ich mich auch. Aber wenn ich mir dieses Gestammel:

>Am analogen Eingang ist ein
>Kondensator Clast angeschlossen. wo ich die spannung am außen angelegten
>kondensator durch ladungstransfer messen möchte.

und den Anhang von hier:

Beitrag "Re: Tastenverriegelung (Tastensperre)"

zusammenreime, könnte es sein, das der 'Kondensator' der Taste durch 
einen internen/externen Pull-Up-Widerstand aufgeladen wird. Wenn danach 
die AD-Wandlung gestartet wird findet der Ladungstransfer mit dem 
SH-Kondensator des AD-Wandlers statt. Je nach 'Kapazität' der Taste 
sollte eine bestimmte Spannung zu messen sein.

MfG Spess

von holger (Gast)


Lesenswert?

>Aber das würde mich jetzt schon sehr wundern, wenn du programmgesteuert
>den internen S&H Kondensator per Programm an VCC schalten kannst. Wozu
>soll das in der Praxis gut sein?

Also gehen tut das schon. Nimmt man halt einen anderen
AD Kanal und pappt den an VCC oder Vref wie er es wollte.
Dann einfach mal lange genug auf den AD Kanal umschalten und warten
bis der S&H voll ist. Dann auf den anderen AD Kanal umschalten.

Jetzt ist aber die Frage ob er die Ladung vom S&H auf Clast
bringen möchte oder umgekehrt. Beides geht. Ich konnte an
einem offenen AD Eingang schon mal die Spannung von einem
anderen Kanal messen. Hatte halt den Multiplexer auf den
unbenutzen AD Eingang geschaltet. Da konnte man dann schön
die Spannung vom S&H Kondensator mit dem Osci messen.

von oscarfritz (Gast)


Lesenswert?

Hallo el pistolero

schalte als erstes eine analog Kanal an den ADC, an dem Vss anliegt. 
Dadurch wird der interne SH Kondensator auf Vcc aufgeladen (und 
gemessen, ist hier aber nicht wichtig). Danach schaltest du den Kanal 
auf den Anschluss mit dem externen Kondensator (durch einschalten diese 
Kanals). Während des Umschaltens wird der geladene Kondensator nicht 
entladen (ist beim PIC halt so).
Nach dem Umschalten werden die Ladungen auf beide Kondensatoren 
verteilt.
Natürlich muss der externe Kondensator vor dem Umladen entladen sein 
(Anschluss kurz als digital Out mit L-Pegel über TRIS umschalten).
Das funktioniert bei mir so seit Jahren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.