-         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 15 von 15

Thema: Stromimpuls von 1s auf 300ms beschränken

  1. #11
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.676
    Anzeige

    .. Aber wenn die Versorgung der Trigger ist und sonst nichts da ist, würde es auf einen Boot je Vorgang hinauslaufen.
    Und das könnte dauern. Und zwar satte sechs Sekunden oder mehr - geschätzt 6 sec ±1 sec. Wieso? Darum:

    i) Vor 5 Wochen hatte ich mir mit andern Teilchen auch ein Digispark-namenlos (dies) gekauft.
    ii) gerade eben hatte ich mal mein eigenes Progrämmelchen zeitlich ausgemessen. Ein Kleinstsprogramm, siehe iii), programmiert in C.
    iii) Programmablauf: Konfiguration PortB, mein übliches "Resetblinken", d.h. 10 mal "blinzeln" = board-LED 10 ms ein, 90 ms aus, danach ein 0,5 Hz-Blink = 1 sec ein, 1 sec aus.
    iv) Das eigene Programm startet "sofort" beim Einstecken in den USB-Anschluss, sprich: sobald Power anliegt. Eine Verzögerung ist nicht erkennbar - warum auch (siehe unten).
    v) Das originale "Test"programm das mit dem Digispark geliefert wurde scheint der Bootloader zu sein. Ich hatte den sofort nach Kauf gesichert und heute wieder aufgespielt.
    vi) Allgemein: ein Bootloader wartet erfahrungsgemäss anfangs ein paar Sekunden, ob ein Programm ansteht das geladen werden muss, danach wird dieses geladenen Programm gestartet, bzw immer nach Anfang Programmspeicher (+ offset für den Boot-Sprungvektor) gesprungen. Fazit: der Controller/das Board wartet bei JEDEM PowerOn ob etwas zum Flashen per USB ansteht eine gewisse Zeit zum Reagieren des Programmiereres *gg*.
    vii) Das originale Testprogramm wartet bei mir (laut Handstoppung mit Stoppuhr) 6,0x Sekunden bis eine Art Sekundenblinken anläuft.
    viii) Diese rund sechs Sekunden scheinen mir die Wartezeit zu sein, die DIESES spezielle Teilchen von PowerOn bis Programmlauf JEDES MAL durchläuft.
    Diese Wartezeit startet bei JEDEM PowerOn neu !
    ix) Ein sofortiger Anlauf dürfte nur mit nem eigenen Programm sinnvoll sein. Dann dürfte der Programmstart auf deutlich unter 1 ms zu drücken sein.

    Ein eigenes Programm aufzuspielen ist pipieinfach: ich habs mit meinem Programmer (diesem hier) gemacht. Die sechs Pinne gehen an GND, Vcc, MOSI-an-PB0, MISO-an-PB1, SCK-an-PB2 und /RESET-an-PB5. Siehe Bezeichnungen z.B. hier. Das ergab bei mir ein selbst gestricktes Flashkabel einfachster Art - 6fach-Buchsenstecker auf der Programmerseite + Steckbuchsen für Digispark.

    Aus den Fuses ist zur Startzeit folgenes zu errechnen:
    Startzeit BIS ZUM START des BOOTLOADERS ( ! ! ) : PLL Clock; Start-up time PWRDWN/RESET 1KCK/14CK+64ms, grob also etwas mehr als 64 ms. DANACH kommt die Wartezeit des Bootloaders ! !
    Startzeit ohne Bootloader sowie bei/nach Ändern der Fuses auf Int. RC Osc, 8 MHz; Start-up time PWRDWN/RESET: 6ck/14Ck + 0 ms - - - also unter 1 ms ! Hier die Voraussetzung dass die Anstiegszeit der Versorgungsspannung nicht zu lang wird. 1 ms ist schon etwas sehr kurz!

    Viel Erfolg
    Ciao sagt der JoeamBerg

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.10.2014
    Beiträge
    2.944
    Zitat Zitat von oberallgeier Beitrag anzeigen
    Und das könnte dauern. Und zwar satte sechs Sekunden oder mehr - geschätzt 6 sec ±1 sec. Wieso? Darum:

    i) Vor 5 Wochen hatte ich mir mit andern Teilchen auch ein Digispark-namenlos (dies) gekauft.
    ii) gerade eben hatte ich mal mein eigenes Progrämmelchen zeitlich ausgemessen. Ein Kleinstsprogramm, siehe iii), programmiert in C.
    iii) Programmablauf: Konfiguration PortB, mein übliches "Resetblinken", d.h. 10 mal "blinzeln" = board-LED 10 ms ein, 90 ms aus, danach ein 0,5 Hz-Blink = 1 sec ein, 1 sec aus.
    iv) Das eigene Programm startet "sofort" beim Einstecken in den USB-Anschluss, sprich: sobald Power anliegt. Eine Verzögerung ist nicht erkennbar - warum auch (siehe unten).
    v) Das originale "Test"programm das mit dem Digispark geliefert wurde scheint der Bootloader zu sein. Ich hatte den sofort nach Kauf gesichert und heute wieder aufgespielt.
    vi) Allgemein: ein Bootloader wartet erfahrungsgemäss anfangs ein paar Sekunden, ob ein Programm ansteht das geladen werden muss, danach wird dieses geladenen Programm gestartet, bzw immer nach Anfang Programmspeicher (+ offset für den Boot-Sprungvektor) gesprungen. Fazit: der Controller/das Board wartet bei JEDEM PowerOn ob etwas zum Flashen per USB ansteht eine gewisse Zeit zum Reagieren des Programmiereres *gg*.
    vii) Das originale Testprogramm wartet bei mir (laut Handstoppung mit Stoppuhr) 6,0x Sekunden bis eine Art Sekundenblinken anläuft.
    viii) Diese rund sechs Sekunden scheinen mir die Wartezeit zu sein, die DIESES spezielle Teilchen von PowerOn bis Programmlauf JEDES MAL durchläuft.
    Diese Wartezeit startet bei JEDEM PowerOn neu !
    ix) Ein sofortiger Anlauf dürfte nur mit nem eigenen Programm sinnvoll sein. Dann dürfte der Programmstart auf deutlich unter 1 ms zu drücken sein.

    Ein eigenes Programm aufzuspielen ist pipieinfach: ich habs mit meinem Programmer (diesem hier) gemacht. Die sechs Pinne gehen an GND, Vcc, MOSI-an-PB0, MISO-an-PB1, SCK-an-PB2 und /RESET-an-PB5. Siehe Bezeichnungen z.B. hier. Das ergab bei mir ein selbst gestricktes Flashkabel einfachster Art - 6fach-Buchsenstecker auf der Programmerseite + Steckbuchsen für Digispark.

    Aus den Fuses ist zur Startzeit folgenes zu errechnen:
    Startzeit BIS ZUM START des BOOTLOADERS ( ! ! ) : PLL Clock; Start-up time PWRDWN/RESET 1KCK/14CK+64ms, grob also etwas mehr als 64 ms. DANACH kommt die Wartezeit des Bootloaders ! !
    Startzeit ohne Bootloader sowie bei/nach Ändern der Fuses auf Int. RC Osc, 8 MHz; Start-up time PWRDWN/RESET: 6ck/14Ck + 0 ms - - - also unter 1 ms ! Hier die Voraussetzung dass die Anstiegszeit der Versorgungsspannung nicht zu lang wird. 1 ms ist schon etwas sehr kurz!

    Viel Erfolg
    beziehst du dich damit auch auf den von mir vorgeschlagenen Arduino Nano oder Micro?
    Und z.B. mit i_make_it's Arduino-Sketch?
    denn darauf bezog sich ja sein Zitat
    .. Aber wenn die Versorgung der Trigger ist und sonst nichts da ist, würde es auf einen Boot je Vorgang hinauslaufen.
    wenn ja, dann teste es doch bitte erstmal selber genau damit aus, bevor du hier Leute mit völlig aus der Luft gegriffenen Werten verunsicherst. Ich halte deine "bis zu 6 Sekunden" für die beiden Arduino-MCUs für völlig (VÖLLIG!) abwegig.

    - - - Aktualisiert - - -

    PS,
    gerade getestet mit Blink-Sketch:
    unter 1 sec, eher eine halbe als 1 ganze.

    Was nicht heißen soll, dass es schnell ist, aber Lichtjahre entfernt von 6 sec.
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2018
    Beiträge
    5
    Also ich könnte, wenn die bootzeit nicht zu lange ist, mit jedem klingeln neu starten und ihn so programmieren
    das er bei jedem booten für 300ms einen ausgang schaltet.

    Wenn das bootet zu lange dauert, kann ich das ganze mit dauerstrom versorgen und dem Digispark Attiny 85 so programmieren das wenn ich am eingang X
    für 1 sec 5v drauf gebe (klingeltaster) und er am ausgang Y für 300ms 5V ausgibt.(gong)

    Habe ich das soweit richtig verstanden?

  4. #14
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    49
    Beiträge
    2.814
    Ja, beides geht.
    Dauerhaft versorgter µC mit Interrupteingang fürs Klingelsignal und µC der mit dem Einschalten der Spannungsversorgung einmal den Code ausführt.

    Bei meinen Digispark Clones habe ich die Dauer des "Bootvorgangs" nicht gemessen. Aber wenn das über 6 Sekunden sind, wäre es sinnvoll einen Nano zusätzlich zu holen, den kann man dann als ArduinoISP nutzen, aber auch "normal" für eigene Projekte.
    Da sollte man von einem Clone absehen, meine letzten 5 Nano Clones kamen ohne Bootloader. Die musste ich selbst erst mit ArduinoISP brennen.

    Als ISP könnte man dann den ATTiny direkt programmieren damit kein interner Bootloader durchlaufen wird.

  5. #15
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2018
    Beiträge
    5
    Ich werde mich sofort melden wenn er da ist.
    Dann mal schauen ob mit oder ohne dauerstrom.
    ist mir eigendlich egal, hauptsache ich bekomm das gebacken mit dem programmieren.

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Signal auf +/-10V beschränken
    Von hacker im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 14.07.2009, 16:14
  2. Antworten: 6
    Letzter Beitrag: 23.04.2008, 21:09

Berechtigungen

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