Forum: Mikrocontroller und Digitale Elektronik Einfacher Testaufbau: Attiny13A reagiert auf Vibration


von Svenska M. (svenskas)


Angehängte Dateien:

Lesenswert?

Hallo,

das ist mein erstes Posting, aber ich habe ein sehr seltsames Phänomen 
und wollte mal nachfragen. Ich mache gerade einen Testaufbau mit einem 
Attiny13A. Ich habe die Fuses über einen Arduino Uno gesetzt und jetzt 
ein einfaches Testprogramm hochgeladen, es soll eine LED solange 
leuchten, wie ich einen Taster gedrückt halte:
1
const int buttonPin = 4;
2
const int ledPin = 3;
3
4
void setup() {
5
 pinMode(ledPin, OUTPUT);
6
 digitalWrite(ledPin, LOW);
7
8
 pinMode(buttonPin, INPUT);
9
 digitalWrite(buttonPin, LOW);
10
}
11
12
void loop() {
13
 if (digitalRead(buttonPin) == HIGH ) {
14
  digitalWrite(ledPin, HIGH);
15
 } else {
16
  digitalWrite(ledPin, LOW);
17
 }
18
}

Kurzum: Ich habe +3V3 an Vcc, GND an GND. LED an Pin 2 (GPIO Pin 3). An 
Pin 3 (GPIO 4) soll ein Taster ran - der fehlt aber noch, denn 
merkwürdig ist das Verhalten auch jetzt schon.

Ich hebe das Breadboard und lasse es etwas fallen - LED geht an. Nach 
paar Sek. geht sie wieder aus. Ich klopfe mit den Fingern auf das 
Breadboard, die LED flimmert.

Das Verhalten sieht man auch kurz im Video (Datei Anhang).

Warum?? Das Programm ist genau so, wie oben beschrieben. Ich habe ein 
anderes Breadboard verwendet, und auch den Attiny mal getauscht.

Woran kann das liegen?

UPDATE: Video per YouTube:
https://youtu.be/s8crDR009pY

: Bearbeitet durch User
von Gustl B. (gustl_b)


Lesenswert?

20 MB Anhang? Krasse Verschwendung. Lade das doch auf YouTube hoch und 
verlinke es hier. Sonst hast du den Grund schon genannt. Breadboard. Da 
wackeln die Pins eben etwas. Und dann haben offene Eingänge eben ein 
undefiniertes Potential. Mach da Pullups oder Pulldowns dran und alles 
ist OK.

von Svenska M. (svenskas)


Lesenswert?

Gustl B. schrieb:
> 20 MB Anhang? Krasse Verschwendung. Lade das doch auf YouTube hoch und
> verlinke es hier. Sonst hast du den Grund schon genannt. Breadboard. Da
> wackeln die Pins eben etwas. Und dann haben offene Eingänge eben ein
> undefiniertes Potential. Mach da Pullups oder Pulldowns dran und alles
> ist OK.

Ok, vielleicht mache ich das gleich noch. Aber: Selbst wenn 
"undefinierter Zustand" zutrifft - warum leuchtet die LED noch 1-2 
Sekunden nach, wenn ich das Breadboard hart aufsetze? Der Loop dürfte 
doch wesentlich schneller durchlaufen und die LED müsste direkt wieder 
ausgehen?

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Hust, mal wieder kein Abblockkondensator an der Betriebsspannung und 
keine definierte LED-Strombegrenzung, hust hust...

SCNR,
WK

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Ein Breadboard besteht aus tausenden kleinen Federkontakten. Diese 
wirken auf Fallenlassen wie tausende kleine Taster. Auch 
Übergangswiderstände und lange Leitungen als Antenne spielen hier eine 
Rolle. Es wäre eher merkwürdig, wenn diese Effekte bei eine Breadboard 
nicht auftreten.

von nichso einfach (Gast)


Lesenswert?

Dergute W. schrieb:
> Hust,

Auch Hust, mal wieder der totale Pfusch am Bau. Schlechter
kann man es wirklich nicht machen.

Beitrag #6493479 wurde von einem Moderator gelöscht.
von Einer K. (Gast)


Lesenswert?

