Hier ein Programm zur Ansteuerung von WS2801-Pixel per DMX
'#####################################
'# DMX zu WS2801 Konverter #
'# By Dreas99 #
'# mit Hilfe aus dem LED-Styles Forum #
'######################################
$regfile = "m328pdef.dat"
$crystal = 16000000
$hwstack = 40
$swstack = 32
$framesize = 32
Config Dmxslave = Com1 , Channels = 30 , Dmxstart = 1 , Store = 30 ' Channels und Store = Anzahl der DMX Kanäle = Anzahl der WS2801 Pixel x 3
Config Pinb.2 = Output 'SS-Pin als Ausgang konfiguriert
Portb.2 = 1 'SS-Pin = 1
Config Spi = Hard , Interrupt = Off , Data Order = Msb , Master = Yes , Polarity = Low , Phase = 0 , Clockrate = 4 , Noss = 1
Spiinit
Enable Interrupts
Do
Spiout _dmx_received(1) , 30 ' SPI Out: PB5 = CKI, PB3 = SDI vom WS2801
Waitms 10
Loop
Alles anzeigen
Das Programm sollte nach Anpassen von $regfile auf allen Atmega's mit 16Mhz Quartz und mindestens 1KB Ram laufen (getestet mit Atmega328P)
Viel Spaß bei ausprobieren
Andreas