- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Startprobleme

  1. #11
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    54
    Beiträge
    2.806
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Vielleicht solltest Du erstmal erzählen, was Du Dir für "Elektronik" gekauft hast. Dann kann man Dir vielleicht eher konkretere Tipps für Dein Problem geben...

    Vielleicht dann so sortieren :
    1.) Was will ich überhaupt machen
    2.) Was habe ich (Hardware / Kenntnisse)
    3.) Mit welcher Programmiersprache will ich arbeiten
    4.) Welche Software brauche ich dafür
    5.) Wie verbinde ich Hardware-/Software
    6.) Wie schaffe ich die ersten Schritte ("Hallo Welt")
    7.) Wo bekomme ich weitere Kenntnisse (Tutorials, Codeschnipsel)

  2. #12
    Neuer Benutzer
    Registriert seit
    28.03.2005
    Ort
    Vaihingen/Enz
    Alter
    36
    Beiträge
    1
    Hallo!

    Ich bin hier und auch im Thema Microcontroller komplett neu...

    Ich hab gestern ein C Tutorial mit den wichtigsten Grundlagen durchgelesen und die 2 Aufgaben da drin gelöst... So weit so gut.

    Ich möchte jetzt eine Füllstandssteuerung mit einem Microcontroller realisieren, die Erfassung liefert einen Analogwert. Diese möchte ich dann mit einem Sollwert vergleichen und dann die Pumpe entsprechend beschleunigen oder abbremsen - mit einer PWM. Ich hab mir das AVR-GCC Tutorial durchgelesen, hörte sich recht leicht an. Doch wenn ich mir jetzt das Datenblatt vom ATtiny2313 anschaue, kapier ich nur sehr wenig. Was mir vor allem Probleme bereitet, sind die Bezeichnungen der I/O Ports und so... Ansonsten die Regelung scheint mir eigentlich recht einfach. Ich Frage in regelmäßigen Abständen (vielleicht 2 Sekunden) mit einer Dauerschleife den Wasserstand ab, ist er niedriger, wird die Pumpe schneller gemacht (PWM wert senken, aber nur maximal z.B. 3 Schritte), ist er höher, wird die Pumpe entsprechend schneller gemacht - ein paar mal if, fertig. Dann noch 2 Taster, dafür brauch ich dann ne Entprellung, 2 Interrupts, die dann den Sollwert jeweils um 1 Schritt erhöhen bzw. senken. Und wenn's einfach geht, würde ich noch 2 7-Segment anzeigen hinmachen, die den Soll - Wert anzeigen. Und vielleicht, das könnte dann aber auch erst in einer Erweiterung sein, noch eine Taste und ein paar LED's, um dann verschiedene Werte (Ist-Wert) anzuzeigen.

    Doch was mir jetzt wirklich Probleme macht, ist, wie ich die I/O's verwenden soll und wie ich das ganze initialisieren muss - diese ganzen Nummern sind mir echt ein Rätsel! Gibts da vielleicht irgendwo eine Erklärung? Oder muss ich noch mehr C lernen? Oder die Tutorials nochmal lesen? Was würdet ihr mir empfehlen? Ich möchte halt eine Platine basteln, die möglichst auch noch Erweiterungen (in der Programmierung) zulässt - z.B. ein paar Tasten zusätzlich und ein paar LED's und so...

    Viele Grüße
    Michitux

  3. #13
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    41
    Beiträge
    1.780
    Zitat Zitat von Michitux
    Doch was mir jetzt wirklich Probleme macht, ist, wie ich die I/O's verwenden soll und wie ich das ganze initialisieren muss - diese ganzen Nummern sind mir echt ein Rätsel!
    Meinst du z.B. sowas:

    Code:
    	DDRD = 0x81;
    	PORTD = 0xFF;
    
    	ADMUX = 0x07;
    	ADCSRA = 0xE7;
    und wenn ja, was genau verstehst du daran nicht?

    In dem Beispiel z.B. wird dem DDRD Register der Wert 0x81 zugewiesen, was der Dezimalzahl 129 bzw. dem Bitmuster 10000001 entspricht.
    Das bedeutet, daß die Pins 0 und 7 von PortD als Ausgänge und alle anderen Pins als Eingänge verwendet werden.
    Dann kommt das PORTD Register, in das in diesem Fall einfach nur FF geschrieben wird (= 255 = 11111111).
    Damit werden die als Ausgänge verwendeten Pins auf High gesetzt, und bei den Eingängen die internen PullUp-Widerstände aktiviert.

    Wenn man wissen will was die beiden folgenden Zeilen bedeuten, muss man nur kurz im Datenblatt nachschauen.
    Da steht genau welche Bits in diesen Registern welche Bedeutung haben.
    (da sind immer ein paar schöne Tabellen in denen das haarklein beschrieben ist)
    Mit ADMUX = 0x07 z.B. wird Pin 7 von PortA für die AD-Wandlung ausgewählt.


    Es ist im Prinzip ganz einfach...
    1. überlegen was man will
    2. im Datenblatt nachschauen wie das geht
    3. programmieren (= die richtigen Bits in den richtigen Registern setzen)
    So viele Treppen und so wenig Zeit!

  4. #14
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.08.2004
    Ort
    Zwolle
    Alter
    68
    Beiträge
    531
    @Michitux

    diese ganzen Nummern sind mir echt ein Rätsel! Gibts da vielleicht irgendwo eine Erklärung?
    guck vielleicht mahl hier:

    http://home.planet.nl/~winko001

    und download dort:

    Bits, Byte, Hex (PowerPoint)

    gruss

    Henk

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress