fixed gamma correction formula
This commit is contained in:
7
main.go
7
main.go
@@ -97,13 +97,14 @@ func (daemon *LedDaemon) receive() {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
v = int32(math.Min(math.Round(math.Pow(float64(v), readConfig.Pca9685.Gamma)), RESOLUTION))
|
vPerc := float64(v) / float64(RESOLUTION)
|
||||||
|
vPerc = math.Pow(vPerc, 1/readConfig.Pca9685.Gamma)
|
||||||
|
|
||||||
if pwm, ok := pwmMap[c]; ok {
|
if pwm, ok := pwmMap[c]; ok {
|
||||||
pwm.setPercentage(float32(v) / RESOLUTION * 100)
|
pwm.setPercentage(float32(vPerc * 100))
|
||||||
} else {
|
} else {
|
||||||
pwmMap[c] = pca9685.NewPwm(int(c))
|
pwmMap[c] = pca9685.NewPwm(int(c))
|
||||||
pwmMap[c].setPercentage(float32(v) / RESOLUTION * 100)
|
pwmMap[c].setPercentage(float32(vPerc * 100))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user