Dergute W. schrieb:
> Hust, mal wieder kein Abblockkondensator an der Betriebsspannung und
> keine definierte LED-Strombegrenzung, hust hust...
Und keinen Pullup am Eingang.

Alles in allem:
Dein ATTiny verhält sich ganz normal.
Er tut nur nicht das, was er in deiner Fantasie tun soll.

von Stefan F. (Gast)


Lesenswert?

Arduino ist einfach nur furchtbar. Schau mal auf den Bauplan unterhalb 
von "Testing ATtiny85 Blink"

https://create.arduino.cc/projecthub/arjun/programming-attiny85-with-arduino-uno-afb829

Die sollten sich echt schämen, so etwas zu veröffentlichen.

von nichso einfach (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Die sollten sich echt schämen, so etwas zu veröffentlichen.

So ist es. Heute kann jeder einfach alles veröffentlichen.
Und es ist ja auch alles technisch völlig korrekt, da es
ja im Internet steht.

von Stefan F. (Gast)


Lesenswert?

Jeder macht mal Fehler. Aber eine Firma, die damit ihr Geld verdient, 
sollte die Beiträge prüfen und korrigieren.

Beitrag #6493494 wurde von einem Moderator gelöscht.
Beitrag #6493496 wurde von einem Moderator gelöscht.
Beitrag #6493506 wurde von einem Moderator gelöscht.
Beitrag #6493513 wurde von einem Moderator gelöscht.
von Ein Freund (Gast)


Lesenswert?

Svenska M. schrieb:
> pinMode(buttonPin, INPUT);

Google mal nach "floating Input"

Das würde helfen:

pinMode(buttonPin, INPUT_PULLUP);

wenn Du (später) nach "low" schalten willst.

Beitrag #6493520 wurde von einem Moderator gelöscht.
von Svenska M. (svenskas)


Lesenswert?

Danke für die Beiträge! Habe mir entsprechende 100nF 
Keramikkondensatoren bestellt, da ich nur Elkos und kleinere Keramik im 
pF-Bereich hier habe...

Da hab ich nicht drüber nachgedacht. Und dass die Arduino Doku relativ 
schlecht ist, wenn es um solche "Nebensächlichkeiten" geht, kann ich mir 
gut vorstellen :D

von Stefan F. (Gast)


Lesenswert?

Svenska M. schrieb:
> Und dass die Arduino Doku relativ schlecht ist

Die schlechte Seite kommt von einem Arduino Nutzer. Er hat seine 
Anleitung auf der Arduino.cc Seite präsentiert.

Die Seite von Arduino selbst stellt es richtig dar:

https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink

Das ist übrigens das erste Beispielprogramm mit dem man beginnen sollte. 
keine Ahnung warum die das nicht nach ganz oben positioniert haben.

Beitrag #6493583 wurde von einem Moderator gelöscht.
von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Gustl B. schrieb:
> 20 MB Anhang? Krasse Verschwendung.

Hi,
erst in mp4 konvertieren, dann hochladen.
Mein persönliches Limit ist 1 MB.
Aber es geht auch mit noch weniger:
Beitrag "Re: LED Nachtlicht optimieren"

ciao
gustav

: Bearbeitet durch User
von my2ct (Gast)


Lesenswert?

Svenska M. schrieb:
> IMG_9164.mov (20,7 MB, 25 Downloads)

Für den gleichen Informationsgehalt hättest du auch einen Schaltplan und 
einen ScreenShot vom Oszi mit zusammen 1/500 der Datenmenge hochladen 
können.

Schwachsinns "Katzenvideo"

Beitrag #6493727 wurde von einem Moderator gelöscht.
von Peter D. (peda)


Lesenswert?

Svenska M. schrieb:
> Ich klopfe mit den Fingern auf das
> Breadboard, die LED flimmert.

Das ist korrekt, Du koppelst 50Hz in den floatenden Eingang. Will man 
einen Eingang auswerten, darf man ihn nicht floaten lassen.

von Uwe K. (ukhl)


Lesenswert?

Gustl B. schrieb:
> Mach da Pullups oder Pulldowns dran und alles ist OK.

Richtige Antwort.

Wenn man der armen LED noch einen Vorwiderstand verpasst, ein Pullup am 
Reset und ein Abblockkondensator zweischen Vcc und GND, gucken wir uns 
das nochmal an.

von Mike J. (emjey)


Lesenswert?

Probiere es mal hiermit:

const int buttonPin = 4;
const int ledPin = 3;

void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);

