Porterw. pca 9555 vs. MPC 23017

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

    Hinweis kann nach Kenntnisnahme deaktiviert werden!

    • @Insanity.
      Puhhhhhhhhhhh!!!!!.seit den Jahren, wo ich mit Bascom hantiere habe ich noch nie Fusebits verstellt bzw verstellen müssen.
      Ich weiß garnicht wie und wo ich das auf der Bascomoberfläche machen müsste. Der Mega8 , (mein Test-Mega) hat schon viele
      verschiedene Codes gesehen .Ich hab schon einiges zusammengebaut und bis auf das Problem zwischen den Ohren hat eigendlich
      alles mehr oder weniger gut geklappt.
      Ich hab jetzt nochmal den PCA9555 mit dem dazu gehörigen Programm dran gehangen---auch um zu probieren ob ich viellleicht den Mega8
      abgeschossen hab---der läuft wunderbar mit dem PCA 9555 und dem Programm aus Beitrag 4
      Muß man denn bei dem MCP 23017 irgendwelche Fusebits verstellen???
      Ich hab anfangs irgendwo mal gehört, man soll als Anfänger besser die Finger davon lassen---und das hab ich dann auch gemacht und brauchte
      das bisher auch noch nie.
      Gruß
      Jürgen
      PS
      Noch eine Frage: der Modul braucht 10K Pullup´s auf dem Bus.Wenn ich jetzt mehrere Module dran hängen hab und jeder bekommt 10K Widerstände,
      alle hängen ja dann parallel sodas der Gesamtwiderstand dann mächtig schrumpft--- ist das egal ?????
      Quantenphysik hat keineswegs mit Fußpflege zu tun!---oder doch?
    • @Tamu
      wenn du da noch nichts gemacht hast, dann ist der noch auf 1Mhz. Ist von Werk so eingestellt.
      Mit ein paar Module geht es sicherlich noch. Wenn du alle 8 Module benutzt, hast du einen R von 1,25k bei 5V = 4mA
      Die Ausgänge schaffen das noch. Wie allerdings die Pegel dann ausschauen ??? meiner Meinung nach sollte das noch mit sehr kurzen Leitungen gehen.
      Oder du machst von 7 Modulen die SMD Widerstände ab, und nur das letzte hat welche.
      Hast du mal meinen letzten Code probiert ? gleiche Ergebnisse ?


      Gruß
      Horst
    • mir fällt gerade ein,vielleicht liegt es ja auch an den Lötstellen. Am Modul muße ich Steckerleisten anlöten--und die Platine ist auch noch doppelseitig---ja, und mit den "Adleraugen",das war einmal.
      Hinzu kommt noch das Problem mit dem Lot.Damals als sich das Blei verabschiedete hatte ich jede Menge von dem Bleihaltigen bestellt.Wenn jetzt die Platinen bzw die Lötpunkte darauf mit Bleifreiem
      verzinnt sind,könnte es vielleicht sein das sich das beist.
      Aber ich denke mal Nicht---denn meistens treten die Probleme nach Abschalten und Wiedereinschalten auf.
      Quantenphysik hat keineswegs mit Fußpflege zu tun!---oder doch?
    • @Pluto25
      Im Datenblatt gibt es 2 Möglichkeiten.
      IOCON.BANK = 1 dann ist die Adresse &H10
      IOCON.BANK = 0 dann ist die Adresse &H01

      Wenn ich mich nicht täusche dann benutze ich IOCON.BANK = 0 = &H01



      @Tamu
      Benutze mal nur meinen Code alleine ohne Änderung.
      Const Iodirb = &H01 ist richtig. Das ist nur die Adresse.
      In der I2c_ini schreibts du &H00 auf diese Adresse = alle Ausgänge
      &HFF auf diese Adresse = Alle Eingänge
    • Insanity schrieb:

      Wenn ich mich nicht täusche dann benutze ich IOCON.BANK = 0
      Sollte auch nach einem Reset so sein. Ich hatte Tabelle 3-4 betrachtet ohne mich weiter um das Bank zu "scheren" a_71_f9c57bbe
      Wäre es denkbar das bei seinem Module der Reset zu schnell fertig ist und es sich etwas einfängt bevor der Avr wach ist? "Geht manchmal".. "glimmen"

      Das IOCON ist das selbe Register mit 2(4) Adressen ?
    • Hallo Forum ,
      und vor allen Dingen vielen Dank an die die versucht haben mich bei dem Projekt zu unterstützen, den MCP 23017 zu bewegen.
      Ich musste feststellen, das meine Erfahrungen diesen MCP 23017 zu programmieren nicht ausreichen . Ich vermute das das Problem an den Zuweisungen der Register und den dazugehörigen
      Anweisungen im Programm liegt.Ich hatte mir mal das Datenblatt vom MCP....angesehen ----ja, und
      dann habe ich die Hände über dem Kopft zusammen geschlagen.Meine Kenntnisse reichen nicht
      aus um das alles zu verstehen.Wenn ich das Ding benutze dann muß ich auch--wenigstens halbwegs
      --verstehen was ich da beim programmieren mache.
      Zeitweise hatte ich auch die Vermutung das das Modul strubbelig ist und aus diesem Grund hatte ich neue bestellt. Und zwar direkt mit einem PCA 9555. Die habe ich heute bekommen ( 1 Tag
      Versandzeit). Die Dinger sind Spitze , jedem Menge Parallelpins,brauche nichts dran löten und das Dolle, die funktionieren mit meinem Code wunderbar und kosten nur 3,22€.
      Um nicht ganz nackt ,aus diesem Beitrag raus zugehen bzw zu pausieren und ohne in diesem Forum etwas beigetragen zu haben, setze ich zum Schluß nochmal das Bild von diesem Modul und
      den Code womit der Modul wunderbar läuft. Vielleicht kann es ja mal Jemand gebrauchen.
      Der Code ist zwar kein Monster-Ding ---soll es auch nicht sein---es ist nur ein Grundgerüst um wenigstens den PCA 9555 zum Leben zu erwecken.Der Code ist auch nicht 100%-ig von mir ,der Rahmen dafür stammt von einem Spezialisten , einem Administrator in diesem Forum, wie irgendwo in den ersten Beiträgen zu diesem Thema hier ansatzweise erwähnt.
      Nochmals vielen Dank an Horst und alle Anderen die sich zu diesem Thema „eingemischt“ haben.
      Gruß
      Jürgenbascomforum.de/index.php?attac…4cc9e961fb2c72241ff3ba729
      Quantenphysik hat keineswegs mit Fußpflege zu tun!---oder doch?

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Tamu ()

    • BASCOM-Quellcode

      1. 'In diesem Code werden nur Ausgänge des PCA 9555 angesprochen
      2. 'Port A0 und A1 (Zeile 25/26)
      3. 'Der Taster zum aktivieren der Schaltung liegt auf dem Master (Atmega 8)
      4. ' (Zeile 15-17)
      5. $regfile = "m8def.dat"
      6. $crystal = 1000000
      7. $hwstack = 40
      8. $swstack = 32
      9. $framesize = 60
      10. Config Sda = Portc.4
      11. Config Scl = Portc.5
      12. Config Portb.0 = Input 'Taster Start(Pin 14)
      13. Taster Alias Pinb.0
      14. Portb.0 = 1
      15. Const Schreibadr_z_pca = &B01000000
      16. Const Leseadr_vom_pca = &B01000001
      17. I2cinit
      18. Dim E0 As Byte
      19. Dim E1 As Byte
      20. Dim A0 As Byte
      21. Dim A1 As Byte
      22. I2cstart
      23. I2cwbyte Schreibadr_z_pca
      24. '------------------------------------
      25. I2cwbyte 6
      26. '--------------------------------------
      27. I2cwbyte &B00000000
      28. I2cwbyte &B00000000
      29. '--------------------------------------
      30. I2cstop
      31. Do
      32. '-----------PCA9555 schreiben:-------
      33. I2cstart
      34. I2cwbyte Schreibadr_z_pca
      35. '--------------------------------------
      36. I2cwbyte 2
      37. '--------------------------------------
      38. I2cwbyte A0
      39. I2cwbyte A1
      40. '--------------------------------------
      41. I2cstop
      42. '-----------PCA9555 lesen:-------------
      43. I2cstart
      44. I2cwbyte Schreibadr_z_pca
      45. I2cwbyte 0
      46. I2cstart
      47. I2cwbyte Leseadr_vom_pca
      48. I2crbyte E0 , Ack
      49. I2crbyte E1 , Nack
      50. '-------------------------------------
      51. I2cstop
      52. 'Beispiel Anweisung
      53. If Taster = 0 Then
      54. A1 = &B00001111
      55. A0 = &B11110000
      56. Else
      57. A1 = &B00000000
      58. A0 = &B00000000
      59. End If
      60. Loop
      61. End
      Alles anzeigen
      Quantenphysik hat keineswegs mit Fußpflege zu tun!---oder doch?