Stabilita Readadc10

Odpovědět
Luděk
Příspěvky: 82
Registrován: 22 úno 2016, 08:47

Stabilita Readadc10

Příspěvek od Luděk »

Mám dotaz - prosím, vysvětlí mi někdo, proč nemám stabilní hodnoty z příkazu Readadc10 u 20M2?
Mám stabilní napájení, včetně blokovacích kondů a i když použiji testovací trimr - mezi plus, minus 5V a běžec dám na jakýkoli ADC Pin,
kecá to plus minus 2 čísla.
Pokud použiju 08M2, 14M2 či 18M2, čísla drží jako přibité... ani se nehnou... Ale u 20M2 to kecá-kolísá. Mám tři brouky-stejně kecají.
Prosím o radu - opakuji - u 08M2, 14M2 a 18M2 se to ani nehne

jen pro info,klasické nastavení :

Kód: Vybrat vše

#picaxe 20M2
#no_data	
setfreq M16	
symbol BAUD	=N9600_16

INIT:		pause 500
		serout 0,BAUD,($FE,$01)			;smaže display
		fvrsetup FVR4096				;reference na 4,096V
		adcconfig %011  				;reference = FVR
		pause 500						;pauza pro display
		
MAIN:	readadc10 b.2,w10
		serout 0,BAUD,($FE,$80,#w10,"           ")
		pause 500
		readadc10 b.3,w11
		serout 0,BAUD,($FE,$C0,#w11,"           ")
		pause 500
		goto main
Vkládej kód mezi tagy code!
Upravil jrt 26.9.2016
jova
Příspěvky: 361
Registrován: 16 pro 2013, 11:40

Re: Stabilita Readadc10

Příspěvek od jova »

Měl jsem podobný problém viz vlákno: PICAXE a krokové motory, poslední příspěvek dole viewtopic.php?f=14&t=400&start=10
Zjistil jsem že mi to dělaly příliš dlouhé nestíněné vodiče k potenciometru, do kterých se indukovalo brumové napětí.
Jestli je to i tvůj případ netuším.
Luděk
Příspěvky: 82
Registrován: 22 úno 2016, 08:47

Re: Stabilita Readadc10

Příspěvek od Luděk »

Díky za info,
ale ne ne ne ne. Dokonce to zkouším na originální zkušební destičce od SnailShopu.
Takže trimr mám přímo na konektoru...
Dělá mi to POUZE ten 20M2
:-(
Nevím, kde je chybička...
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Stabilita Readadc10

Příspěvek od jrt »

Chybička je v tom, že příkaz fvrsetup funguje jen jednorázově a před každým měřením se musí obnovovat.

Tedy nikoli:

Kód: Vybrat vše

#picaxe 20M2
#no_data
setfreq M16
symbol BAUD =N9600_16

INIT: pause 500
serout 0,BAUD,($FE,$01) ;smaže display
fvrsetup FVR4096 ;reference na 4,096V
adcconfig %011 ;reference = FVR
pause 500 ;pauza pro display

MAIN: readadc10 b.2,w10
serout 0,BAUD,($FE,$80,#w10," ")
pause 500
readadc10 b.3,w11
serout 0,BAUD,($FE,$C0,#w11," ")
pause 500
goto main
ale:

Kód: Vybrat vše

#picaxe 20M2
#no_data
setfreq M16
symbol BAUD =N9600_16

INIT: pause 500
serout 0,BAUD,($FE,$01) ;smaže display
pause 500 ;pauza pro display

MAIN:
fvrsetup FVR4096 ;reference na 4,096V
adcconfig %011 ;reference = FVR
readadc10 b.2,w10
serout 0,BAUD,($FE,$80,#w10," ")
pause 500
fvrsetup FVR4096 ;reference na 4,096V
adcconfig %011 ;reference = FVR
readadc10 b.3,w11
serout 0,BAUD,($FE,$C0,#w11," ")
pause 500
goto main
A jen tak z bujnosti jsem vyzkoušel i 08M2 a 14M2 s původním kódem a oba se na originálních AXEboardech chovaly úplně stejně jako 20M2, tedy ujížděly o +- jeden digit.
jrt
Luděk
Příspěvky: 82
Registrován: 22 úno 2016, 08:47

Re: Stabilita Readadc10

Příspěvek od Luděk »

Ahoj dobrý člověče,
jo díky, pomohlo to... Ale zkusil jsem to znovu.
4ks 08M2, 2ks 14M2, 1ks 18M2 a čísla se ani nehnou - pokud ano, je to hodnotana přelomu mezi rozlišením ADC převodníku.
Když přidám druhý trimr nas "jemné" poštelování, hodnota se ani nehne...
Ale v případě 20M2 - mám tři kusy . to kolísá plus mínus 2-3 digity...
A naopak 20X2 se také ani nehne...
Jo ještě něco - vynechal jsem příkazy fvrsetup a nechal jsem to na +5V a adcconfig na %000
a taky to kolísá u toho 20M2 a u ostatních se to ani nehne...

Takže záhada trvá... Myslím, že bude problém v tomto typu brouka.
Luděk
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Stabilita Readadc10

Příspěvek od jrt »

Luděk píše:Myslím, že bude problém v tomto typu brouka
To je klidně možné, PICky mají různá podivná vnitřní zapojení. Ne nadarmo se říká, že jejich předlohou byl čip, objevený v létajícím talíři, který havaroval v roce 1947 v Roswellu :D
jrt
Odpovědět