pinMode(buttonPin, INPUT);
digitalWrite(buttonPin, HIGH); // PullUp setzen
}

void loop() {
if (digitalRead(buttonPin) == HIGH ) {
 digitalWrite(ledPin, HIGH);
 } else {
  digitalWrite(ledPin, LOW);
 }
}

Wenn der Pin hochohmig ist, dann reicht eine kapazitive Kopplung mit 
irgend einem Teil der Schaltung um ihn über den anliegenden 
Spannungspegel genügend stark zu verändern.

von Joachim B. (jar)


Lesenswert?

Christian H. schrieb:
> Ein Breadboard besteht aus tausenden kleinen Federkontakten. Diese
> wirken auf Fallenlassen wie tausende kleine Taster. Auch
> Übergangswiderstände und lange Leitungen als Antenne spielen hier eine
> Rolle. Es wäre eher merkwürdig, wenn diese Effekte bei eine Breadboard
> nicht auftreten.

deswegen braucht man auch da eine Entprellroutine.
https://www.mikrocontroller.net/articles/Entprellung

Ob nun Tastenprellen oder die Federkontakte prellen ist doch egal!
Dazu noch fehlender Abblockkondensator und kein definierter Tastenstrom 
der sich durch externe Einflüsse nicht stören lässt.

Mit 20mA wurde früher störungsfrei über Kilometer Telefon übertragen, 
mit weniger als µA stört doch jeder elektrische Huster in der Leitung.

: Bearbeitet durch User
von Chris T. (Gast)


Lesenswert?

Ich hab hier mal mitgelesen und bin jetzt verwirrt: Ich habe verstanden, 
dass ich einen Koppel-C an der Spannungsversorgung brauche. Nochmal kurz 
gegoogelt, ich habe mir jetzt gemerkt, für Schaltungen in diesem Umfeld 
sollte 100nF Keramik okay sein - einfach zwischen GND und Vcc.

Aber, was ich noch herausgelesen habe:

Muss ich tatsächlich jeden nicht genutzten Eingang mittels Widerstand 
(10K) auf GND setzen? Weil die sonst floaten, also einen unbestimmten 
Zustand annehmen und merkwürdiges Verhalten erzeugen?

Jeder Taster muss "entprellt" werden?

Grüße

von Peter D. (peda)


Lesenswert?

Chris T. schrieb:
> Muss ich tatsächlich jeden nicht genutzten Eingang mittels Widerstand
> (10K) auf GND setzen?

Nö, wenn er wirklich unbenutzt ist.
Allerdings kann die Stromaufnahme erhöht sein, daher ist ein gültiger 
Logikpegel (Ausgang, Pullup oder externer Anschluß) sinnvoll.

Chris T. schrieb:
> Jeder Taster muss "entprellt" werden?

Nun, es macht die Programmierung, Debuggen, Wartung, Erweiterung 
deutlich einfacher und das Programm zuverlässiger. Müssen muß aber 
niemand.

Programme, wo die Entprellung mit in die Funktion hinein verwebt ist, 
sind oft schwer zu durchschauen und daher anfällig für 
Programmierfehler.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Chris T. schrieb:
> Muss ich tatsächlich jeden nicht genutzten Eingang mittels Widerstand
> (10K) auf GND setzen? Weil die sonst floaten, also einen unbestimmten
> Zustand annehmen und merkwürdiges Verhalten erzeugen?

Benutze Eingänge müssen auf jeden Fall klar definierte Pegel haben.

Die anderen neigen zu erhöhter Stromaufnahme, wenn sie irgendwo zwischen 
High und Low herum gammeln. Zudem werden sie leicht durch Radiowellen 
dazu angeregt, mit zu schwingen, was auch die Stromaufnahme erhöht.

Es gab früher mal Chips, die davon kaputt gehen konnten (gibt es die 
immer noch? keine Ahnung). AVR sind nicht so empfindlich. Aber wenn du 
Langzeit-Betrieb an Batterien anstrebst, solltest du den Effekt 
berücksichtigen.

