Zum Thema Schaltplan. Ein unbeschalteter Reset Pin ist auch nicht gut. Der muss mit 10 kOhm auf VCC gelegt werden.
Zum Thema Schaltplan. Ein unbeschalteter Reset Pin ist auch nicht gut. Der muss mit 10 kOhm auf VCC gelegt werden.
Hallo shepede,
Led Blinken ging. Fader nicht. Also kein PWM. Danke für den Tipp.
Ich habe schon Verständnisprobleme mit dem Arduino Kochbuch(leider).
Aber ich lese mir das durch.
Danke für den Hinweis mit den 10K auf VCC. Habe ich natürlich nicht.
Hallo Bernhard,
danke, das ist ein guter Tipp. Eigentlich logisch.
Dankeschön
Achim
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)
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
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:
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.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.
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.
Ansonsten man lernt ja stetig dazu. Braucht zwar etwas Zeit bis etwas dann geht, aber gehtIch hab auch Ewigkeiten mit ziemlich einfachen Dingen verbracht (Wie z.B. Fuses setzen).
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:
Das Rechtecksignal ist schön steil. 1.07 bis 1,89 mSec.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.... } }
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
Lesezeichen