Rainbow.lib, die 'alte' in der Version 1.21

    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!

    • Habe mir einzel-LEDs besorgt, da ich nur eine LED brauche.
      Weil ich nicht gleich Code kopieren wollte, ohne diesen zu verstehen, habe ich selbst mal etwas gespielt.
      Auch wenn mein Code total außerhalb der Spezifikation und Timings liegt, funktioniert es mit einer LED zuverlässig.
      Ich kann es mir selbst nicht erklären, zumal ich bei der NULL des Protokolls die 0,35us einfach missachte.


      Quellcode

      1. $regfile = "m328pdef.dat"
      2. $crystal = 16000000
      3. $hwstack = 32
      4. $swstack = 10
      5. $framesize = 40
      6. $baud = 19200
      7. Config Portc.0 = Output
      8. Dim I As Integer
      9. Dim S As Byte
      10. Dim Farbe As Byte
      11. Dim R As Byte
      12. Dim G As Byte
      13. Dim B As Byte
      14. Declare Sub Ws2812
      15. G = 0
      16. R = 0
      17. B = 0
      18. Do
      19. Farbe = 90
      20. Call Ws2812
      21. Loop
      22. Sub Ws2812
      23. R = Farbe
      24. B = 254 - Farbe
      25. Dim Ii As Integer
      26. For Ii = 8 To 1 Step -1
      27. If G.ii = 1 Then
      28. Portc.0 = 1
      29. Waitus 1
      30. Portc.0 = 0
      31. nop
      32. nop
      33. nop
      34. Else
      35. Portc.0 = 1
      36. nop
      37. nop
      38. nop
      39. Portc.0 = 0
      40. End If
      41. Next
      42. For Ii = 8 To 1 Step -1
      43. If R.ii = 1 Then
      44. Portc.0 = 1
      45. Waitus 1
      46. Portc.0 = 0
      47. nop
      48. nop
      49. nop
      50. Else
      51. Portc.0 = 1
      52. nop
      53. nop
      54. nop
      55. Portc.0 = 0
      56. End If
      57. Next
      58. For Ii = 8 To 1 Step -1
      59. If B.ii = 1 Then
      60. Portc.0 = 1
      61. Waitus 1
      62. Portc.0 = 0
      63. nop
      64. nop
      65. nop
      66. Else
      67. Portc.0 = 1
      68. nop
      69. nop
      70. nop
      71. Portc.0 = 0
      72. End If
      73. Next
      74. End Sub
      Alles anzeigen