Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: PCF 8591P read/write Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Jens - 14.12.2007 20:59)
 Als Antwort auf Re: PCF 8591P read/write von Jens - 14.12.2007 13:11
Jens nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro
Hallo Peter!

Anbei ist dass Demo zum durchsuchen vom I2C-Bus. Es wird wieder ein Terminalprogramm zur Anzeige benötigt. Die gefundenen Adressen werden Dezimal ausgegeben, also nicht verwirren lassen. :-)

LG Jens


' ---------------------------------------------------------------------------
' --- I2C-Bus durchsuchen - für OCBASIC -------------------------------------
' ---------------------------------------------------------------------------

' Hardware:
' Serielle Schnittstelle an Port[1] (mit Terminal Programm)
' I2C-Bus SCL an Port[5] (fals nicht anders festgelegt)
' I2C_Bus SDA an Port[6] (fals nicht anders festgelegt)

' Software:
' Das Programm durchsucht den I2C-Bus. Jeder gefundene I2C-Bus Baustein
' wird mit Adresse im Terminal Programm angezeigt.


' --- Betriebssystem konfigurieren ------------------------------------------
include "om.def"          ' Betriebssystem Daten der Open-Micro laden
'include "omid.def"        ' Betriebssystem Daten der Open-Midi laden

' --- definition der Ports --------------------------------------------------
define RS232      port[1] ' Serielle Schnittstelle an Port 1
' SDA und SCL werden in "OM_I2C-PRO definiert

' --- definition der Variablen ----------------------------------------------
define adresse    byte    ' I2C-Bus Adresse
define ACK        byte    ' I2C-Bus "ACK" vom Slave

' --- Voreinstellung und Initialisierung ------------------------------------
End2Host=ON               ' Bei Programmende in den HOST-Modus wechseln
i2c_init                  ' Initialisirung I2C-Bus
' ---------------------------------------------------------------------------


' ---------------------------------------------------------------------------
' --- Hauptprogramm ---------------------------------------------------------
' ---------------------------------------------------------------------------
#anfang
print                               ' Leerzeile
print "I2C-Bus Suche gestartet..."  ' Text Ausgabe
print                               ' Leerzeile
for adresse=0 to 254 step 2         ' I2C-Bus such - Adressen vorgeben
gosub i2c_start                     ' I2C-Bus starten
ACK = i2c_write(adresse)            ' Adresse senden, ACK empfangen
gosub i2c_stop                      ' I2C-Bus stoppen
if ACK=255 and adresse=0 then goto i2c_fehler ' Fehler im I2C-Bus
if ACK = 255 then gosub gefunden    ' Wenn "ACK" vom Slave empfangen, dann auswerten
next
print                               ' Leerzeile
print "Suche abgeschlossen"         ' Text Ausbabe
end                                 ' Programmende
' ---------------------------------------------------------------------------
#i2c_fehler
print "Fehler - I2C-Bus nicht bereit" ' Text Ausgabe
end
' ---------------------------------------------------------------------------
#gefunden
print "I2C-Bus Baustein bei Adresse "; Adresse; " (Dez) gefunden..." ' Text Ausgabe
return
' ---------------------------------------------------------------------------


' ---------------------------------------------------------------------------
' Die I2C-Routinen einbinden
' ---------------------------------------------------------------------------

INCLUDE "om_i2c.pro"

' ---------------------------------------------------------------------------
' Die Firmware-Routinen einbinden
' ---------------------------------------------------------------------------

INCLUDE "om_fw.pro"

 Antwort schreiben

Bisherige Antworten:

Re: PCF 8591P read/write (von Peter - 14.12.2007 23:55)
    Re: PCF 8591P read/write (von Jens - 15.12.2007 19:15)
        Re: PCF 8591P read/write (von Peter - 16.12.2007 11:55)
            Re: PCF 8591P read/write (von Peter - 12.10.2008 0:46)
                Re: PCF 8591P read/write (von Gerhard - 13.10.2008 12:35)