Python代码在应该明亮的地方会导致褪色的新像素颜色

Python代码在应该明亮的地方会导致褪色的新像素颜色,python,neopixel,Python,Neopixel,我使用的是一个连接到32(8x4)个灯光的neopixel的微比特,在我编写的代码中,我将代码指定为蓝色(或任何颜色),结果是非常弱和褪色的颜色 from microbit import * import time import neopixel o=20 RED = (255, 0, 0) YELLOW = (255, 150, 0) GREEN = (0, 255, 0) CYAN = (0, 255, 255) BLUE = (0, 0, 255) PURPLE = (180, 0, 25

我使用的是一个连接到32(8x4)个灯光的neopixel的微比特,在我编写的代码中,我将代码指定为蓝色(或任何颜色),结果是非常弱和褪色的颜色

from microbit import *
import time
import neopixel
o=20
RED = (255, 0, 0)
YELLOW = (255, 150, 0)
GREEN = (0, 255, 0)
CYAN = (0, 255, 255)
BLUE = (0, 0, 255)
PURPLE = (180, 0, 255)
WHITE = (255,255,255)
BLACK= (0,0,0)
pixels = neopixel.NeoPixel(pin0, 32)
left=[0,8,16,24]
right=[7,15,23,31]
up=[0,1,2,3,4,5,6,7]
down=[24,25,26,27,28,29,30,31]
while True:
    if accelerometer.is_gesture("up"):
        if o not in up:
            o -= 8
    elif accelerometer.is_gesture("down"):
        if o not in down:
            o += 8
    elif accelerometer.is_gesture("left"):
        if o not in left:
            o -= 1
    elif accelerometer.is_gesture("right"):
        if o not in right:
            o+=1
    for i in range(32):
        if i != o:
            pixels[i] = RED
    pixels[o] = BLUE
    pixels.show()
    time.sleep(0.1)

尽管我指定了一个明亮的蓝色(0,0255),但与我在没有背景色的情况下运行它时得到的全蓝色相比,我得到的结果只是一个微小的蓝色闪烁。所有的红色都很好,也很明亮,所以我真的不明白为什么蓝色会显得那么弱。当我将背景颜色从红色更改为黑色时,蓝色是正确的亮度,但当我尝试任何其他强颜色时,它会再次褪色。

您好,请注意,颜色感知不是编程主题。正如你所说的,当BG是红色时,<代码>(02505)<代码>看起来已经褪色了,因为黑色BG蓝光看起来不错,所以这个问题实际上是关于感知的,你可能会考虑如果你真的需要它,用蓝色的LED来建立你自己的LED阵列,它有更高的CD /力士。我的意思是,它客观上比它应该的弱,所以我想知道while循环的代码中是否存在可能导致这种情况的错误。问题不仅在于它“看起来”在红色的衬托下褪色,还在于它的结果是只有一点蓝色的闪烁,与我指定的(0,0255)相反