Arduino: Analogread visar endast 1023 hela tiden!
Re: Arduino: Analogread visar endast 1023 hela tiden!
Re: Arduino: Analogread visar endast 1023 hela tiden!

Re: Arduino: Analogread visar endast 1023 hela tiden!
Re: Arduino: Analogread visar endast 1023 hela tiden!
Miramithe: Tangentbord som är digitalt...och en bra övning

Men problemet är att om jag har ett motstånd på 30 kOhm och ett annat motstånd på 32 kOhm så visar dom ungefär det samma. Det skiljer vilket är bra men analogread varierar fram och tillbaka. Det är inte stabila värden som den ger.
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Arduino: Analogread visar endast 1023 hela tiden!
Idén fick jag från TIP#5 i denna pdf -> Microchip Tips'n'Tricks.
Nu är det förvisso en Microchip PDF men kan vara värt att läsa (och kanske prova).
Re: Arduino: Analogread visar endast 1023 hela tiden!
Jag måste tyvärr ta förlorarbussen in till stan för att köpa en lödpenna. Min gick sönder nyss. Den jag köpte från Alipexress för totalt 21 kr

Re: Arduino: Analogread visar endast 1023 hela tiden!
Vad är ditt krav för "stabilt" och hur mycket är "så mycket" ?
ADC värderna kommer i princip *alltid* att fladdra lite fram och tillbaka.
+/- 5 enheter är nog normalt, kanske +/- 10 på en labbplatta.
Ska man ner i lägre värden så blir det snabbt ganska avancerat.
Re: Arduino: Analogread visar endast 1023 hela tiden!
Nyss startat ATmega.
Kod: Markera allt
3000000.00
3000000.00
3000000.00
3000000.00
Släpper knapp 12997067.25
2997067.25
3000000.00
2970674.50
2970674.50
2970674.50
Kod: Markera allt
3000000.00
Kod: Markera allt
158357.76
161290.3¦Hø158357.76
155425.21
Kod: Markera allt
3000000.00
Kod: Markera allt
á1111436.ºj
1108504.37
1114369.50
1108504.37
Kod: Markera allt
2932551.25
á2929618.75
2935484.00
2932551.25
Kod: Markera allt
2997067.25
2994135.00
2997067.25
2991202.25
2991202.25
Kod: Markera allt
2985¦¦Iªj
2982404.75
2988269.75
2988269.75
Kod: Markera allt
20527.86
20527.86Cá20527.86
20527.86
Kod: Markera allt
521994.12
521994.12
519061.59Cá2985337.25
Kod: Markera allt
2982404.75
2982404.75
3000000.00
Kod: Markera allt
2530791.75
253372Iªj
2533724.25
á2533724.25
Kod: Markera allt
2953079.00
295894Iªj
2953079 j
2956011.75
3000000.00
2997067.25
3000000.00
2997067.25
Jag hade tänkt och använda mig av en switch case för att bestämma vilka knappar jag trycker på med hjälp av > och < operatorerna.
Kod: Markera allt
void loop() {
// read the input on analog pin 0:
int sensorValue = analogRead(A5);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * 3000000.0/1023.0;
// print out the value you read:
Serial.println(voltage);
delay(500);
}
Knapp 1
Kod: Markera allt
1021.00
1021.00
1022.00
Kod: Markera allt
1010.00
1012.00
1010.00
1010.00
Kod: Markera allt
á54.00
54.00
54.00
54.00Cá54.00
55.0j
54.00
Kod: Markera allt
997.00
998.00
999.00
998.00
997.00
998.00
999.00
Kod: Markera allt
1022.00
1020.00
1020.00
1020.00
1020.00
Kod: Markera allt
1018 j
102rj
1021.00
1017.00
1017.00
1018.00
1017.0j
1018.00
1018.00
Kod: Markera allt
6.00
7.00
7.00
7.00
6.00
7.00
8.00
Kod: Markera allt
178.00
177.00
177.00
177.j
177.00
177 j
178.00
Kod: Markera allt
1018.00
1017.00
1017.00
1017.j
1015.00
1015.00
1015.00
Kod: Markera allt
864.00
864.00
864.00
864.00
865.00
865.00
866.00
Kod: Markera allt
1009.00
1008.00
1008.00
á1007.00
á1009.00
1006.00
1008.00
Re: Arduino: Analogread visar endast 1023 hela tiden!
Du kan lika gärna köra med ADC värdet direkt, att gå omvägen via
en omräkning till något som ska likna "volt" är helt onödigt.
Hur som helst, har du räknat på hur mycket det faktiskt "fladdar"?
3000000.00
2997067.25
Skillnad: 2933.
Eller 3000000/2973 = ca 0.1 %.
Det är ju upplösningen för en 10 bitars ADC!
Alltså "fladdrar" det enbart en LSB, vilket är fantastiskt bra!
Du kan själv räkna på de andra värderna...
Re: Sv: Arduino: Analogread visar endast 1023 hela tiden!
Edit bilden kom inte med. Ska fixa på datorn ...
Re: Arduino: Analogread visar endast 1023 hela tiden!
Knapp 1sodjan skrev:Lite underliga värden. Varför har du *7* siffror plus 2 decimaler !?
Du kan lika gärna köra med ADC värdet direkt, att gå omvägen via
en omräkning till något som ska likna "volt" är helt onödigt.
Hur som helst, har du räknat på hur mycket det faktiskt "fladdar"?
3000000.00
2997067.25
Skillnad: 2933.
Eller 3000000/2973 = ca 0.1 %.
Det är ju upplösningen för en 10 bitars ADC!
Alltså "fladdrar" det enbart en LSB, vilket är fantastiskt bra!
Du kan själv räkna på de andra värderna...
Kod: Markera allt
1013.00
1013.0j
1013.00
Kod: Markera allt
54.00
54.00
54.00
Kod: Markera allt
378.00
379.00
378.00
Kod: Markera allt
1000.00
1001.00
1001.00
Kod: Markera allt
1022.00
1022.00
102L j
Kod: Markera allt
1018 j
1020.00Cá
1018.00
Kod: Markera allt
1020.00
1019.00
1020.00
Kod: Markera allt
7.00
7.00
7.00
Kod: Markera allt
178.00
177.00
177.00
Kod: Markera allt
1016.00
1018.00
101rj
Kod: Markera allt
863.0j
865.00
864.00
Kod: Markera allt
1008.0j
1008.00
1008 j
Kod: Markera allt
1023.0j
10&& j
1022.00
Om det inte finns andra lösningar så måste jag byta motstånd som skiljer dem mer åt.
Re: Arduino: Analogread visar endast 1023 hela tiden!
I mitten längst ned är ingångarna för att mäta resistansen.

Första rad från vänster: 1,2,3,4,5
Andra rad från vänster: 6,7,8,9,0
Tredje rad från vänster: *, #

Re: Arduino: Analogread visar endast 1023 hela tiden!
säga att det är störningar i överföringen. Eller någon
bug i utskriftrutinen, men det är nog mindre sannolikt.
Men dina värden ser ju väldigt stabila och bra ut!
> så måste jag byta motstånd
Från vadå?
Varför ligger t.ex knapp 6 och 7 så nära varandra?
Har du inte samma motstånd hela vägen?
Re: Arduino: Analogread visar endast 1023 hela tiden!
Störningar, skulle jag tro. (Om du menar det som skrivs ut.)Al_Bundy skrev:Vad står alla %&¤r osv för? Är det typ ungefär som man kan skriva 10L som är ett långt tal?
- SeniorLemuren
- Inlägg: 8424
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Arduino: Analogread visar endast 1023 hela tiden!
Eller ser jag fel? Vissa in-värden visat bra skillnad mellan de olika knapptryckningarna medans vissa (som sodjan påpekade) ligger väldigt nära varandra, det kan medföra osäker bedömning om vilken knapp som är tryckt.
Med samma resistans på alla motstånd borde det inte vara några som helst problem att få det att funka.