-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: atmega16 Füllstand

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    20.03.2010
    Beiträge
    50

    atmega16 Füllstand

    Anzeige

    Hallo

    also ich beschäftige mich gerade mit dem atmega16. Bin auf dem Gebiet noch ein blutiger Anfänger und wäre überglücklich wenn mir jemand bei meinem Problem helfen könnte
    Ich habe einen Schwimmer in einem Behälter und 2 Sensoren.(Hoher und tiefer Füllstand) Ist es möglich mit dem Atmega die Zeit zu "stoppen" die mein Schwimmer braucht um vom hohem Füllstand auf den niedrigen zu gelangen!? Wenn das geht würde ich mich über jeden Quelltext freuen

    schonmal vielen Dank

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Wilkommen im RN Netz.
    Wie willst du die gestoppte Zeit anzeigen?

    Wenn Endschalter oben gedrückt
    Starte Timer
    Wenn Endschalter unten gedrückt
    Stoppe Timer
    Timer auslesen und umrechnen (je nach Zeitformat)
    Zeit anzeigen
    Timer zurücksetzen

    Den Timer musst du vorher noch einstellen.

    Vielleicht hilft es weiter.

    MfG Hannes

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    20.03.2010
    Beiträge
    50
    Hallo Hannes vielen Dank für deine antwort!

    also prinzipiell hab ich das verstanden, wollte mir die Zeit irgendwie am PC ausgeben lassen und bräucht vielleicht nen Quellcode an dem ich mich orientieren kann. Wie gesagt noch bin ich ein Anfänger
    Vielen Dank nochmal

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Willst du nur dieses Projekt machen oder willst du generell in die Programmierung einsteigen? Hast du schon Vorkentnisse mit µC? Ich würde mich nacheinander in die einzelnen Themen einarbeiten (Eingabe, Interrupt, Timer, Datenübertragung,...).

    Ein fertiges Beipsiel habe ich leider nicht. Wenn du nur dieses Projekt machen willst würde ich auf einen anderen, kleineren AVR umsteigen, da der Atmega viele IOs hat, die frei bleiben. Wie willst du die Verbindung mit dem PC herstellen? Wenn du mit Funk arbeiten willst würde ich SPI als Verbindung mit dem Funksender empfehlen. Dann könntest du mit dem Attiny 25, 45 bzw 85 arbeiten. Der hat 8 Anschlüsse.

    MfG Hannes

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.12.2008
    Beiträge
    319
    Hallo,
    ich glaube du brauchst dann auch einen Timerquarz damit es genau wird... eine der besten anlaufstellen ist für Anfänger wohl das AVR-GCC-Tutorial hier der Link zum Timer.

    http://www.mikrocontroller.net/artic...A4hler_des_AVR

    Und die Kommunikation zum PC

    http://www.mikrocontroller.net/artic...orial/Der_UART

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    @teh_muck
    Du hast Recht, wenn es aber nicht so genau sein muss geht auch der interne Oszillator.

    MfG Hannes

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    04.04.2005
    Ort
    Hamburg
    Alter
    29
    Beiträge
    826
    Ich bin auch der Meinung, dass der interne Oscilator reichen sollte, da es ja hier wohl eher um Sekunden und nicht um nanosekunden geht, oder?

    Generell musst du deine Frage aber präziser stellen, Jimmy, da ich keine Ahnung hätte, was du haben willst.

    Wie hast du die Sensoren angeschlossen? Welches Board nutzt du? Wie willst du die Daten ausgeben?

    Generell solltest du dir mal das AVR-GCC-Tutorial ansehen, wie oben auch schon empfohlen.
    www.subms.de
    Aktuell: Flaschcraft Funkboard - Informationssammlung

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    20.03.2010
    Beiträge
    50
    Hallo!
    Vielen Dank für die Antworten!
    Also als Board hab ich das STK 500. Da evtl. noch eine Regelung über eine Pumpe geplant ist. Meine Vorkenntnisse sind eher bescheiden, aber was nicht ist, kann ja noch werden
    Bei dieser Kombi wirds wohl auch bleiben.

    Zu dem Prescaler: Kann ich da für jeden Timer nen andren Takt vorgeben...oder ist der wenn ich einmal einen bestimmten Wert vorgeben hab gleich!?

    Die Verbindung zum PC ist UART und da hätte ich gern ein Fenster in dem meine benötigte Zeit steht, die der Schwimmer vom oberen Sensor zum unteren benötigt. Ich les mir erstmal dieses Tutorial durch und werd dann bei Fragen nochmal schreiben. Aber schonmal vielen vielen Dank für eure Antworten.

    Gruß jimmy

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    20.03.2010
    Beiträge
    50
    Hallo nochmal!

    Also wie es jetzt laufen soll weiss ich. Wenn ein Endschalter gedrueckt ist, starte Timer. Bei jedem Ueberlauf loese ISR aus. Setze hier Zaehlvariable eins hoeher. Gib Wert der Variable aus wenn Schalter 2 gedrueckt ist. Zeit berechenbar.

    Stimmt das vom Ablauf so? Und wenn ja wie schaffe ich es den Timer mit einem externen Signal zu starten???Finde dazu nirgends was

    Wuerde mich ueber eine Antwort sehr freuen:

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Der Ablauf stimmt so. Mit "sei();" kannst du die Interrupts freigeben (alle). Mit "cli();" kannst du die Interrupts sperren (alle). Da du nur den Timerinterrupt brauchst kannst du es so machen. Die Interrupt.h musst du includen.
    Hier ist etwas zum Interrupt für den Mega32, du kannst es aber auch beim Mega16 anwenden http://www.tschallener.net/AVR/Inter...ikATmega32.pdf

    MfG Hannes

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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