add second inside light
This commit is contained in:
25
main.go
25
main.go
@ -95,6 +95,10 @@ func main() {
|
||||
pwm3.Configure(machine.PWMConfig{
|
||||
Period: period,
|
||||
})
|
||||
pwm4 := machine.PWM4
|
||||
pwm4.Configure(machine.PWMConfig{
|
||||
Period: period,
|
||||
})
|
||||
pwm5 := machine.PWM5
|
||||
pwm5.Configure(machine.PWMConfig{
|
||||
Period: period,
|
||||
@ -114,6 +118,19 @@ func main() {
|
||||
}
|
||||
err := insideLight.InitPWM()
|
||||
|
||||
if err != nil {
|
||||
errs <- err
|
||||
} else {
|
||||
insideLight2 := lighthardware{
|
||||
rPin: machine.GP8,
|
||||
gPin: machine.GP10,
|
||||
bPin: machine.GP9,
|
||||
rPwm: pwm4,
|
||||
gPwm: pwm5,
|
||||
bPwm: pwm4,
|
||||
}
|
||||
err = insideLight2.InitPWM()
|
||||
|
||||
if err != nil {
|
||||
errs <- err
|
||||
} else {
|
||||
@ -132,7 +149,8 @@ func main() {
|
||||
} else {
|
||||
go cycleBrightness(insidepushed, insidebrightness)
|
||||
go cycleBrightness(outsidepushed, outsidebrightness)
|
||||
go loop(&insideLight, &outsideLight, insidebrightness, outsidebrightness)
|
||||
go loop(&insideLight, &insideLight2, &outsideLight, insidebrightness, outsidebrightness)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -161,7 +179,7 @@ func ledset(lpwm pwm, ledch uint8, brightness uint32) {
|
||||
lpwm.Set(ledch, (lpwm.Top()/brightnesspeak)*brightness)
|
||||
}
|
||||
|
||||
func loop(inside *lighthardware, outside *lighthardware, insidebrightness chan uint32, outsidebrightness chan uint32) {
|
||||
func loop(inside *lighthardware, inside2 *lighthardware, outside *lighthardware, insidebrightness chan uint32, outsidebrightness chan uint32) {
|
||||
var brightIn uint32
|
||||
var brightOut uint32
|
||||
inBrightChange := make(chan bool)
|
||||
@ -192,6 +210,9 @@ func loop(inside *lighthardware, outside *lighthardware, insidebrightness chan u
|
||||
ledset(inside.rPwm, inside.rCh, brightIn)
|
||||
ledset(inside.gPwm, inside.gCh, brightIn)
|
||||
ledset(inside.bPwm, inside.bCh, brightIn)
|
||||
ledset(inside2.rPwm, inside2.rCh, brightIn)
|
||||
ledset(inside2.gPwm, inside2.gCh, brightIn)
|
||||
ledset(inside2.bPwm, inside2.bCh, brightIn)
|
||||
case <-outBrightChange:
|
||||
ledset(outside.rPwm, outside.rCh, brightOut)
|
||||
ledset(outside.gPwm, outside.gCh, brightOut)
|
||||
|
Reference in New Issue
Block a user