PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : I²C Bus an der RS232 mit Delphi



cb01
21.10.2006, 23:23
Hi,
ich bin in Delphi noch ziemlicher Anfänger, möchte jetzt aber den I²C Bus ansprechen, dazu habe ich hier (http://www.hans-dampf.org/index.php?page=i2c/seriell.php&expand=1)
eine Internetseite zu dem Thema gefunden, nun wollte ich das ganze mal testen, aber irgendwie funktioniert das ganze nicht so wie ich das gerne will.
Hier mal meine Schaltung (http://test.vs184078.vserver.de/temp/i2c_pcf8574.PNG).
Und hier das Programm dazu:


unit Unit3;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit4, Unit5, StdCtrls;

type
TForm3 = class(TForm)
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
begin
PCF8574Start('COM1: string');
PCF8574Out(144, 9)
end;

procedure TForm3.Button2Click(Sender: TObject);
begin
OPENCOM('COM1,1200,N,8,1');
I2CStart;
PCF8574Out(144, 9);
I2CStop;
end;

end.


Ich habe zwei Versionen ausprobiert, leider hat keine von beiden funktioniert.
Die Units von der Homepage habe ich beide eingebunden(Unit4 und Unit5) und die DLL's in den System32 Ordner meines Windows geladen.
Desweiteren tritt bei mir das Problem auf, das die Leds am PCF von Anfang an alle leuchten.
Hat evtl. jemand einen Tipp für mich, woran es liegt, das es nicht funktioniert.

Danke und Gruß

Chris

Vitis
22.10.2006, 11:35
ist ganz schön kryptisch das Progrämmchen.
Was man nicht erkennen kann, ob z.b. die Slaveadresse
des pcf mit der des Programms übereinstimmt.
Im Datenblatt kommt erst I2C-Stop, dann I2C-Start, dann Daten,
dann wieder Stop. Kann was ausmachen, muss aber nicht.

cb01
22.10.2006, 12:38
Hi,

die Adresse des PCF ist 144 (Alle Adresspins auf Masse gelegt), das Programm hat ebenfalls 144.

Vitis
22.10.2006, 23:14
aha, und was sagt das datenblatt vom pcf dazu?
wenn ichs noch recht in erinnerung hab ... 64, bzw. 65
je nachdem ob lesen oder schreiben ... wenn ich ncht irre

http://hubbard.engr.scu.edu/embedded/spyglass/pcf8574.pdf