- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 10 von 36

Thema: Fehler im Sketch für ATtiny?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.04.2008
    Beiträge
    282
    Der Code ist auch etwas optimierungsbedürftig. Nehmen wir mal an, VAL hat einen Wert von 200. Dann spring er im ersten IF in den Else-Zweig und gibt eine Soll-Position von 90 vor .... nur um dann im zweiten IF in den True Zweig zu springen und dann wird 150 als Sollposition ausgegeben. Das kann man zwar so machen, hat aber nichts mit sauberer und aufgeräumter Programmierung zu tun. Besser wäre her eine Switch Funktion.

    Auch auf Delay sollte man eigentlich verzichten, wo immer möglich.
    Geändert von redround (16.10.2016 um 19:30 Uhr)

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    27.02.2012
    Ort
    50KM über Hamburg
    Beiträge
    128
    Hallo redround,
    du hast recht. Aber wenn nicht mehr im Sketch gemacht werden soll?
    Ich bin froh, dass ich das überhaupt hinbekam.
    Am liebsten bau ich blödsinnige "Roboter".(Mechanik) Viel Spaß hatte ich immer mit Logikgattern. Aber da ich dummerweise bei einem mit dem Platz nicht hinkam, hoffte ich auf den ATtiny 85.
    Aber dieses IC kriege ich nicht zum laufen.
    Bin mir noch nicht mal sicher, ob der ATtiny jetzt wirklich mit 8MHz läuft, oder nur 1 MHz schnell ist und somit kein PWM kann.
    Aber der Winter fängt ja erst noch an.
    Programmieren ist eine meiner ultra dunklen Unmöglichkeitsseiten, leider.

    Achim

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.04.2008
    Beiträge
    282
    Im "Auslieferungszustand" läuft er zwar mit 8 MHz allerdings ist auch die CKDIV8 Fuse gesetzt, so dass der interne Pre-Scaler zuschlägt und ihn auf 1 MHz "bremst". Auszug aus dem Datenblatt:

    The device is shipped with CKSEL = “0010”, SUT = “10”, and CKDIV8 programmed. The default clock source setting is therefore the Internal RC Oscillator running at 8 MHz with longest start-up time and an initial system clock prescaling of 8, resulting in 1.0 MHz system clock. This default setting ensures that all users can make their desired clock source setting using an In-System or High-voltage Programmer.
    Vielleicht solltest Du Dich mit jemandem zusammen tun, der lieber programmiert - und das meine ich wirklich nicht böse. Zusammen macht es a) mehr Spaß und b) kann man sich spezialisieren.

    Für PWM spielt das aber nur bedingt eine Rolle. Das geht mit 1 MHz genauso gut wie mit 8 MHz ... nur das Timing ist halt etwas anders.

  4. #4
    shedepe
    Gast
    Ansonsten man lernt ja stetig dazu. Braucht zwar etwas Zeit bis etwas dann geht, aber geht Ich hab auch Ewigkeiten mit ziemlich einfachen Dingen verbracht (Wie z.B. Fuses setzen).

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    27.02.2012
    Ort
    50KM über Hamburg
    Beiträge
    128
    Danke für das Aufmuntern.
    Der ATtiny steckt in einer Fassung, welche als Shield auf einem UNO steckt.
    Jetzt habe ich ihn nochmals an den Rechner gehängt. Alle Einstellungen nochmal geprüft.(internal 8MHz) Plötzlich und unerwartet geht der Fader sketch jetzt richtig.

    Hoffnung keimt auf!

    Bei der Arduino Library "Servo.H" definiert man das Servo als : "Servo myservo"
    dann wird das doch in der Blackbox umgesetzt, welche dann weiß: Es geht jetzt um ein Servo.

    Wie ist es denn dann bei der "Servo8bit. H"
    Welches ist das Bezugswort?
    Servo8bit myservo ?
    Das wäre doch logisch?
    Man braucht das Schlüsselwort?
    Ab dann müßte die Library doch die Befehle genauso annehmen wie die vom Arduino?

    Das mit dem Zusammensetzen geht nicht. Auch ich habe mein "Ding" weg. Ich brauche viel Ruhe, welche ich beim rumpfriemeln im abgeschirmten Keller finde.

    Der ATtiny fasziniert mich sehr. Leider fand ich keine Anleitung(Buch) darüber. Über die Logikgatter findet man jede Menge. Außerdem sind sie mit Logik zu begreifen. Der Zugang zum Arduino fehlt mir noch.
    Heute hatte ich das Buch von Herrn Bartmann in der Hand. Der ATtiny wird in diesem Wälzer nur einmal mit Passbild erwähnt.
    Im Arduino Kochbuch nicht einmal das.
    Die einfachen Programme laufen mit den Arduino Befehlen.
    Nur eben die Servosache noch nicht.
    Also Suche ich zwar nicht das Zauberwort:"BITTE" aber schon ein Passendes.

    Achim

    - - - Aktualisiert - - -

    Ich habe was gefunden:

    Code:
    #include <SoftwareServo.h>
    
    SoftwareServo servo;
    void setup()
    {
      servo.attach(0);}
    
    void loop() {
        int pos;
        for(pos = 30; pos < 150; pos += 1) {
            servo.write(pos);             
            delay(50);                     
            SoftwareServo::refresh();//this row....
        }
        for(pos = 150; pos>=1; pos-=1) {                               
            servo.write(pos);             
            delay(50);                     
            SoftwareServo::refresh();//This row....
        }
    }
    Das Rechtecksignal ist schön steil. 1.07 bis 1,89 mSec.
    Aber eine Periode dauert 52 mSec.
    Das Servo läuft ein bisschen wie ein Trecker
    Unter 2,6 Volt ist nicht mehr viel los.
    Aber immerhin.
    Nun versuche ich meinen Sketch umzusetzen. Natülich mit Pufferelko und 100nF.

    Achim

  6. #6
    shedepe
    Gast
    Also als erstes. Freut mich dass du das geschafft hast. Dann; Informationen zu einem Mikrocontroller findet man wie bei allen anderen Bauteilen im dazugehörigen Datenblatt (z.B. ATtiny85 http://www.atmel.com/Images/Atmel-25..._Datasheet.pdf )
    Dann zu deinem Servo8 Bit Problem. Schau dir doch das Headerfile an. Dann weißt du welche Funktionen und Datentypen es gibt. Wenn du das Headerfile nicht verstehst würde ich dir empfehlen erst mal etwas C bzw. für den Mikrocontroller https://www.mikrocontroller.net/arti...R-GCC-Tutorial zu lernen. Hilft ungemeint weiter.
    Warum du zu Arduino auf dem ATtiny nicht so viel finden wirst. Die Arduino Umgebung ist eigentlich für die Arduino Boards gedacht. Da gibt es meines Wissens nach keine die auf dem ATtiny aufbauen. Prinzipiell ist sind die ganzen Arduino Hilfsbibliotheken nichts anderes als Wrapper für die verschiedenen Funktionen des Mikrocontrollers.

    Hier ist außerdem die Github Seite zu deiner Servo8Bit Bibliothek (bzw. deren Beispiel) https://github.com/fri000/Servo8Bit/...er/example.cpp

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    27.02.2012
    Ort
    50KM über Hamburg
    Beiträge
    128
    Danke,
    das du dich damit so weit auseinandersetzt mir zu helfen.
    Von Github habe ich die Servo8Bit.
    Leider übersteigt das Ganze den mir zur Verfügung stehenden geistigen Rahmen(Lernvermögen).
    Deshalb muß ich auf flachem Nivaue bleiben.
    Ich versuche die for Schleife durch eine if Abfrage und Ausführung zu ersetzen.
    Wenn ich hier passen muß, weiche ich auf Pro Mini aus.
    Der Chip ist zwar größer, aber das Hochladen ist kein Problem.
    Dann finde ich mich damit ab, nur Benutzer zu sein.

    Also, danke für deine Zuarbeit.
    Aber du kennst ja den Spruch: "Perlen vor die Säue".
    Achim

Ähnliche Themen

  1. Digispark - Sketch hochladen
    Von Cysign im Forum Arduino -Plattform
    Antworten: 2
    Letzter Beitrag: 23.02.2016, 13:36
  2. Sketch Problem
    Von wendtdir im Forum Arduino -Plattform
    Antworten: 1
    Letzter Beitrag: 16.07.2015, 18:25
  3. Arduino Sketch serielles Terminal: erkennen von CR
    Von Ford Prefect im Forum Arduino -Plattform
    Antworten: 3
    Letzter Beitrag: 18.06.2014, 14:58
  4. frage zu sketch arduino und webserver
    Von der_tom im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 11.03.2012, 18:07
  5. Timer1 Fehler bei Attiny 25
    Von hütti im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 28.05.2007, 16:25

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen