# REM 무작위로 그리고 독립적으로 제어하는 간단한 PICAXE 08m 기본 프로그램 RGB LED의 모든 3 색의 밝기 진정 patterms을 (무드 램프에서와 같은) 만들기. 자세한 내용은 제 블로그 http://andrey.mikhalchuk.com을 참조하십시오 당신은이 코드를 원하는 건 뭐든지 할 자유예요, 그냥 제 블로그 http://andrey.mikhalchuk.com를 언급
코멘트에, 그래서 사람들은 업데이트된 코드를 찾을 수 있습니다. 감사합니다!
이 코드가 품질을 충족하지 않는 경우이 PICAXE에 대한 내 첫 프로그램으로, 사과
기대와 얼마나 좋은 코드에 대한 harms 자신의 감정이 :) 같이 표시됩니다
# endrem
# picaxe 08m
setfreq M4
; 구성
심볼 속도 = 3; 높은 색 변화 속도 값이 작은
심볼 SPEED_VARIATIONS = 7; 그것이 얼마나 다양한 색상의 변화 속도를 사용해야 정의
;지도 핀
기호 RED0_PIN = 0
기호 GREEN0_PIN = 1
기호 BLUE0_PIN = 2
; 가상의지도 핀 값
; 핀 값은 LED의 현재 밝기입니다
기호 red0 = B0
기호 green0는 = 지하 1 층
기호 blue0 = B2
; 가상의지도 pin_deltas
; 델타 밝기 변화의 속도입니다
기호 red0_delta은 = B3
기호 green0_delta = B4
기호 blue0_delta은 = B5
; 서브루틴을위한 임시 값
기호 delta_w은 = W3
심볼 TMP는 = B7
; 서브루틴 매개 변수
기호 핀 = B8
기호 발은 = B9
기호 델타 = B10
; 모두 초기화
red0 = 0
green0 = 70
blue0 = 200
red0_delta = 1
green0_delta = 5
blue0_delta = 9
; 서보 모드를 시작
; "servopos RED0_PIN, 255이"오프 LED를 렌더링합니다!
; "servopos RED0_PIN, 0은"정말 희미하게하지만, 점등. 거기가 PICAXE의 버그?
서보 RED0_PIN, 255
서보 GREEN0_PIN, 255
서보 BLUE0_PIN, 255
;이 코드는 arduino의 루프 () 같다
주 :
; 함수 적은 환경에서 함수 호출을 에뮬레이트
핀 = RED0_PIN : 발 = red0 : 델타 = red0_delta : gosub set_color_val : red0 = 발 : red0_delta = 델타
핀 = GREEN0_PIN : 발 = green0 : 델타 = green0_delta : gosub set_color_val : green0 = 발 : green0_delta = 델타
핀 = BLUE0_PIN : 발 = blue0 : 델타 = blue0_delta : gosub set_color_val : blue0 = 발 : blue0_delta = 델타
고토 메인
,이 잠수함은 LED와 삼각주의 밝기를 조정합니다
set_color_val :
발 = 발 + 델타
만약 델타 <128과 발 <델타 후; fwd
랜덤 delta_w
델타 = 델타 %의 SPEED_VARIATIONS + 1
델타 = 255 - 델타
발 = 255
elseif 델타> = 128와 발> 다음 = 델타; 역방향
랜덤 delta_w
델타 = 델타 %의 SPEED_VARIATIONS + 1
발 = 0
endif
tmp를 = 발 - 1; servopos 버그 해결
; 그래, servopos는 첫 번째 인수로 전용 상수 걸립니다 : (
핀 = RED0_PIN 후 경우
servopos RED0_PIN, tmp를
그리고 elseif 핀 = GREEN0_PIN
servopos GREEN0_PIN, tmp를
그리고 elseif 핀 = BLUE0_PIN
servopos BLUE0_PIN, tmp를
endif
일시 정지 속도
반환
; 데모를 위해 YouTube에 제 다른 블로그 http://rtfms.com 및 비디오 블로그 RTFMs를 참조
, 이것은 에피소드 # 7으로 덮여 있습니다 : 마이크로 컨트롤러는 보석을 충족