Ameba Arduino: [RTL8195] [RTL8710] PWM – 使用PWM让LED灯泡呈现渐暗与渐亮的效果

材料准备

  • 面包板 x 1
  • Ameba x 1
  • LED 灯泡 x 1
  • 1 KΩ 电阻

范例说明

Fade这个example里,使用PWM让LED灯泡渐暗与渐亮。 PWM是利用数位讯号模拟成类比讯号的方式,它在一段时间内,藉由调整3V3与0V出现的时间比例,达到输出不同的平均电压。
以下图为例,随着3V3出现的比例降低,平均电压也跟着降低:




于是我们利用PWM,让LED因为平均电压的改变而达到渐暗与渐亮的变化。

要使用这个案例,请从 “File” -> “Examples” -> “01. Basics” -> “Fade” 打开这个 example:



这个范例里,使用的Pin是D9, 所以我们这样接线:


 
RTL8710 的接线图如下:

2-3

上传程式码之后,按下Ameba的Reset按钮,就可以看到LED灯泡随着时间渐暗与渐亮。

 

程式码说明

我们使用的是与Arduino同一份程式码,所以可以参考Arduino的Fade范例文件:
https://www.arduino.cc/en/Tutorial/Fade

以及Arduino的PWM参考文件:
https://www.arduino.cc/en/Tutorial/PWM
在Setup里面, 使用pinMode决定D9为output:
https://www.arduino.cc/en/Reference/PinMode
使用analogWrite决定输出的频率(0~255):
https://www.arduino.cc/en/Reference/AnalogWrite