Čas pro přepnutí kanálu A\D převodníku

Zdravim. Pánové, prosím netuší někdo jak dlouho trvá přepnutí A/D převodníku na jiný kanál?

Mám PIC16F1936, v datasheetu jsem tento celkem důležitý údaj nenašel.

JAk si mám počínat při rychlém přepínání kanálů?
Celý program mi jede v přerušení co 100us a každých 100us potřebuji měřit napětí na jiném vstupu.

Díky moc

Něco podobnéhé jsem taky řešil, ale nakonec to dopadlo tak, že zapnu kanál, dám GO, počkám na DONE, přepnu kanál, zapnu GO, a čekám na DONE. A měří to. Z toho usuzuju, že tam žádný potřebný čas na přepnutí není. Ale třeba se pletu. :smiley: :blush:

Kolik z těch 100us bude trvat měření?
Jinak bych taky řekl, že ten čas je zanedbatelý, tzn. že v dalším cyklu je to už přepnuté, ale samozřejmě je lepší ten kanál přepnout hned po ukončení měření, nebo pokud toho času není nazbyt, tak hned po ukončení vzorkování.

Zase tak jednoduché to asi nebude, cituji:

Petr: Přesně tak, říká se tomu “settling time”. Jeho výpočet by měl být v DS uveden, pokud ne, tak vás odkáži na DS od některého x51 mcu od silabs. Ti to mají popsané určitě včetně výpočtu. Ta doba je závislá na počtu bitů, do kterých se musí hodnota dostat.
Např. pro vzorkovací kapacitu 5pF, sériový odpor 6k, rozlišení 10b a přesnost 1/4 LSB je doba 0.25 us.

ts=ln((2^n)/SA)RsCs

A to je v rozporu s tím, co jsem napsal?

Jde o jednoduché nabíjení kondenzátoru ze zdroje napětí, dobu nabíjení podle počtu bitů se znalostí velikosti LSB (velikosti reference) si snad odvodí každý:)

Rád bych tomu věřil, ale nejsem takový optimista :wink: Proč by tu ten dotaz jinak vznikl? :wink:
Když to člověk neumí spočítat, může si to i odsimulovat.

No já jsem myslel, že vznikl proto, že neví jak dlouho trvá přepnutí multiplexeru v procesoru:)…což není opravdu v datasheetu implicitně uvedeno.

Jo:), navíc v datasheetu jsou uvedený minimální vzorkovací doby, které počítají s maximální impedancí zdroje napětí (teda měly by:))

:arrow_right: administrator: příspěvek byl upraven
Citace byla pozměněna.

Jak mohou počítat s maximální impedancí zdroje, když ji neznají? Ta může být víceméně libovolná. Nebo je tento parametr v DS piců uveden?

To bude asi pravda… :blush:

no tak s něčím počítat musejí:)…a v datasheetu je vždy uvedena max. impedance nic jiného, takže bych řekl že je to pravděpodobné:), jinak maximální hodnota bývá většinou jenom jedna:)

Impedance je dle připojeného zdroje. Jediné, co tam mohou určit je maximální impedance pro určitou frekvenci převodníku. Pokud ti stačí nižší přesnost nebo rychlost, můžeš mít impedanci větší. O kolik ale už záleží na provozním režimu převodníku. Když budeš např. chtít fs mnohem menší než maximální ale necháš převodník taktovat maximálkou, tak smůla. Když ho ovšem zpomalíš tak už si zvýšení dovolit můžeš. Když totiž dává převodník na ustálení konstantní počet taktů, tak máš na ustálení hodnoty při 50kHz o něco víc času než při 1MHz.
Maximální hodnota bývá většinou jen jedna, ale pouze pro jednu určitou situaci :wink:
V DS je téměř u každé hodnoty nějaká podmínka.

Díky moc za reakce. Měření převodníku by mělo trvat do 20us. Během uplynutí 100us potřebuju 3x meřit. Šlo mi hlavně o rychlost toho multiplexeru. S impedancí problém nemám, mám to pověšený na výstupu operáku.
Zatím čekám 1us než se to přepne.
Pic mi fičí na 20MHz.

Pokud jde jen o rychlost přepnutí multiplexeru, myslím si že nebude trvat déle než jeden takt při maximální rychlosti MCU, tedy 200ns.

TAky si myslím, že by to mělo být rychlý, aspoň jak provádění instrukcí.

Uvidím co to bude dělat. Budu měřit střídavý napětí 50Hz a napětí akumulátorů.

Jasně, že je to impedance připojeného obvodu, ale je právě na konstruktérovi, aby nepřipustil impedanci toho obvodu větší, než doporučujou…pro všechy situace, frekvence, atd…:slight_smile:

Tak mi to nedalo a vlezl jsem do DS :slight_smile:
Billy:

Vypadá to, že to přepnutí není třeba řešit nebo je to ta položka “Amplifier Settling Time” u který mají 2us. Ovšem analogový MX bývá často jen pár mosfetů, kterým bych určitě neříkal zesilovač. Každopádně výpočet tam je :wink:.

Marzou:
konstruktér může připustit takovou impedanci, která vyhovuje jeho požadavkům. Takže když mu stačí 6b z deseti a 5ksps, tak může na nějakých doporučených “The maximum recommended
impedance for analog sources is 10 k.” hodit bobek :wink:.

Jo:) a pokud mu stačí 0b, tak muže měřit signál o nekonečné frekvenci, připojit zdroj napětí s nekonečnou impedanci atd…:slight_smile:
Mě šlo spíš o to se dovtípit, proč v DS uvádějí max. impedanci, nějaký důvod to musí mít, můj názor je takový, že když tuto max. impedanci dodržíš (nebudeš jí mít větší), tak můžeš používat vzokovací časy, které v DS uvádějí jako minimální přijatelné.
Jaký je tvůj názor na důvod uvedení max. impedance?

Jinak je zajímavé, že je to u různých piců různé, hodně jich má 10kOhmu, ted třeba dělám s picem který má 2.5kOhmu, viděl jsem snad i čislo do 50kohmu…a to bych řekl, že ty převodníky dělaj pořád stejný:)

“Amplifier Settling Time”: řekl bych že to má vztah ke každému vzorkování nezávisle na přepínání kanálu multiplexeru, takže bych to jako čas přepnutí kanálu nepovažoval.

Ta impedance v DS bude mít asi 2 hlavní důvody:

  1. aby mohl převodník dosahovat deklarovaných hodnot (rozlišení, frevence a tedy i fsmax)
  2. aby měření neovlivňoval “leak current”. Konstrukce převodníku bude nejspíš stále podobná, ale kdyby byly různé čipy vyráběné různým procesem, měnil by se nejspíš i ten unikající proud.