问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

基于Arduino的电位器控制

创作时间:
作者:
@小白创作中心

基于Arduino的电位器控制

引用
CSDN
1.
https://blog.csdn.net/weixin_42255385/article/details/143798395

一.简介

基于Arduino,使用电位器控制PWM输出,从而实现LED亮暗的渐变效果。

二.原理

1.AD转换器:

ADC是Analog-to-Digital Converter(模数转换器),A指模拟信号,D指数字信号。
AD转换器功能:将模拟信号转换成数字信号。

2.B10K电位器:

电位器由电阻体和滑动系统组成,即通过一个滑动触电在电阻上移动,获得部分电压输出,也称为滑动变阻器。

B10K点位器有三个引脚,负极(-),输出(out),正极(+)。

引脚连接:
  • 将Arduino的模拟端口A0连接电位器的out引脚,并给电位器供电(+5v)。
  • 将PWM引脚3连接LED的正级,LED负极连接GND。
实验原理:

通过旋转电位器上的滑杆改变输出模拟值,通过映射为相应的PWM值,从而控制LED灯的明亮程度。

三.源码

#define dWQInput 0
#define ledOutput 3
void setup() {
  // put your setup code here, to run once:
  pinMode(dWQInput,INPUT);
  pinMode(ledOutput, OUTPUT);
  Serial.begin(9600);
}
void loop() {
  // put your main code here, to run repeatedly:
  int value = analogRead(dWQInput);//读取AD值
  value = map(value,0,1023,0,255);//把AD值0-1023 缩放为 0-255
  analogWrite(ledOutput, value);
  Serial.print("value:");
  Serial.println(value);
}

四.运行效果

LED的明亮程度随着电位器的旋转发生变化。

打印模拟端口A0的输入值,该值随着电位器的旋转发生变化,范围:0~1023。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号