Arduino -8位LED灯显示电位器位置电路设计实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARDUINO -8位LED灯显示电位器位置电路设计实验报告

2018年12月

Arduino -8位LED灯显示电位器位置电路设计实验报告

一、实验目的

通过电路设计、编程、硬件连接调试等实现用8位LED灯显示电位器的位置的简单功能

二、硬件设备

笔记本电脑、单片机、面包板、8个LED灯、电位器、杜邦线、下载线等。

三、所需软件

编程软件:官方标准开发软件arduino-1.8.8-windows

四、画连线图

图1共阳极连线图

五、控制程序

// 引脚定义

const int analogPin = A0; // 模拟输入

const int ledCount = 8; // led个数,静态常量,不可改动

int ledPins[] = { 1,2, 3, 4, 5, 6, 7,8 }; // 对应的led引脚

void setup()

{

// 循环设置,把对应的led都设置成输出

for (int thisLed = 0; thisLed < ledCount; thisLed++)

{

pinMode(ledPins[thisLed], OUTPUT);

}

}

void loop()

{

// 读取电位器的值

int sensorReading = analogRead(analogPin);

// 把对应的值转化成0-最大led个数,这里是8

int ledLevel = map(sensorReading, 0, 1023, 0, ledCount);

// 循环对比输出到led:

for (int thisLed = 0; thisLed < ledCount; thisLed++)

{

if (thisLed < ledLevel)

{

digitalWrite(ledPins[thisLed], HIGH);

}

else

{

digitalWrite(ledPins[thisLed], LOW);

}

}

}

六、连接调试

将程序保存。连接实物,搭建硬件平台,将程序下载到单片机中,如图2所示。调节电位器到不同的位置,观察LED的量灭情况。(另附视频于附件中)

图2 实物连线图

七、实验结果

如图3,将电位器从最左端顺时针旋转到最右端,8位LED小灯依次亮起;在最左端,LED小灯全灭状态,在最右端,8位LED小灯全部亮起,达到实验目的。

图3 实验效果图

相关文档
最新文档