von Chris T. (Gast)


Lesenswert?

Und kann ich die ungenutzten Pins einfach parallel schalten und dann 
alle zusammen an einen Widerstand an GND? Oder muss da jeder Pin für 
sich behandelt werden? Da siebja ungenutzt sind, dürfte parallel 
schalten doch kein Problem darstellen?

Lg

von Stefan F. (Gast)


Lesenswert?

Chris T. schrieb:
> Und kann ich die ungenutzten Pins einfach parallel schalten und dann
> alle zusammen an einen Widerstand an GND?

ja. Aber wenn sie parallel geschaltet sind, kann man durch falsches 
Programmieren einen Kurzschluss auslösen. Dagegen schützt ein 
gemeinsamer Widerstand nicht. Falls du den Schutz überhaupt haben 
willst.

Einfacher wäre, die internen Pull-Up Widerstände einzuschalten. Das 
reicht auch.

von Einer K. (Gast)


Lesenswert?

Chris T. schrieb:
> Und kann ich die ungenutzten Pins einfach parallel schalten und dann
> alle zusammen an einen Widerstand an GND?
Nein, das ist nicht "fail save".
Oder bist du der perfekte Programmierer?

Stefan ⛄ F. schrieb:
> Einfacher wäre, die internen Pull-Up Widerstände einzuschalten.
Ja.

von Chris T. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Chris T. schrieb:
> Und kann ich die ungenutzten Pins einfach parallel schalten und dann
> alle zusammen an einen Widerstand an GND?
>
> Nein, das ist nicht "fail save".
> Oder bist du der perfekte Programmierer?
>
> Stefan ⛄ F. schrieb:
> Einfacher wäre, die internen Pull-Up Widerstände einzuschalten.
>
> Ja.

Also auf INPUT_PULLUP zu setzen? Das hab ich gerade ausgetestet und sie 
reagieren immer noch auf meine „Anwesenheit“ - zb geht die LED an, wenn 
ich mit dir Hand drüberfahre ohne sie zu berühren. Normalerweise würde 
ich mich über solche Fähigkeiten freuen :D gut, mein Attiny ist auch 
immer noch mit dem Arduino verbunden, und der mit dem Rechner. Wird 
sicher auch viele Störungen reinbringen.

von Sven K. (quotschmacher)


Lesenswert?

Mike J. schrieb:
> pinMode(buttonPin, INPUT);
> digitalWrite(buttonPin, HIGH); // PullUp setzen

eben dafür gibt es ja
1
pinMode(buttonPin, INPUT_PULLUP);

von Soul E. (Gast)


Lesenswert?

Chris T. schrieb:

> Muss ich tatsächlich jeden nicht genutzten Eingang mittels Widerstand
> (10K) auf GND setzen? Weil die sonst floaten, also einen unbestimmten
> Zustand annehmen und merkwürdiges Verhalten erzeugen?

Ja. Auf Low oder High setzen, wie es Deine Anwendung erfordert.

Das gilt auch für die restlichen Pins des Controllers. Nur weil Du die 
nicht benutzt heisst das nicht dass sie einfach unbeschaltet bleiben 
dürfen. Unbenutzte Pins kann man auf output low setzen, oder auf Eingang 
schalten und den internen Pullup aktivieren.

von Peter D. (peda)


Lesenswert?

Chris T. schrieb:
> Also auf INPUT_PULLUP zu setzen? Das hab ich gerade ausgetestet und sie
> reagieren immer noch auf meine „Anwesenheit“

Dann zeigt doch endlich mal den Schaltplan und das echte Programm.

von Ein Freund (Gast)


Lesenswert?

Das sagt die Dokumentation:

If the input buffer is enabled and the input signal is left floating or 
has an
analog signal level close to VCC/2, the input buffer will use excessive 
power.
For analog input pins, the digital input buffer should be disabled at 
all times.
An analog signal level close to VCC/2 on an input pin can cause 
significant current even in active mode.

*Digital input buffers can be disabled by writing to the Digital Input 
Disable Register (DIDR0)*.

