mt772
September 12, 2016, 5:53am
1
Guten Morgen,
ich habe ein kleines einen auf UNO und Nano getesteten CODE auf einem Digispark Attiny85 Board zum laufen zu bringen.
Leider habe ich für das Projekt nicht soviel Platz und die Platine drum rum ist auch schon geätzt.
Der Code wurde mit IDE über Micronucleus Programmer ohne Fehlermeldung Hochgeladen.
Hat jemand eine Idee. Werde gleich nochmal versuchen den Code hier hochzuladen.
mt772
September 12, 2016, 6:21am
2
Hier der Code,
Wie gesagt, alles läuft prima auf Uno und nano.
flkp_flop_trigger.ino (3.51 KB)
flkp_flop_trigger.ino (3.51 KB)
ardubu
September 12, 2016, 7:36am
3
ich kenne mich mit dem Digispark zwar nicht aus, aber auf dem ATtiny85 läuft kein Serial und der Physische Pin1 wird für Reset benutzt.
Und den Code solltest du nicht als Anhang, sondern in codetags direkt hochladen.
mt772
September 12, 2016, 8:33am
4
Danke für die schnelle Antwort.
Serial war nur zu Testzwecken, kann raus. habe ich vergessen im Setup zu löschen.
gem. Unterlagen sind P0 bis P05 alle als Digital IN/OUT nutzbar.
mt772:
gem. Unterlagen sind P0 bis P05 alle als Digital IN/OUT nutzbar.
Ich kenne den DigisparkAttiny85 nicht, aber beim Attiny85 ist der (Pin1) D5 normal als Reset eingerichtet.
Das hatte ardubu ja auch schon geschrieben.
Erst wenn du die Fuses entsprechend setzt, kann der D5 als digitaler Pin genutzt werden.
Danach geht allerdings der Reset nicht mehr.
Prüfe doch mal mit einem einfachen Sketch, ob der D5 tatsächlich als digitaler geeignet ist.
mt772
September 12, 2016, 8:55am
6
Googlesagt: "Digispark ATtiny85 boards come with the Micronucleus bootloader and with the reset pin
disabled. When reset is disabled you get an additional digital pin"
werde mal einen blink sketch oder ähnliches testen.
mt772:
Googlesagt: "Digispark ATtiny85 boards come with the Micronucleus bootloader and with the reset pin
disabled. When reset is disabled you get an additional digital pin"
werde mal einen blink sketch oder ähnliches testen.
Ok, das ist mal eine deutliche Aussage.
Leider stimmen die Aussagen nicht immer.
Dann sollte es funktionieren, auf das Testergebnis bin ich gespannt.
Edit:
Du hast die Pins mehrfach definiert. Sollte zwar hier kein Problem sein, ist aber sehr unübersichtlich.
mt772
September 12, 2016, 10:11am
8
bin noch Anfänger und ich habe den sketch mit ardublock erstellt. Das hier macht ja eigentlich keinen Sinn:
erst
void setup()
{
pinMode( 0, INPUT);
pinMode( 1, INPUT);
pinMode( 2, INPUT);
pinMode( 4, INPUT);
pinMode( 5, INPUT);
dann
pinMode( 3 , OUTPUT);
pinMode( 4 , OUTPUT);
pinMode( 5 , OUTPUT);
eigentlich sind
P0 - P2 DigIn 0 set / 1 rücksetzen / 2 arm
P3 - P5 DigOut 3 LED GN / 4 LED RT Flip / 5 LED RT Flop
raus kann eigentlich:
#define ledPin 5
#define buttonPin 0
int value = LOW;
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
digitalWrite(buttonPin, HIGH);
Ich werde mal schauen ob ich auf meinen Minitablet hier testen kann.
mt772:
bin noch Anfänger und ich habe den sketch mit ardublock erstellt. Das hier macht ja eigentlich keinen Sinn:
Ardublock kenne ich nicht, habe aber schon öfter gelesen, das da ziemlicher Mist erzeugt wird.
erst
void setup()
{
pinMode( 0, INPUT);
pinMode( 1, INPUT);
pinMode( 2, INPUT);
pinMode( 4, INPUT);
pinMode( 5, INPUT);
dann
pinMode( 3 , OUTPUT);
pinMode( 4 , OUTPUT);
pinMode( 5 , OUTPUT);
Hier reicht:
void setup()
{
pinMode( 0, INPUT);
pinMode( 1, INPUT);
pinMode( 2, INPUT);
pinMode( 3 , OUTPUT);
pinMode( 4 , OUTPUT);
pinMode( 5 , OUTPUT);
}
Die Inputs kannst du auch mit "INPUT_PULLUP" optimieren, dann braucht es keinen externen Pullup-Widerstand.
raus kann eigentlich:
#define ledPin 5
#define buttonPin 0
int value = LOW;
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
digitalWrite(buttonPin, HIGH);
Obiges kann entfallen.
mt772
September 13, 2016, 5:55am
10
ich habe es gestern hinbekommen.
Erst mal habe ich den Sketch gekürzt.
Jetzt habe ich nur noch das Problem, das der Attiny85 stoppt sobald ich P5 als Digital Output mit einer LED mit 560 Ohm Vorwiderstand belaste.
Mein Problem ist leider das ich drei Eingänge für die Taster und drei Ausgänge für die LEDs brauche.
Werde noch ein bisschen im Netz stöbern.
Dann nimm doch P5 mal als Eingang. Im Sketch definieren nicht vergessen.
mt772
September 13, 2016, 6:21am
12
dann muss ich mein Board ändern.
werde ich aber mal testen.
mt772:
dann muss ich mein Board ändern.
werde ich aber mal testen
Das ist aber besser als keine Funktion.
mt772
September 14, 2016, 7:52am
14
Leider hatte ich gestern nicht so viel Zeit wie gedacht,
aber es sieht für mich gerade so aus als wenn die internen PullUpWiderstände beim Digispark Attiny85 nicht verfügbar sind.
Habe mit 10K extern getestet und die digital in zumindest an den getesteten Ports funktionieren.
mt772:
aber es sieht für mich gerade so aus als wenn die internen PullUpWiderstände beim Digispark Attiny85 nicht verfügbar sind.
Du hast doch in deinem Sketch keine Pullups definiert.
Das muss dann so aussehen:
pinMode(0, INPUT_PULLUP);
mt772
September 14, 2016, 9:51am
16
hatte ich zwischenzeitlich, mit dem Nano hat es super funktioniert.