- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 9 von 9

Thema: Soft- und Hardware in BASCOM TWI simultan?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379

    Soft- und Hardware TWI in BASCOM simultan?

    Hi,

    sehe ich es richtig, dass es nicht möglich ist, in Bascom den Hardware TWI (I2C) und die BASCOM-eigene Implementierung des Software-TWI parallel zu benutzen? Ich benötige einen zweiten I2C Bus, weil ich drei gleiche I2C Bauteile verwenden will, bei denen hardwaremäßig nur zwei verschiedene Adressen einstellbar sind. Danke für alle Hinweise!

    Gruß
    Malte
    Geändert von malthy (06.05.2016 um 08:03 Uhr)

  2. #2
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    72
    Beiträge
    11.077
    Hallo!

    Ich würde mehrere Bausteine mit gleichen Adressen an nur einem I2C Bus zwischen un- und erlaubten Adressen bzw. per Enable (falls vorhanden) per µC HW-mässig umschalten.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    CS oder Enable sind an dem Baustein (wie meist bei I2C) nicht vorhanden, sonst würde ich diese Möglichkeit natürlich nutzen.

  4. #4
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    72
    Beiträge
    11.077
    Wenn sie nur bei bestimmter Adresse aktiv sind, dann werde ich versuchen sie per andere Adressen "abschalten". Sonst vielleicht könnte man die Ausgänge an I2C Bus per HW multiplexen.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von malthy Beitrag anzeigen
    CS oder Enable sind an dem Baustein (wie meist bei I2C) nicht vorhanden, sonst würde ich diese Möglichkeit natürlich nutzen.
    Vielleicht hilft dir so etwas weiter:

    http://cache.nxp.com/documents/data_...6A.pdf?pspll=1
    http://cache.nxp.com/documents/data_...08.pdf?pspll=1

    Hier kannst du selber suchen:
    http://www.nxp.com/products/interfac...0&tab=Products

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    52
    Beiträge
    765
    Hallo,

    um die Eingangsfrage zu beantworten:

    Nutze nur Soft-TWI. Im Code kannst Du mit config TWI die PortPins wechseln.
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von peterfido Beitrag anzeigen
    Nutze nur Soft-TWI. Im Code kannst Du mit config TWI die PortPins wechseln.
    Die Soft-TWI ist zwar sehr flexibel, was die Pins angeht aber eine Simulation der vorhanden Hardware. belastet halt die CPU, da sie sich selbst um jedes Bit kümmern muss.
    Die CPU muss das aktuelle Datenbit extrahieren und an SDA senden und dann SCL toggeln und dabei noch das Timing beachten. Wenn Clockstretching unterstützt wird, muss noch SCL abgefragt werden.
    Etwas komplizierter wird es dann, wenn man einen Slave implementieren will. Hier muss dann der Bus eigentlich dauernd überwacht werden, weil man nie weiss man der Master was will. Praktisch wird man dies aber nur mit Interrupts erreich, was dann die Freiheit bei der Pinwahl wieder einschränkt.

    Bei der Hardware Variante muss sich die CPU nur um jedes Byte kümmern, hat also wesentlich weniger zu tun, den Rest übernimmt die Hardware.
    Allerdings sind die Pins fest vorgegeben.

    Die Belastung der CPU hängt natürlich auch vom Datenvolumen auf dem I2C-Bus ab.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

Ähnliche Themen

  1. PWM Erzeugung 18* Simultan
    Von WarChild im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 30
    Letzter Beitrag: 28.07.2009, 15:06
  2. Soft-UART in BAscom?
    Von mar_phil im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 19.08.2008, 18:44
  3. I2C Soft und Hard in BASCOM
    Von slavezero im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 18.01.2008, 09:25
  4. AtMega8 PWM und simultan SPI
    Von MarkusG im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 23.02.2006, 08:27
  5. Hardware I2C bei M16 in Bascom
    Von sam86 im Forum Elektronik
    Antworten: 12
    Letzter Beitrag: 03.10.2004, 19:30

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad