Mám dotaz,
potřebuji v programu číst jednou vstup c.0 a jindy zase jej použít pro přerušení. A ejhle, ono mi to nejde...
Jakmile se jednou vstup použije Readadc c.0 ,(reg), tak už to nejde vrátit do digitálního stavu.
Ani příkazem let adcsetup = 0.
A tak už nelze použít pro přerušení - je vyvoláváno stále, i když dám na vstup 5V natvrdo.
Napadá někoho, kde dělám chybu?
Luděk
Přerušení a ADC 14M2
Re: Přerušení a ADC 14M2
Budu cynický - chybu vidím v používání Picaxe jinak, než na základní příklady, a bez znalosti vnitřku.
Nikoho plánovaně neurážím. Jestli se Vám nelíbí co píšu, tak to nečtěte. A ostatně, třeba za to nemůžu - Researchers believe that dark humor can be a significant symptom of dementia.
-
- Příspěvky: 385
- Registrován: 02 dub 2014, 15:30
Re: Přerušení a ADC 14M2
uz to nekdo hledal.
http://www.picaxeforum.co.uk/showthread ... ogue-input
asi se nevyhnes tomu pohrat si s registry.
mrkni do datasheetu PICky.
http://www.picaxeforum.co.uk/showthread ... ogue-input
asi se nevyhnes tomu pohrat si s registry.
mrkni do datasheetu PICky.
Re: Přerušení a ADC 14M2
Nemám rád hloupé rejpálky, jako třeba DavidO... naprosto zbytečný příspěvek...
znalosti vnitřku by asi pomohly, ale jakékoli příklady s tím nemají nic společného.
Prostě jde o to, že stejně tak, jak během programu mohu měnit vstupy a výstupy, kdykoli a jakkoli,
tak mne zarazil fakt, že se port neumí (nebo nevím jak) vráti z ADC zpět do digital modu.
A o to šlo v mém dotazu na foru.
znalosti vnitřku by asi pomohly, ale jakékoli příklady s tím nemají nic společného.
Prostě jde o to, že stejně tak, jak během programu mohu měnit vstupy a výstupy, kdykoli a jakkoli,
tak mne zarazil fakt, že se port neumí (nebo nevím jak) vráti z ADC zpět do digital modu.
A o to šlo v mém dotazu na foru.
-
- Příspěvky: 385
- Registrován: 02 dub 2014, 15:30
Re: Přerušení a ADC 14M2
tohle nefunguje ?
let adcsetup = %0000000000001111 ; nastaví ADC0,1,2,3
nula ti to zpatky nenastavi na digital ?
jedna je vec je digitalni rezim a druha je detekce preruseni.
problem je tedy v preruseni a ne v digitalnim modu.
jak jsem odpovidal v jinem prispevku, je treba mrknout do datasheetu PICky
a mozna nastavit/shodit nejaky flag v prislusnem registru
https://www.google.cz/url?sa=t&rct=j&q= ... h6m5kxMXn-
let adcsetup = %0000000000001111 ; nastaví ADC0,1,2,3
nula ti to zpatky nenastavi na digital ?
jedna je vec je digitalni rezim a druha je detekce preruseni.
problem je tedy v preruseni a ne v digitalnim modu.
jak jsem odpovidal v jinem prispevku, je treba mrknout do datasheetu PICky
a mozna nastavit/shodit nejaky flag v prislusnem registru
https://www.google.cz/url?sa=t&rct=j&q= ... h6m5kxMXn-
Naposledy upravil(a) Vladimir66 dne 28 úno 2018, 10:10, celkem upraveno 4 x.
Re: Přerušení a ADC 14M2
Ještě bych to zkusil na jiném typu procesoru. Mám pocit, že se mi ta 14M2 v jedné konstrukci s přerušením chovala taky nestandardně
Když tak pročítám: http://www.picaxe.cz/wp-content/uploads/Adcsetup.pdf,
je otázkou, zda tím příkazem let adcsetup = 0 zapínáš ten správný vstup viz:
"U PICAXE řady M2 je nejjednodušší nastavit adcsetup bite automaticky pomocí příkazů
readadc, readadc10 a touch. U těchto typů PICAXE se dá příkaz adcsetup reálně využít jen k
přepnutí pinu z digitálního módu na analogový a naopak."
A hlavně poslední odstavec:
"PICAXE řady M2
Individuální nastavení masky pinů"
Když tak pročítám: http://www.picaxe.cz/wp-content/uploads/Adcsetup.pdf,
je otázkou, zda tím příkazem let adcsetup = 0 zapínáš ten správný vstup viz:
"U PICAXE řady M2 je nejjednodušší nastavit adcsetup bite automaticky pomocí příkazů
readadc, readadc10 a touch. U těchto typů PICAXE se dá příkaz adcsetup reálně využít jen k
přepnutí pinu z digitálního módu na analogový a naopak."
A hlavně poslední odstavec:
"PICAXE řady M2
Individuální nastavení masky pinů"
Re: Přerušení a ADC 14M2
Už to šlape... díky Vladimire66
ono je NUTNE, před každým požadavkem na přerušení ten ADC příkazem let adcsetup..... vypnout.
Díky moc a hezký den všem.
ono je NUTNE, před každým požadavkem na přerušení ten ADC příkazem let adcsetup..... vypnout.
Díky moc a hezký den všem.