von Spess53 (Gast)


Lesenswert?

Hi

>Nur weil Du die
>nicht benutzt heisst das nicht dass sie einfach unbeschaltet bleiben
>dürfen.

Das stimmt so nicht. Auf die Funktinalität der Pins hat das keinen 
Einfluss. Lediglich, wie hier im Forum vor >10 Jahren mal  jemand 
gemessen hat, nimmt die Stromaufname ein paar µA pro offenen Pin zu.

MfG Spess

von Karl B. (gustav)


Lesenswert?

Spess53 schrieb:
> Das stimmt so nicht.

Hi,
ja, die Sache mit den LCDs.
Es ging hier um ATMEL AVRs.
Nach Reset stehen die Pins auf der default function
https://www.avrfreaks.net/forum/default-state-unconnected-pins-and-io-pins

ciao
gustav

von Spess53 (Gast)


Lesenswert?

Hi

>ja, die Sache mit den LCDs.
Welche Sache mit LCDs?

>Es ging hier um ATMEL AVRs.
Ich habe auch von AVRs geredet.

>Nach Reset stehen die Pins auf der default function...
Ist mir seit langem bekannt.

Was ich damit sagen will ist: Offene, floatende Pins erzeugen keine 
Fehlfuntionen bei AVRs.

Fehlerhafte Software dagegen schon.

MfG Spess

von Joachim B. (jar)


Lesenswert?

Spess53 schrieb:
> Was ich damit sagen will ist: Offene, floatende Pins erzeugen keine
> Fehlfuntionen bei AVRs.

na ja, floatene Pins erzeugen schon erhöhten Strombedarf und in 
Verbindung mit ungenügender Speisung evtl. noch ohne Abblockkondensator 
kann das zum Absturz führen.

von Stefan F. (Gast)


Lesenswert?

Joachim B. schrieb:
> na ja, floatene Pins erzeugen schon erhöhten Strombedarf und in
> Verbindung mit ungenügender Speisung evtl. noch ohne Abblockkondensator
> kann das zum Absturz führen.

Die Spannungsversorgung muss ohnehin in Ordnung sein. Wenn sie nicht OK 
sind, dann lösen auch die Mondphasen und die Laune meiner Katze 
Fehlfunktionen aus.

Das was Atmel in seinem Datenblatt "excessive Current" nennt, sind in 
der Praxis weniger als 1mA bei 20 offenen Pins.

von Joachim B. (jar)


Lesenswert?

Stefan ⛄ F. schrieb:
> Die Spannungsversorgung muss ohnehin in Ordnung sein.

hatten wir schon, aber der TO fragte mit seinem Aufbau und da waren alle 
einig das der nicht OK ist.

von Soul E. (Gast)


Lesenswert?

Spess53 schrieb:

> Was ich damit sagen will ist: Offene, floatende Pins erzeugen *keine*
> Fehlfuntionen bei AVRs.

Offene Pins führen zu Ruhestromerhöhung. Das können bis zu 500 µA pro 
Pin sein, und der genaue Wert hängt vom Wetter und der Mondphase ab. 
Daher gehören Pins immer auf einen festen Pegel. Oder halt "deaktiviert" 
(bei S32K etc), was faktisch das gleiche ist.

von Peter D. (peda)


Lesenswert?

Soul E. schrieb:
> Offene Pins führen zu Ruhestromerhöhung. Das können bis zu 500 µA pro
> Pin sein

Das wären dann beim ATmega2560 bis zu 43mA zusätzlich (86 IOs).
Bei einem Eigenverbrauch von 1,7mA (1MHz/5V/active) ist das erheblich.

: Bearbeitet durch User
von Karl B. (gustav)


Lesenswert?

Spess53 schrieb:
> Was ich damit sagen will ist: Offene, floatende Pins erzeugen keine
> Fehlfuntionen bei AVRs.

Das ist einfach nur noch bedauerlich, wie Leute von ihrer vorgefassten 
Meinung einfach nicht abrücken wollen.
Man kann @Spess53 Behauptung durch Experiment ganz leicht widerlegen.
Wenn er anderer Meinung ist, kann er durch Gegenexperiment vielleicht 
seine Ergebnisse hier posten.
Das sollte auch noch berücksichtigt werden:
Offene Eingänge fangen sich heutzutage gerne je nach Verdrahtung ganz 
gehörig HF-Schmutz ein.

