Re: počítací AD převodník v PIC16F18015

Jan Waclawek konfera na efton.sk
Čtvrtek Únor 8 10:08:51 CET 2024


[preposielam]


Ahoj,

ako tomu datasheetu rozumiem ja, je nasledovne.

zakladny obrazok je Figure 31-1 ADC block diagram, potom je za tym
pripojeny pocitaci modul Figure 31-6 a CVD modul si zatial nevsimaj. Je to
modul kapacitnych "tlacitok". Pokial ho nepotrebujes, tak do ziadneho z
tych riadiacich signalov nesahaj. Podla obrazku je to vsetko povypinane.

Pocitaci modul je pristupny cez ADACC - AD accumulator register a k tomu su
este par dalsich, ktore nie su nakreslene na obrazkoch. Ked si nastavis mod
BASIC, tak by ten modul mal fungovat ako na klasickej 16F877. Tie ostatne
mody su jednoduche mat. operacie s vysledkami ADC prevodnika. Jeden mod len
scitava vysledky a nastavi ich pocet, dalsi vypocita priemer a burst pocita
pakety zo vzoriek. LPF je filter. V jednotlivzch modoch je
este moznost porovnat vysledok s rozsahom dat, registre treshold.

Pokial nepotrebujes jednoduchu matematiku, tak by sa malo dat fungovat aj
na bite GO/DONE a registroch ADRES, tak ako na starej 16F877 (Figure31-1).

Takto tomu rozumiem ja. Samozrejme som ten datasheet cital asi 3x s
dostatocne velkym casovym odstupom na roznych verziach datasheetu PIC18F47
a pochopil som ten prevodnik az pri tomto novom farebnom datasheete. Zial,
keby nakreslili do toho obrazku s pocitacim modulom register ACC, tak by
ten datasheet bol ovela zrozumitelnejsi.

Jo casy, ked sa PIC programoval z pamati bez akychkolvek pomocok sa
skoncili. Tieto nove typy su s komplexnostou porovnatelne s hw na STM32 a
aj s tym konfiguracnym molochom MCC ich dokonale kopiruje. A to iste
plati aj o tych novych AVRxxDBxx. Tam sa tiez clovek zasekne na hocijakej
blbosti. A co mi vadi snad najviac, tak zmenili filozofiu ovladania MPLABX,
takze som sa vratil ku verzii 6,05 a tam to mam uz trochu zase pod
kontrolou aj s PRESTOm.

A.


>>>

Přátelé a kamarádi,

zase jsem se pustil do něčeho, čemu moc nerozumím. Mám procesor
PIC16F18015 a mimo jiné potřebuji vyhodnotit polohu potenciometru.
Potenciometr je připojen mezi Vdd a Vss, má hodnotu 10k? a jezdec je
připojen na volný vstup procesoru. Chtěl bych přečíst polohu ve 128
krocích. Tedy nic zvláštního.

Jenže tenhle procesor je dvakrát chytřejší než já a klade mi otázky,
kterým nerozumím.

Moc nechápu precharge polarity a už vůbec nechápu guard ring polarity.
Trochu bych odhadl, že se mi snaží říci, že sample and hold připojí buď
proti Vdd, nebo proti Vss a že to zavede různou chybovost. Dokonce si
mohu vybrat double sample, kterej změří oba případy a vrátí mi průměr.
Tedy vlastně ani to nemusí být průměr, ale něco podle nastaveného módu.
A těm módům už vůbec nerozumím. Asi by se mi líbilo použití nějakého
průměrovacího módu, ale nechápu, za jaké období se dělají ty průměry.

• Basic: This is a Legacy mode. In this mode, ADC conversion occurs on
single (DSEN = 0) or double (DSEN = 1) samples. ADIF is set after each
conversion is complete. ADCHxIF is set according to the Calculation mode.
• Accumulate: With each trigger, the ADC conversion result is added to
the accumulator and ADCNT increments. ADIF is set after each conversion.
ADCHxIF is set according to the Calculation mode.
• Average: With each trigger, the ADC conversion result is added to the
accumulator. When the RPT number of samples have been accumulated, a
threshold test is performed. Upon the next trigger, the accumulator is
cleared. For the subsequent tests, additional RPT samples are required
to be accumulated.
• Burst Average: At the trigger, the accumulator is cleared. The ADC
conversion results are then collected repetitively until RPT samples are
accumulated and finally the threshold is tested.
• Low-Pass Filter (LPF): With each trigger, the ADC conversion resu=


Další informace o konferenci Hw-list