【pyboardCN V2】PWM呼吸灯&ADC&PWMDAC
pyboard板子的四盏LED灯中,LED3和LED4即黄灯和蓝灯是支持PWM输出的,也就是可以改变亮度,邵版主给出的固件中,LED外设可以直接通过intensity()函数改变LED亮度。值得注意的是,intensity()函数的参数必须是int型,整数。我可以用while循环、for循环、delay结合的方式实现PWM呼吸灯:while True:
for value in range(0,255):
pyb.LED(3).intensity(value)
pyb.delay(10)
pyb.delay(500)
for value in range(0,255):
pyb.LED(3).intensity(255-value)
pyb.delay(10)
pyb.delay(500)
for value in range(0,255):
pyb.LED(4).intensity(value)
pyb.delay(10)
pyb.delay(500)
for value in range(0,255):
pyb.LED(4).intensity(255-value)
pyb.delay(10)
pyb.delay(500)
然后是通过ADC输入的方式改变PWM灯的亮度。pyboard中,ADC引脚都预先初始化好了的,直接用pyb.ADC(pyb.Pin('pin'))方法就可以启用ADC引脚,pin为具体的引脚,如我们都知道的PA0 PA1等,这次,我在PA0上接一个电位器,通过ADC值改变PWM的亮度,并打印ADC数值:
adc = pyb.ADC(pyb.Pin('A0'))
while True:
value=int(adc.read()/16)
pyb.LED(4).intensity(value)
print(value)
页:
[1]