Fazit: Ein ordnungsgemäßer Abschluss von Pins wird nie schaden.
Offengelassene Pins dagegen schon.

ciao
gustav

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Karl B. schrieb:
> Offene Eingänge fangen sich heutzutage gerne je nach Verdrahtung ganz
> gehörig HF-Schmutz ein.

Ja, und wenn das passiert nehmen sie noch mehr Strom auf, als aufgrund 
des ungültigen Pegels bei DC. Kaputt geht davon allerdings nichts.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Karl B. schrieb:
> Fazit: Ein ordnungsgemäßer Abschluss von Pins wird nie schaden.

Viel zu viel Arbeit für unbenutzte Pins. Diese einfach auf Output setzen 
oder auf Input mit Pullup. Schon floaten sie nicht mehr.

Spart auf jeden Fall Kabel.

von Spess53 (Gast)


Lesenswert?

Hi

>Das was Atmel in seinem Datenblatt "excessive Current" nennt, sind in
>der Praxis weniger als 1mA bei 20 offenen Pins.

> Offene Pins führen zu Ruhestromerhöhung. Das können bis zu 500 µA pro
> Pin sein

Wer bietet mehr?

>Das ist einfach nur noch bedauerlich, wie Leute von ihrer vorgefassten
>Meinung einfach nicht abrücken wollen.

Und stell dir noch vor, ich benutze auch generell keinen Watchdog.

Diese 'vorgefasste Meinung' resultiert aus über 20 Jahren erfolgreicher 
beruflicher Progammierung von AVRs. Und es funktioniert absolut 
problemlos.

>Man kann @Spess53 Behauptung durch Experiment ganz leicht widerlegen.

Na mach mal.

>Offene Eingänge fangen sich heutzutage gerne je nach Verdrahtung ganz
>gehörig HF-Schmutz ein.

Ja. Früher war alles besser.

MfG Spess

von Chris T. (Gast)


Lesenswert?

Ihr machts einem Einsteiger wirklich nicht leicht... darf man sich eine 
Meinung aussuchen? ;-) vielen Dank euch!

von Spess53 (Gast)


Lesenswert?

Hi

>darf man sich eine Meinung aussuchen? ;-)

Klar doch. Wenn du genau weißt was machst. Wenn nicht mach es wie die 
Übervorsichtigen. Wenn das funktioniert kannst du ja meine Variante 
testen.

MfG Spess

von Andi (Gast)


Lesenswert?

Chris T. schrieb:
> Ihr machts einem Einsteiger wirklich nicht leicht... darf man sich
> eine
> Meinung aussuchen? ;-)

Kannst du natürlich.
Du hast Hinweise gekriegt dass gewisse Einstellungen/Versäumnisse 
unangenehme Nebeneffekte haben können.
'Können' wohlgemerkt.
Die Entscheidung wie du als Einsteiger damit umgehst ist einzig und 
alleine dir überlassen.
Du kannst sagen: ok, merk ich mir, mach ich so.
Oder: Sch*** drauf, bei AVR funktionierts so schon seit 20 Jahren hat 
der xyz aus dem Forum gesagt.

Ich kann dir also nicht sagen wie du mit den Informationen umgehen 
sollst.

Aber was ich dir sagen kann: Es gibt in dieser Welt auch noch was 
anderes ausser AVR und vor allem gibt es Projekte wo dir bei diesen 
'unnötigen kleinen' Schwankungen an VCC der Projektleiter das Ganze um 
die Ohren haut.

Und @Spess:
>> Offene Eingänge fangen sich heutzutage gerne je nach Verdrahtung ganz
>> gehörig HF-Schmutz ein.

> Ja. Früher war alles besser.
Ja, war es tatsächlich, zumindest in dieser Hinsicht.
Hat aber was mit Strukturgrössen und physikalischen Gegebenheiten zu 
tun.
Sich damit zu beschäftigen ist aber nicht jedermanns Sache...

von Spess53 (Gast)


Lesenswert?

Hi

