- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 27

Thema: Atmega16 mit pc verbinden?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von Thegon
    Registriert seit
    21.01.2011
    Beiträge
    562
    Du brauchst vom RS232 Stecker (vom PC) eigentlich nur drei Pins:
    Nummer: Funktion:

    • 2, RX, über diese Leitung "wandern die Daten in den Computer hinein"
    • 3, TX, über diese Leitung "Sendet der computer hinaus"
    • 5, GND, eben gemeinsame Masse damit die Übertragung funktioniert
    Auch der Max hat Pins: (Im Schaltplan aus dem RN)

    über Pin 13 kann er emfangen
    über Pin 14 kann er Senden.

    Nun den Pin 13 des Max232 (auf dem er "lauscht") mit dem Pin 3 des Steckers verbinden (dort sendet der computer) und umgekehrt, also 14 mit 2.
    Gemeinsamen GND nicht vergessen, dann sollts klappen
    und wenn nicht, einfach mal vertauschen

    Villeicht kommts hier klarer rüber: (etwas weiter unten ist ein Schaltplan)
    http://sodoityourself.com/max232-ser...vel-converter/

    Mfg Thegon

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    22.03.2012
    Beiträge
    80
    Hallo

    Ich habe die Platine jetzt fertig sie funktioniert auf einwandfrei mit dem RS232 USB Adapter und die Frage wie kann ich variablen übertragen ich hab mir das so vorgestellt ich tippe den Namen bei putty ein und dahinter die Zahl die in die variable rein soll
    wie muss ich das Programmieren habt ihr da eine Seite oder könnt ihr mir ein Beispiel geben?

    mfg Zardest

  3. #3
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Hallo,

    ein Beispiel habe ich jetzt nicht. Aber prinzipiel kannst du die ganze Eingabe in einem String speichern und diesen String dann auswerden, sprich du suchst dir so den Variablennamen raus und den Inhalt.
    Du kannst z.B. sagen du machst zwei Inputs nacheinander. Beim ersten gibst du den Namen der Variable ein und beim zweiten den Wert.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    22.03.2012
    Beiträge
    80


    Ich muss es sehen sonst kann ich es irgendwie wie nicht verstehen

  5. #5
    Erfahrener Benutzer Roboter-Spezialist Avatar von Thegon
    Registriert seit
    21.01.2011
    Beiträge
    562
    Ich kenne mich jetzt mit PuTTY nicht aus, als Terminalprogramm kann ich dir HTerm sehr empfehlen, da hat man sozusagen die Vollmacht über seine Schnittstelle einfach mal danach googlen

    Mit HTerm kann man nicht nur ASCII Zeichen Senden, wie bei anderen Terminalprogrammen, sondern auch Hexadezimal, Dezimal, Binär usw.

    Man könnte also immer zwei Zahlen senden, eine ist die Nummer der Variable und die zweite der Inhalt.
    Im Programm des AVR kann man dann abfragen:

    If ersteZahl = 1 then
    'Inhalt in die erste Variable schreiben
    Variable1 = zweiteZahl
    elseif ....
    (Pseudocode)

    Man würde dann per UART die beiden Zahlen "ersteZahl" und "zweiteZahl" einlesen, und dann entscheiden, welche Variable, (im Bsp. Variable1) jetzt "adressiert" wurde oder so. Bei diesem Beispiel handelt es sich um Bytevariablen, weil bei UART imm er ein Byte nach dem anderen gesentet wird, wenn man beispielsweise eine 32bit Zahl übertragen möchte, müsste man halt tricksen.
    Ist jetzt natürlich nur ein minimalistisches Beispiel aber so vom Prinzip her macht man das ja so

    Mfg Thegon

  6. #6
    Erfahrener Benutzer Begeisterter Techniker Avatar von Andre_S
    Registriert seit
    26.06.2005
    Beiträge
    369
    Zitat Zitat von Zardest Beitrag anzeigen
    Hallo

    Ich habe die Platine jetzt fertig sie funktioniert auf einwandfrei mit dem RS232 USB Adapter und die Frage wie kann ich variablen übertragen ich hab mir das so vorgestellt ich tippe den Namen bei putty ein und dahinter die Zahl die in die variable rein soll
    wie muss ich das Programmieren habt ihr da eine Seite oder könnt ihr mir ein Beispiel geben?

    mfg Zardest
    Hallo,

    für die Test's ist ein Terminalprogramm sicherlich ausreichend, aber wolltest Du später nicht "richtig" steuern?

    Eventuell schreibst Du Dir gleich ein passendes Programm. Von MS bekommt man die Visual Studio Express Version kostenfrei hier:
    http://www.microsoft.com/germany/exp...d/default.aspx
    zum Download (Basic; C#; C++)

    Ein paar Daten ohne weiteren Komfort kann man dann in C# in "etwa" so übertragen:
    http://www.mycsharp.de/wbb2/thread.p...3&hilight=COM1

    Geholfen wird Dir sicher auch dabei...
    Welchen Umfang muss das Programm den besitzen, also in welcher Form (wie Auslösen) willst Du die Befehle/Daten (welchen Umfang) mal senden ...


    Gruß André

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    22.03.2012
    Beiträge
    80
    Danke erst einmal

    Ich will eigentlich nur die Variablen auslesen können was ich schon schaffe aber ich will einen wert eingeben und diesen dann in der Variable speichern also im Grunde nur die variablen verändern

  8. #8
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    In welcher Sprache programmierst du den? In Basic macht dieser Befehl sowas:

    Input "Neuer Wert der Variable: " , Variable

    Da erscheint im Terminal der Text zwischen den "" und das was du eingibst wird in der Variable "Variable" gespeichert. Allerdings bleibt das Programm solange stehen bis du was eingegeben hast. Wenn du das nicht möchtest, musst du den Rx Interrupt nutzen.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  9. #9
    Erfahrener Benutzer Begeisterter Techniker Avatar von Andre_S
    Registriert seit
    26.06.2005
    Beiträge
    369
    Zitat Zitat von Zardest Beitrag anzeigen
    Danke erst einmal

    Ich will eigentlich nur die Variablen auslesen können was ich schon schaffe aber ich will einen wert eingeben und diesen dann in der Variable speichern also im Grunde nur die variablen verändern
    Hallo,

    hatte ich schon prinzipiell so verstanden allerdings ist mir zum Zeitpunkt der Umfang noch unklar da Du auch immer wieder von "Variablen" in der Mehrzahl sprichst. Vieleicht noch mal kurz von meiner Seite ein sehr vereinfachtes Beispiel:

    Sollte prinzipiell mehr als ein einzelnes Byte übertragen werden ist es meist sinnvoll, nicht nur bei dynamischen Datenmengen, die Übertragung mit Start und einem Endbyte zu kennzeichnen welche in den Informationen nicht vorkommen , dies vor allen Dingen wenn mehrere Byte’s übertragen werden sollen. Eine Bestätigung in Richtung PC, also Kommunikation, lasse ich mal außen vor. (Ist aber aus meiner Sicht bei vielen Anwendungen sehr wichtig!)

    Überträgst Du allerdings nur einen einzelnen Wert ist der folgende „Aufwand“ nicht nötig und Du musst nicht weiter lesen.

    Wir müssen als erstes unterscheiden ob die Variablenwerte jeweils gemeinsam oder getrennt übertragen werden sollen. Gemeinsam wäre zu Bsp. ein Hexstring mit 5 in der Reihenfolge fest angeordneten Variablenwerten. Im folgenden im Wertebereich 0 – 250. Der Einfachheit halber können wir so Daten/Werte von „FC“ und „FF“ ausschließen und diese für Start- und End-Byte nutzen.
    Beispielstring:

    „FC 33 4A 01 F0 AA FF“

    „FC“ wäre das Start-Byte, dann kommt „Variablenwert_1“ = 0x33 (dez 51),… bis „Variablenwert_5“ = 0xAA (dez 170), und das End-Byte „FF“ zur Orientierung im MC wann die Daten komplett aus dem „Empfangspuffer“ gelesen und verarbeitet werden können.


    Übertragen wir allerdings getrennte Variablenwerte (wie @Thegon schon schrieb) müssen wir den jeweiligen Variablen zur Unterscheidung einen Namen = Wert zuordnen. "Nennen" wir dem Variablenwert_1 = 0x01; usw…, Variablenwert_5 wäre dann 0x05.
    Beispielstring:

    „FC 01 33 FF“

    „FC“ wäre dann wieder das Start-Byte. 0x01 wäre der „Name“ für Variable zwecks Zuordnung zum „Variablenwert_1“ und der folgende Wert wäre also dieser Variablen zugeordnet… usw. Wollen wir nun den Werte „AA“ (dez 170) der „Variablen_5“ übertragen würde der String so aussehen:

    „FF 05 AA FF“


    Je nach Aufgabe musst Du nun noch den Sendevorgang am Computer auslösen oder automatisieren. Das kommt jetzt auf die Aufgabe an. Natürlich auch bei einzelnen wenigen oder gar einem Wert mit „händischer“ Eingabe des selben.


    Deshalb meine Frage, was möchtest Du denn eigentlich genau steuern? Wie viele unterschiedliche Variablen benötigst Du und wie groß sind die entsprechenden Wertebereiche bzw. „Zahlen“? (Byte, Word etc.) Eventuell kannst Du ja der Einfachheit halber ein passendes PC Programm bekommen, dazu wären aber mehr Informationen notwendig.


    Gruß André

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    22.03.2012
    Beiträge
    80
    Also eigentlich will ich nur 5 Variablen verändern
    sind alles integer:

    dim p1 as integer
    dim p2 as integer
    dim p3 as integer
    usw.

    Und nun will ich mit dem pc einfach die werte und den variablen verändern z.b. 1,1023 das wäre dann 1 variable und der wert 1023
    so hab ich es mir vorgestellt

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. ATmega16 mit LCD EA DIP122-5NLED verbinden
    Von milanlu im Forum AVR Hardwarethemen
    Antworten: 10
    Letzter Beitrag: 24.11.2008, 14:21
  2. AVR via USB mit PC verbinden
    Von NemesisoD im Forum Elektronik
    Antworten: 4
    Letzter Beitrag: 29.07.2007, 06:57
  3. 2 avr´s verbinden
    Von Tom K im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 17.12.2006, 20:58
  4. CFK und GFK verbinden
    Von dudenz im Forum Mechanik
    Antworten: 6
    Letzter Beitrag: 23.11.2005, 14:40
  5. ATmega16 u. ATtiny26 Verbinden
    Von Fichte im Forum AVR Hardwarethemen
    Antworten: 6
    Letzter Beitrag: 19.04.2004, 01:59

Stichworte

Berechtigungen

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

12V Akku bauen