<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
No, většinou řeším opačný problém a třeba tlačítkama spínám odpory v
děliči, což sežere 1 nohu s ADC. Dokud stačí 10bit ADC a 1% odpory,
je to super.<br>
Jednou jsem to udělal dokonce maticově, použil drátové R a vstup
důkladně chránil. Obstálo v testu elektrickým paralyzérem:-)<br>
<br>
Když tak koukám do původního dotazu:<br>
"Nezná někdo ještě nějakou jinou zábavnou metodu?"<br>
<br>
Zábavné by mohlo být místo tradiční čas. konstanty T= RC použít
T=L/R ... nebo místo snahy o nabíjení C konstantním I použít
vybíjení L konstantním U, kde U bude např. úbytek na doutnavce:-)<br>
<br>
PH<br>
<br>
<div class="moz-cite-prefix">Dne 29.09.2022 v 17:05 Jiří Linhart
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:c85c584d-7b57-fc90-fa01-114b1300745a@gmail.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p><font size="4">Dobrý den, <br>
</font></p>
<p><font size="4">kdybych měl více vstupů na procesoru tak by
mohlo bít řešení pomocí náhrady potenciometru otočným
přepínačem , popřípadě jeho přepnutí zakódovat (zmenšení počtu
vstupů)<br>
</font></p>
<p><br>
</p>
<p><font size="4">nebo <br>
</font></p>
<p><font size="4">encoderu (přidej uber) a indikovat stav</font></p>
<p><font size="4"><br>
</font></p>
<p><font size="4">nebo <br>
</font></p>
<p><font size="4"><br>
</font></p>
<p><font size="4">rovnou dvě tlačítka + a -<br>
</font></p>
<p><br>
</p>
<p><font size="4">JL</font><br>
</p>
<div class="moz-cite-prefix">Dne 28.09.2022 v 14:35 Jindrich Fucik
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:b69106b3-f46b-7c87-aa04-4cdc7f92e2ea@seznam.cz">Ahoj,
<br>
<br>
v rámci svého minimalistického projektu tady mám další výzvu.
Jelikož už jsem AD převodník použil jinde, nemohu jej použít pro
čtení polohy potenciometru. Potenciometr je zde jako součást
uživatelského rozhraní, které má umožnit uživateli rozeznat
zhruba 50 dílků (ne že bych věřil, že to uživatel dokáže
nastavit). <br>
<br>
Mám k dispozici buď PIC16LF15345 nebo PIC16F15244. Ten první je
LF (3,3V) a má 5 bit DA převodník, druhý je "bez L" (1,8 až
5,5V) a NEmá DA převodník. Oba mají komparátor, oba mají
dostatek PWM, oba mají CCP (měření délky pulzu). <br>
<br>
Zatím znám několik metod: <br>
1A) k potenciometru přidat kondenzátor, tím dostaneme RC a měřit
dobu nabíjení kondenzátoru. Tady mne trochu trápí nelinearita,
ideální by bylo si udělat zdroj proudu s tím potenciometrem. <br>
<br>
1B) udělám si zdroj proudu, kterým budu nabíjet kondenzátor,
připojím ho na vstup komparátoru, na druhý vstup připojím napětí
z potenciometru a budu měřit čas kdy se napětí překročí. To je
podobné jako 1A, možná to zjednoduší schéma, ale potřebuje to
více nožiček. <br>
<br>
2) použít komparátor a PWM. Tedy PWM pomocí nějakého
kondenzátoru+odporu vyhladím a napětí budu porovnávat s napětím
na potenciometru. Tady je mrzutá ta postupná aproximace, která
nemůže být moc rychlá. Také přesnost na 6 bitů bude na zvážení.
<br>
<br>
3) použiji ten DA převodník a komparátor a de-facto si postavím
AD převodník s postupnou aproximací. Tohle mi přijde asi
nejjednodušší, ale dostanu jen 5 bit (protože mám 5bit DA). <br>
<br>
Při návrhu zohledňuji i počet vnějších součástek. <br>
<br>
Nezná někdo ještě nějakou jinou zábavnou metodu? <br>
</blockquote>
</blockquote>
</body>
</html>