>Hat aber was mit Strukturgrössen und physikalischen Gegebenheiten zu
>tun.

Wir reden aber immer noch über AVRs?

MfG Spess

von Andi (Gast)


Lesenswert?

Spess53 schrieb:
>>Hat aber was mit Strukturgrössen und physikalischen Gegebenheiten zu
>>tun.
>
> Wir reden aber immer noch über AVRs?

Nicht unbedingt, ich habe ja geschrieben dass es auch noch was anderes 
da draußen gibt.

Aber: Weißt du in welchen Strukturgrößen die AVRs heute bzw. vor >10j 
produziert wurden?
Ob und welche Optimierungen an den IOs vorgenommen wurden?

Ich nicht, deswegen würde ich derartige Hinweise in den Datenblättern 
nicht einfach so zur Seite wischen.
"Pfa, hat bei mir immer schon funktioniert"
Sorry, aber das ist schlicht und einfach Pfusch...

von Spess53 (Gast)


Lesenswert?

Hi

>Aber: Weißt du in welchen Strukturgrößen die AVRs heute bzw. vor >10j
>produziert wurden?

Nein. Ich habe aber schon mit AVRs die >20 Jahre ( ATMega103) alt sind 
gearbeitet. Und ich kenne auch die Nachfolgetypen ATMega128 und 
ATMega1281 aus eigener Erfahrung.

>Ich nicht, deswegen würde ich derartige Hinweise in den Datenblättern
>nicht einfach so zur Seite wischen.

Dazu gibt es in den Datenblättern keine Hinweise. Und in den neueren 
Datenblättern von Microchip noch nicht mal den  (Atmel) Hinweis  über 
die Behandlung von 'Unconnected Pins. Möglicher Weise gilt das garnicht 
mehr.

MfG Spess

von Soul E. (Gast)


Lesenswert?

Pins offenlassen klappt dann, wenn der Leckstrom so ausgeprägt ist dass 
der Pin eindeutlig in Richtung High oder Low gezogen wird. Ein 
klassisches Beispiel ist die alte 74LS-TTL-Technik, da bilden offene 
Pins immer einen sauberen High-Pegel aus.

Guter Stil ist es trotzdem nicht, und es dürfte in jedem Review für 
Diskussionen sorgen. Wie das GOTO und Magic Numbers -- der Code 
funktioniert 1a, aber man lernt dadurch ständig neue Leute kennen. Als 
Bastler kann man tun und lassen was man will. Aber viele machen ihr 
Hobby irgendwann man zum Beruf, und dann schadet es nicht sich sowas 
gleich richtig anzugewöhnen.

von Joachim B. (jar)


Lesenswert?

Spess53 schrieb:
> Und in den neueren
> Datenblättern von Microchip noch nicht mal den  (Atmel) Hinweis  über
> die Behandlung von 'Unconnected Pins. Möglicher Weise gilt das garnicht
> mehr.

es gibt fehlerhafte Datenblätter!
Es gab und gibt in AVR Datenblätter C&P Fehler, wurde hier schon öfter 
festgestellt und diskutiert!
Gefühlt ist es seit der Übernahme durch Microchip schlimmer geworden!
Fertigungsprozesse ändern sich auch über 20 Jahre, du glaubst doch nicht 
das die immer noch in großen Strukturen fertigen wenn die Ausbeute mit 
Kleineren mehr Chips auswirft! Somit ändern sich auch mal Daten was 
nicht immer aktualisiert wird im DB. BWL sei Dank!

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Joachim B. schrieb:
> Gefühlt ist es seit der Übernahme durch Microchip schlimmer geworden!

Ja.

Ich habe mir von den Chips, die mich interessieren, die jeweils letzte 
Version von Atmel gesichert und benutze nur noch diese.

von Ein Freund (Gast)


Lesenswert?

Spess53 schrieb:
> Dazu gibt es in den Datenblättern keine Hinweise. Und in den neueren
> Datenblättern von Microchip noch nicht mal den  (Atmel) Hinweis  über
> die Behandlung von 'Unconnected Pins. Möglicher Weise gilt das garnicht
> mehr.

Möglicherweise aber doch (siehe mein Zitat):

