Sida 4 av 7
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 18:25:54
av svanted
" sprättar en bärs å väntar med spänning på fortsättningen på tråden...."

Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 18:36:50
av Glenn
jag gissar att al har läst om hur det är löst med unika värden för varje knapp i tex ratt-fjärrar osv (alltså knappar i bilratten som styr funktioner på bilstereon) där man har olika resistanser som är sinnrikt uträknade mot varann för att kunna detektera samtidiga knapptryck, och sen försökt implementera detta själv ?
Jag misstänker att det i praktiken blir omöjligt att få det säkert om man har sådär många knappar, men ska man bara kunna detektera en i taget finns det ju enklare lösningar som påpekats i tråden.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 18:40:57
av SeniorLemuren
Nerre skrev:Har Al kopplat som Miramithe ritade? Al har mig veterligen INTE visat nåt schema på hur han kopplat?
Jag tolkade det hela som att Al har knapparna sitter parallellt med motstånden, d.v.s. ett knapptryck kortsluter ett motstånd.
Du har nog rätt där Nerre. Jag förväntade mig bara att han hade följt det schema som Miramithe visade, men så var nog inte fallet.

Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 19:15:46
av jesse
Al_Bundy skrev:Knapp nummer 1 har 220 KOhm
Knapp nummer 2 har 130 Ohm
Knapp nummer 3 har 13000 Ohm
Knapp nummer 4 har 100 KOhm
Knapp nummer 5 har 37000 KOhm
Knapp nummer 6 har 560 KOhm
Knapp nummer 7 har 1300 MOhm
Knapp nummer 8 har 24 Ohm
Knapp nummer 9 har 470 Ohm
Knapp nummer 0 har 390 KOhm
Knapp nummer * har 12 KOhm
Knapp nummer # har 150 KOhm
Jag har räknat ut alla dessa och enligt mitt tycke så borde AnalogRead() visa en större skillnad mellan dessa. Eller hur?
Hur fick du fram dessa värden? De är inte bara orimliga, de är skrivna på ett väldigt konstigt sätt också:
130000 Ohm = 13 kOhm
37000 kOhm = 37 MOhm
1300 MOhm = Väldigt högt och väldigt ovanligt. Värden över några hundra KOhm ger inte tillförlitliga värden till en ADC. Man ska helst ha värden under 50 kOhm.
Vill du att det ska "fladdra" mindre så sätt dit en kondensator på ca 100 nF mellan A5-pinnen och jord.
Sedan är det så att (oavsett om du har kondensator eller inte) så kan du få felaktiga resultat precis när du trycker in eller släpper en knapp. För att det inte ska tolkas som att du tryckt på en annan knapp behöver du kanske ta in 10 värden i rad som alla måste hålla sig inom samma intervall för att du ska vara säker på att en viss knapp är nedtryckt.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 19:46:01
av Al_Bundy
1300 MOhm = Väldigt högt och väldigt ovanligt. Värden över några hundra KOhm ger inte tillförlitliga värden till en ADC. Man ska helst ha värden under 50 kOhm.
Vill du att det ska "fladdra" mindre så sätt dit en kondensator på ca 100 nF mellan A5-pinnen och jord.
Då vet jag att nästa gång jag ska köra ADC så ska jag köra under 50 kOhm. Exemplet på inlägg #1 visar en 10k Ohm potentiometer. Då förstår jag
Jag bytte bort den där 1300 MOhm motståndet mot en mindre.
Jag ska testa med en kondensator på 100 nF. Jag har bara tyvärr bara uF och pF.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 21:07:56
av Miramithe
Varför inte bara göra som alla andra och köra med typ bara 1k ohm motstånd och i serie?
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 21:24:17
av Al_Bundy
För då måste jag montera ner det jag har byggt. Jag vet att serie är mycket smartare men jag hade absolut ingen aning att man kunde göra så. Därför gjorde jag mer en blandning av serie- och parallellkoppling där varje motstånd går till egen knapp.
Det är ungefär det samma, men nästa gång ska jag köra samma motstånd i en serie

Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 21:34:51
av danei
Al_Bundy skrev:
Jag ska testa med en kondensator på 100 nF. Jag har bara tyvärr bara uF och pF.
Du har händelsevis inte 0,1µF?
( µ finns på [Alt Gr]+m)
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 21:42:11
av Al_Bundy
Jag testade sätta en kondensator men det blev bara värre eller ingen skillnad alls. Fortfarande J¤%¤%&# osv. Jag satte dit en 338 pF keramikkondensator. mellan ett motstånd. Men jag kanske satt fel?
Om vi leker med tanken att jag har kopplat så här. Vad ska då kondensatorn sitta då?

Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 22:09:42
av bearing
Felen i serieöverföringen skulle kunna bero på att interna oscillatorn (antar att den används) inte går i precis 16 MHz.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 22:25:37
av danei
Hur sätter man en kondensator mellan ett motstånd? Måste det inte vara två för att man ska kunna få in något mellan?
Den bör sitta mellan GND och A0. Men du har ju inga problem med fladdrig avläsning så vad den ska göra för nytta vet jag inte. Vad var det det inte hjälpte mot?
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 7 mars 2014, 23:58:11
av sodjan
> Fortfarande J¤%¤%&# osv.
Det har ingenting alls med någon kondensator att göra.
Kondingen var för att stabilisera värderna på A0 (eller A5),
men det behövs ju inte vilket dina värden visade.
J¤%¤ är störningar på seriekommunikationen, det är ett helt
annat problem. Kanske missmatch i baudrate. Eller glapp (det
har du ju redan haft på andra ställen i kopplingen

).
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 8 mars 2014, 00:35:27
av jesse
Al_Bundy skrev:Jag satte dit en 338 pF keramikkondensator. mellan ett motstånd.
Ja, du kan ju sätta dit en kondensator var du vill, men om det ska ha någon effekt mot fladdrande värden på ADC så ät det mellan pin A5 och GND som gäller.
Sedan får du börja lära dig lite vad prefixen
M k m µ n p betyder. Jag föreslog en kondensator på 100
nF. Du testar 338pF. Det motsvarar 0.3 nF, nästan 300 gånger mindre kapacitans än 100 nF - och därmed 300 gånger sämre på att stabilisera en signal (lite förenklat).
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 8 mars 2014, 00:49:53
av bearing
Ifall du inte har några avkopplingskondensatorer, och ingen avstörning mellan VCC och AVCC, är det inte så konstigt att värdena vandrar lite. Men det borde inte göra något för funktionen på ditt program, eftersom att knappavläsning rimligtvis görs genom att passa in knapparna i olika intervall, och inte specifika värden.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Postat: 8 mars 2014, 01:20:37
av Al_Bundy
jesse skrev:Al_Bundy skrev:Jag satte dit en 338 pF keramikkondensator. mellan ett motstånd.
Ja, du kan ju sätta dit en kondensator var du vill, men om det ska ha någon effekt mot fladdrande värden på ADC så ät det mellan pin A5 och GND som gäller.
Sedan får du börja lära dig lite vad prefixen
M k m µ n p betyder. Jag föreslog en kondensator på 100
nF. Du testar 338pF. Det motsvarar 0.3 nF, nästan 300 gånger mindre kapacitans än 100 nF - och därmed 300 gånger sämre på att stabilisera en signal (lite förenklat).
Jag vet vad
M k m µ n p betyder. Jag sa även att jag inte hade någon
nF så jag tog bara någon för att testa om det blev någon skillnad.