# REM Einfache PICAXE 08m Basic-Programm, zufällig und unabhängig kontrolliert Helligkeit aller 3 Farben in einem RGB-LED Erstellen beruhigende Schnitten arbeitet (wie in einer Stimmung Lampe). Siehe mein Blog http://andrey.mikhalchuk.com für mehr Details Sie sind frei zu tun, was du mit diesem Code wollen, nur erwähnen, mein Blog http://andrey.mikhalchuk.com
in den Kommentaren, so dass die Leute finden aktualisierten Code. Vielen Dank!
Dies ist mein allererstes Programm für PICAXE, ich entschuldige mich, wenn dieser Code nicht Ihren Qualität
Erwartungen und Harms deine Gefühle darüber, wie gut Code sollte wie aussehen :)
# Endrem
# PICAXE 08m
setfreq m4
; Config
Symbol SPEED = 3, je kleiner der Wert, desto höher die Geschwindigkeit der Farbwechsel
Symbol SPEED_VARIATIONS = 7; legt fest, wie viele verschiedene Farbwechsel Geschwindigkeiten sollte es zu benutzen
; Pins
Symbol RED0_PIN = 0
Symbol GREEN0_PIN = 1
Symbol BLUE0_PIN = 2
; Karte PIN-Werte zu mem
, Pin-Wert ist die aktuelle Helligkeit der LED
Symbol red0 = b0
Symbol green0 = b1
Symbol blue0 = b2
; Karte pin_deltas zu mem
; Delta ist die Geschwindigkeit der Helligkeitsänderung
Symbol red0_delta = B3
Symbol green0_delta = B4
Symbol blue0_delta b5 =
; Temperatur Werte für die Unterroutine
Symbol delta_w = w3
Symbol tmp = B7
; Unterprogramm Parameter
Symbol pin = B8
Symbol val = B9
Symbol delta = B10
; Alles initialisieren
red0 = 0
green0 = 70
blue0 = 200
red0_delta = 1
green0_delta = 5
blue0_delta = 9
; Servo-Modus starten
; Beachten Sie, dass "servopos RED0_PIN, 255" LED rendert off!
; "Servopos RED0_PIN, 0" macht es wirklich dunkel, sondern leuchtet. Ist das ein Bug in PICAXE?
Servo RED0_PIN, 255
Servo GREEN0_PIN, 255
Servo BLUE0_PIN, 255
; Dieser Code ist wie loop () in Arduino
Haupt:
; Emuliert Funktionsaufruf in Funktion weniger Umwelt-
pin = RED0_PIN: val = red0: delta = red0_delta: gosub set_color_val: red0 = val: = Delta red0_delta
pin = GREEN0_PIN: val = green0: delta = green0_delta: gosub set_color_val: green0 = val: = Delta green0_delta
pin = BLUE0_PIN: val = blue0: delta = blue0_delta: gosub set_color_val: blue0 = val: = Delta blue0_delta
Zur Hauptseite
; Diese Untergruppe passt die Helligkeit der LED-und Delta-
set_color_val:
val = val + Delta
wenn delta <128 und Val <delta dann, FWD
Random delta_w
delta = delta + 1% SPEED_VARIATIONS
Delta = 255 - Delta
val = 255
elseif delta> = 128 und Val> = delta dann, Reverse
Random delta_w
delta = delta + 1% SPEED_VARIATIONS
val = 0
endif
tmp = val - 1; servopos Bug Workaround
; Ja, nimmt servopos einzige Konstante als erstes Argument: (
wenn Pin = RED0_PIN dann
servopos RED0_PIN, tmp
elseif pin = GREEN0_PIN dann
servopos GREEN0_PIN, tmp
elseif pin = BLUE0_PIN dann
servopos BLUE0_PIN, tmp
endif
Pause SPEED
zurückkehren
, Siehe meinen anderen Blog http://rtfms.com und Video-Blog auf YouTube RTFMs für Demo
, Dies wird in der Episode # 7 abgedeckt: Microcontroller Meets Schmuck