http://ww1.microchip.com/downloads/en/devicedoc/doc8126.pdf

7.4.6 2ter Absatz

insbesondere 10.2.6

If some pins are unused, it is recommended to ensure that these pins 
have a defined level. Even
though most of the digital inputs are disabled in the deep sleep modes 
as described above, floating
inputs should be avoided to reduce current consumption in all other 
modes where the digital
inputs are enabled (Reset, Active mode and Idle mode).

von Spess53 (Gast)


Lesenswert?

Hi

>Möglicherweise aber doch (siehe mein Zitat):

Man. Da steht laut und deutlich ATMEL drauf.

Mit neuer meinte ich meinte so etwas wie AVR128, ATTiny0/1 -Series...

MfG Spess

von Wolfgang (Gast)


Lesenswert?

Soul E. schrieb:
> Pins offenlassen klappt dann, wenn der Leckstrom so ausgeprägt ist dass
> der Pin eindeutlig in Richtung High oder Low gezogen wird. Ein
> klassisches Beispiel ist die alte 74LS-TTL-Technik, da bilden offene
> Pins immer einen sauberen High-Pegel aus.

Das hat aber nichts mit Leckstrom, sondern mit Schaltungstechnik zu tun.

von Ein Freund (Gast)


Lesenswert?

Spess53 schrieb:
> Mit neuer meinte ich meinte so etwas wie AVR128, ATTiny0/1 -Series..

Wir reden/schreiben hier über den ATTiny13A - schon vergessen?

Außerdem schreibst Du von

Spess53 schrieb:
> Und in den neueren
> Datenblättern von Microchip noch nicht mal den  (Atmel) Hinweis  über
> die Behandlung von 'Unconnected Pins.

"neueren Datenblättern" und nichts von "neueren Prozessoren".

von Spess53 (Gast)


Lesenswert?

Hi

>Wir reden/schreiben hier über den ATTiny13A

Nein. Das hast du verpasst.

MfG Spess

von Ein Freund (Gast)


Lesenswert?

Spess53 schrieb:
> Nein. Das hast du verpasst.

Ist mir zu blöd - aber wenn Du Deine Familie noch erkennst ist alles O.K 
:-)

von Spess53 (Gast)


Lesenswert?

Hi

>Ist mir zu blöd - aber wenn Du Deine Familie noch erkennst ist alles O.K

Ja, du mich auch.

MfG Spess

von Mike J. (emjey)


Lesenswert?

Die PullUps zu aktivieren kostet doch nichts und war für den TO auch 
leicht zu bewerkstelligen. Sein Fehler wird dadurch gelöst sein.

von Einer K. (Gast)


Lesenswert?

Mike J. schrieb:
> Die PullUps zu aktivieren kostet doch nichts und war für den TO
> auch
> leicht zu bewerkstelligen. Sein Fehler wird dadurch gelöst sein.

Hat ihm gemacht, ihm sacht.

Chris T. schrieb:
> Also auf INPUT_PULLUP zu setzen? Das hab ich gerade ausgetestet und sie
> reagieren immer noch auf meine „Anwesenheit“ - zb geht die LED an, wenn
> ich mit dir Hand drüberfahre ohne sie zu berühren.

von Mike J. (emjey)


Lesenswert?

Also das kann ich mir echt nicht vorstellen. Das lag bestimmt an etwas 
anderem und jetzt ist es ihm peinlich das zuzugeben. Naja, als Anfänger 
macht man nun mal Fehler, ist ja auch nicht schlimm.

von Chris T. (Gast)


Lesenswert?

Hallo ihr,

das Problem war erst gelöst, als ich den Pin, mit dem der Taster 
verbunden werden soll, über einen Widerstand auf GND gesetzt habe.

Auf INPUT_PULLUP zu setzen, war nicht die Lösung... naja jetzt läuft er 
stabil. Also Koppelkondensator und der Widerstand am genutzten Pin.

Lg

von Ein Freund (Gast)


Lesenswert?

Chris T. schrieb:
> Auf INPUT_PULLUP zu setzen, war nicht die Lösung... naja jetzt läuft er
> stabil. Also Koppelkondensator und der Widerstand am genutzten Pin.

Blubb :-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.