MCP23017 mit dem I2C Bus ansteuern Software 2018-10-25

Ein Programm um den MCP23017 mit dem I2C Bus anzusteuern Software

  1. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    401
    Zustimmungen:
    6
    Punkte für Erfolge:
    18
    Sprachen:
    C
    Wenn der Attiny 261 eine Weiterentwicklung vom Attiny 26 ist müsste doch alle Software vom 26 auch auf dem 261 laufen? Da werde ich mal schauen ob es was zum USI gibt. Ist halt sehr interessant wenn man mit dem ISI die einzelnen ICs als Slave programmieren kann. Bleibt nur noch das Problem mit USI.
    Habe es mal gemacht, einen 1284p als Master und einen 2313 mit USI verbunden. Es läuft zwar, kann aber nicht so richtig sagen warum.
    achim
     
  2. LotadaC

    LotadaC Sehr aktives Mitglied

    Registriert seit:
    22. Januar 2009
    Beiträge:
    3.009
    Zustimmungen:
    51
    Punkte für Erfolge:
    48
    Sprachen:
    BascomAVR, Assembler
    Der Tiny261/461/861 war 'ne Neuauflage des Tiny26, mit Neuerungen, sagte ich bereits. Auf der Produktseite findest Du bei den Dokumenten üblicherweise auch Migrating from... to... Application Notes. Die vom 261 zum 261A (im wesentlichen picoPower-Kram) hatte ich oben bereits verlinkt, die vom 26 zum 261 wäre hier. Da sind deutlich mehr Veränderungen. 'Ne Migrating from Tiny26 to Tiny261A gibts natürlich auch...
    Beim USI wird hier nur erwähnt, daß die Kopplung des Timers auf die USI-Clock geändert wurde. Das könnte im TWI-Master genutzt werden - sofern man Clock-Stretching und Multi-Master ausschließen kann.
    Auf das Buffer-Register wird hier nicht eingegangen - das wird eh bei vielen Datenblättern verschludert...
    Nicht generell. Aber 'ne Hochsprache wie C nimmt Dir da viel ab.

    Um mal auf'n Punkt zu kommen: Es gibt natürlich von ATMEL bereits einen USI-"Treiber" für Master-TWI, und einen für Slave-TWI.
    Auf die Dokumenten-Liste hatte ich bereits hingewiesen,
    AVR310 und AVR312 sind Deine Gutenacht-Lektüre...

    Mit dem Controller-Datenblatt und I²C-Bibel von NXP sollte man das aber auch selbst hinbekommen. Nonplusultra wäre ein Multimaster-"Treiber" (beinhaltet Slaves, da jeder Teilnehmer davon ausgehen muß, daß ein anderer Master ist, oder er selbst beim Versuch Master zu werden, den Arbitrierungsprozeß verlieren könnte (okok, theoretisch könnte man sich auch mehrere (Multi-)Master-Controller (auf USI-Basis) denken, und irgendwelche anderen (nicht-USI) Slaves... )
     
    #42 LotadaC, 26. November 2018
    Zuletzt bearbeitet: 27. November 2018
  3. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    401
    Zustimmungen:
    6
    Punkte für Erfolge:
    18
    Sprachen:
    C
    Habe die erste USI Verbindung gebaut. Geht von einem ATM1284P auf einen Atti 2313. Die Datenübertragung erfolgt in beide Richtungen. Es klappt, muss noch rausbekommen wie es genau geht und die ganze Sache etwas aufbohren
    achim
     
  • Über uns

    Unsere immer weiter wachsende Community beschäftigt sich mit Themenbereichen rund um Mikrocontroller- und Kleinstrechnersysteme. Neben den Themen Design von Schaltungen, Layout und Software, beschäftigen wir uns auch mit der herkömmlichen Elektrotechnik.

    Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  • Coffee Time

    Unser makerconnect-Team arbeitet hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und unser eigener makerconnekt-Server regelmäßig gewartet wird. Wir nehmen das Thema Datensicherung und Datenschutz sehr ernst und sind hier sehr aktiv, auch sorgen wir uns darum, dass alles Drumherum stimmt!

    Dir gefällt das Forum und die Arbeit unseres Teams und du möchtest es unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft, unser Team freut sich auch über eine Spende für die Kaffeekasse :-)
    Vielen Dank!
    Dein makerconnect-Team

    Spende uns! (Paypal)
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren und die Seite optimal für dich anzupassen. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden