[BASCOM] Wyświetlacz na 2x74HC595

Gotowe kody obsługi układów elektronicznych udostępnione przez użytkowników forum.
ODPOWIEDZ
Awatar użytkownika
niveasoft
Posty: 1207
Rejestracja: 17 sie 2015, 12:13
Kontakt:

[BASCOM] Wyświetlacz na 2x74HC595

Post autor: niveasoft » 23 mar 2017, 0:49

Może się komuś przyda. Na stronie producenta nie ma schematu więc może pozwoli komuś skrócić czas uruchomienia w swoim projekcie bo odpadnie rozkminianie co z czym jest połączone. :D
Wyświetlacz musi być multipleksowany a raczej dane muszą być odświeżane/wysyłane co mniej wiecej 3ms (okolice 300Hz)
  1. $regfile = "m328pdef.dat"
  2. $crystal = 8000000
  3. $hwstack = 64
  4. $swstack = 32
  5. $framesize = 128
  6.  
  7. 'ROBOT DYN 6-DIGIT LED DISPLAY
  8. ' 6x50Hz=300Hz refresh rate ~3ms period
  9.  
  10. Rck_pin Alias Portd.0 : Config Rck_pin = Output
  11. Clk_pin Alias Portd.1 : Config Clk_pin = Output
  12. Dio_pin Alias Portd.2 : Config Dio_pin = Output
  13.  
  14.  
  15. Dim Arr(2) As Byte , Mux As Byte
  16. Dim Muxw As Word At Arr(1) Overlay
  17.  
  18. '           321 654
  19. Arr(1) = &B01110111
  20. Arr(2) = &B10111111                     '
  21. '          *GFEDCBA
  22. '   A
  23. '   _
  24. ' F|_|B
  25. ' E|_|C
  26. '   D
  27. '
  28.  
  29. Do
  30.  
  31.  Incr Mux : If Mux > 6 Then Mux = 1
  32.  
  33.   Arr(1) = Lookup(mux , Displays)
  34.   Arr(2) = Lookup(mux , Digits)
  35.  
  36.   Shiftout Dio_pin , Clk_pin , Muxw , 0
  37.    Set Rck_pin : Reset Rck_pin
  38.  
  39.  Waitms 3
  40. Loop
  41. End
  42.  
  43. Displays:
  44. '       dummy          1            2            3            4            5           6
  45. Data &B00000000 , &B00010000 , &B00100000 , &B01000000 , &B00000001 , &B00000010 , &B00000100
  46.  
  47. Digits:
  48. '        0             1            2            3           4            5
  49. Data &B11000000 , &B11111001 , &B10100100 , &B10110000 , &B10011001 , &B10010010
  50. '        6             7            8            9        10 blank
  51. Data &B10000010 , &B11111000 , &B10000000 , &B10010000 , &B11111111
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
ODPOWIEDZ