- fchao-Sinus-Wechselrichter AliExpress         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 19 von 19

Thema: Drehzahlmessung mit ATmega16

  1. #11
    RN-Premium User Begeisterter Techniker
    Registriert seit
    30.04.2004
    Alter
    47
    Beiträge
    245
    Anzeige

    Praxistest und DIY Projekte
    Von da brauchst du "nur" mehr x60 multiplizieren. Also am besten nochmal 4x Schieben, dann 1x den Originalwert abziehen -> x15. Das noch 2x Schieben entspricht x4. x15 x 4 => x60

  2. #12
    Neuer Benutzer Öfters hier
    Registriert seit
    13.04.2004
    Beiträge
    18
    Wenn du möchtest habe ich ein Kompletten schaltplan mit Code in "Codevision" für dich. Wenn es dir hilft bei mir Funktioniert es.!!!


    MFG: Fichte

  3. #13
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.03.2004
    Ort
    Paderborn
    Alter
    40
    Beiträge
    614
    Gerade bei solchen Berechnungen liegen auch die großen Vorteile von Hochsprachen wie Basic oder C. Bei einem Prescaler von 1024 ist der Genauigkeitsverlust durch die paar Takte, die ein Compiler vielleicht verschenkt, sicher zu vernachlässigen(wenn bei dir an der Stelle nicht der Weg das Ziel ist).
    it works best if you plug it (aus leidvoller Erfahrung)

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    17.05.2004
    Ort
    Darmstadt
    Beiträge
    72
    @Fichte

    Danke für dein Angebot aber ich kann nur in Assembler programmieren. Außerdem möchte ich ja auch was lernen.
    Vielleicht kannst du mir ja bei einem anderen Problem weiterhelfen. Ich habe z.Z. ein Programm für die Drehzahlmessung geschrieben und möchte das errechnete Ergebnis (16Bit) an ein LCD ausgeben.
    Also wenn ich zum beispiel diese Zahl errechnet habe:
    0b0001100101100100 = 6500(Dezimal)
    dann muss ich die 6,5,0,0 jeweils als (8Bit) Dualzahl an das LCD
    schicken. Wie kann ich das realisieren?

  5. #15
    RN-Premium User Begeisterter Techniker
    Registriert seit
    30.04.2004
    Alter
    47
    Beiträge
    245
    Schau mal auf www.avr-asm-tutorial.net
    Herr Schmidt hat dort alles schön zusammengefasst und sogar als PDF zum Ausdrucken zusammengestellt. Dort erklärt er ausführlich, wie man mit Assembler von Binär auf BCD auf ASCII kommt.
    Ich habe das auch schon benutzt und funktioniert einwandfrei.

    lg

    Alex

  6. #16
    partyboarder
    Gast
    Hallo Ihrs


    Ich habe sowas ähnliches schonmal in der FH programmieren müssen.

    ich habe zuerst mit auch mit timer start/stop gearbeitet, was zwar ergebnisse geliefert hat aber insgesamt sehr langsam war.

    Ich habe dann mir das gaze nochmal genauer angeschaut und bin dann auf input capture gekommen. dabei läuft der timer die ganze zeit und sobald ein signal kommt legt er den aktuellen wert in einem extra register ab und cleared den counter, der danach wieder hochläuft bis zum nächsten signal. man muss dann nur noch den wert aus dem register rauslesen und weiterverabeiten. dadurch entfällt das ganze start/stop gedöns und der prozessor macht das alles in der hardware.

    okay wir haben da mit einem hitachi H8S/2357 prozessor gearbeitet aber soweit ich mich erinnere hat der atmega 16 auch input capturing

    gruß
    mac

  7. #17
    Gast
    Whow mac

    Ich will die Impulslaenge von einem Empfaenger einer Fernsteuerung an die Servos dekodieren, dabei kommen die Impulse der z.B. 8 Kanaele immer zeitlich direkt nacheinander so dass mich die Verzoegerung beim Umschalten beunruhigt. Deine Technik ware ideal. Werde es pruefen. Danke

  8. #18
    RN-Premium User Begeisterter Techniker
    Registriert seit
    30.04.2004
    Alter
    47
    Beiträge
    245
    Hallo,

    vom Timing her würde ich mir nicht allzuviele sorgen machen. Wenn du z.B. mit 4 oder 8Mhz taktest, braucht 1 Befehl 250ns bzw. 125ns, erreichen mußt du für Servos 1ms - 2ms. Während dieser Zeit laufen also 4000-8000 Takte. Das geht problemlos. Wenn du in Assembler programmierst, kannst du die Takte deines Programms zählen und gegebenfalls als Korrekturwert noch hinzufügen. Nur wird der Servo ein paar us Fehler gar nicht darstellen, deswegen brauchst du dir darum nicht den Kopf zu zerbrechen. Zwischen den Einzelnen Servoimpulsen ist auch noch viel zeit über.
    Ich hab mir erst kürzlich auch so etwas ähnliches gebaut. Ich messe den Servoimpuls und Schalte je nach Impulslänge verschiedene Ausgänge (5 Stück).

    lg
    Alex

  9. #19
    Gast
    Moin

    ich hab mal hier nen link zur doku von o.g. FH Projekt

    http://www.geisterstunde.org/report/

    und dann Content->TPU Second Attempt.

    gruß
    mac

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

LiFePO4 Speicher Test