9316| 2
|
[入门教程] 玩转micro:bit-用BXY玩PWM输出 |
都说平昌冬奥又冷又黑。 可是北京8分钟却是精彩绝仑,中国用AI展示了大国形象。 今天继续学习,PWM输出。 参考:http://docs.dfrobot.com.cn/bxy/inoutput.html 我们可以通过很快地切换电压的高低来控制LED的亮度或电动机的速度。这种技术称为脉宽调制(PWM)。 笔记: read_digital() 如果引脚为高电平则返回1,如果引脚为低电平则返回0。 write_digital(value) 如果value为1,将引脚设置为高电平;如果为0,就将其设置为低电平。 read_analog() 读取引脚的电压,并将其作为0(0V)和1023(意为3.3V)之间的整数返回。 write_analog(value) 将value作为PWM值输出。value可以是0(0%占空比)与1023(100%占空比)之间的数。 脉冲宽度调制PWM 板子上的引脚输出模拟信号的方式与音频扬声器不同,它不能够调整引脚上的电压,这些引脚只支持3.3V输出,或者被拉低为0V。但是我们仍然可以通过很快地切换电压的高低来控制LED的亮度或电动机的速度。这种技术称为脉宽调制(PWM),这就是下面的write_analog()方法。 以上您可以看到三种不同PWM信号的图表。这些都具有相同的周期,但它们具有不同的占空比(高电平占整个周期的比例)。 第一个由write_analog(511)生成,因为它的占空比为50%,高低电平各占一半,其结果和1.65V差不多。 第二个由write_analog(255)生成,占空比为25%。它的效果如同引脚上输出0.825V。 第三个由write_analog(767)生成,信号占空比为75%。它的电压是第二个信号的三倍,相当于在引脚上输出2.475V。 这适用于诸如电机本身具有很大惯性的设备或LED,但是在生成声波时效果不会很好。 这个板子本身只能产生方波的声音,这听起来就像是以前的电脑游戏(主要是因为这些游戏的声音就是方波产生的)。 目标: 用按钮实现LED灯亮度的分档调节。 例如,第一下亮,第二下更亮,第三下最亮,第四下灭。
有上面笔记的内容,程序不难理解。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed