AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TComPort Problem

Ein Thema von Muellermilchtrinker · begonnen am 4. Nov 2010 · letzter Beitrag vom 5. Nov 2010
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#11

AW: TComPort Problem

  Alt 5. Nov 2010, 15:13
Empfänger ist in AtMega32 der über Input in BASCOM auf einen String wartet. Das Problem ist, dass wenn ich über ein Terminal den String sende, dass dann alles funktioniert. Nutze ich aber oben geposteten Code, dann werden nur die ersten zwei Zeichen aus dem Edit2 ('&B00110011') übertragen. Sprich er sendet nur &B.
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#12

AW: TComPort Problem

  Alt 5. Nov 2010, 15:24
Und wenn Du den String mit Write statt mit WriteStr schickst?
Jens
  Mit Zitat antworten Zitat
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#13

AW: TComPort Problem

  Alt 5. Nov 2010, 15:27
Damit: comport1.Write(pchar(edit2.text),length(edit2.Text)); schickt er dann zwei Fragezeichen
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#14

AW: TComPort Problem

  Alt 5. Nov 2010, 15:34
Irgendwie beschleicht mich das Gefühl, dass das Problem vielleicht an einer anderen Stelle zu suchen ist.
Zeig doch mal etwas mehr Quellcode "drumrum".
Jens
  Mit Zitat antworten Zitat
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#15

AW: TComPort Problem

  Alt 5. Nov 2010, 15:36
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, CPortCtl, StdCtrls, CPort;

type
  TForm1 = class(TForm)
    ComTerminal1: TComTerminal;
    ComPort1: TComPort;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Button3: TButton;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
comport1.Open;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
comport1.Close;
end;

procedure TForm1.Button3Click(Sender: TObject);
var s:ansistring;
begin
comPort1.Write(pchar(edit1.Text),1);
comport1.Write(#13,1);
s := ansistring(edit2.Text);
comport1.WriteStr(s);
comport1.Write(#13,1);
end;

end.
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
LargoD

Registriert seit: 8. Jun 2007
42 Beiträge
 
#16

AW: TComPort Problem

  Alt 5. Nov 2010, 16:02
Wenn der ATMega angeschlossen ist, siehst Du im Terminalprogramm die Antwort, und nicht das, was raus geht.
Häng den ATMega mal ab und mach eine Brücke zwischen Pin 2 und Pin 3 der seriellen Schnittstelle. Dann siehst Du im Terminal was Du sendest. Vielleicht hat der ATMega ja ein Geschwindigkeitsproblem, was Du natürlich bei manueller Eingabe nicht merkst.

Gruß
Erich
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#17

AW: TComPort Problem

  Alt 5. Nov 2010, 16:04
Das gefällt mir nicht so:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var s:ansistring;
begin
comPort1.Write(pchar(edit1.Text),1);
comport1.Write(#13,1);
s := ansistring(edit2.Text);
comport1.WriteStr(s);
comport1.Write(#13,1);
end;
Besser so:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
  var line:ansistring;
begin
  line := AnsiString(edit1.Text + #13);
  comport1.WriteStr(line);

  line := AnsiString(edit2.Text + #13);
  comport1.WriteStr(line);
end;
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#18

AW: TComPort Problem

  Alt 5. Nov 2010, 16:05
Mit der Brücke zwischen 2 und 3 kommt dann der ganze String also: &B00110011
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
LargoD

Registriert seit: 8. Jun 2007
42 Beiträge
 
#19

AW: TComPort Problem

  Alt 5. Nov 2010, 16:24
Mit der Brücke zwischen 2 und 3 kommt dann der ganze String also: &B00110011
Dann klappt ja das Senden.
Wenn die Antwort vom ATega immer noch verstümmelt ist, musst Du klären, ob der ATMega Hardware- oder Software-Handshake braucht und dann in TComport das Richtige einstellen. Bei Hardware-Handshake müssen natürlich auch die entsprechenden Leitungen verdrahtet sein.
Gruß
Erich

Edit sagt: Parity und Anzahl der Stop-Bits und ähnliches hast Du richtig eingestellt?

Geändert von LargoD ( 5. Nov 2010 um 16:28 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#20

AW: TComPort Problem

  Alt 5. Nov 2010, 16:24
So, dass Programm funktioniert jetzt. Hatte noch zum Testen ne Wartefunktion im Code für den AtMega. Jetzt funktioniert alles.
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz