用户工具

站点工具


ocrobot:alpha:kitone:tutorial17

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
ocrobot:alpha:kitone:tutorial17 [2019/07/15 02:37] – [代码] 董凯萍ocrobot:alpha:kitone:tutorial17 [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 +~~NOTOC~~
 +====== Analog Input(模拟输入) ======
  
 +<WRAP left round info 100%>
 +电位器是一个简单的,提供可变电阻的旋钮,可以作为控制器的模拟输入。这个例子中你要连接一个电位器在OCROBOT控制器的一个模拟脚来控制2号脚的LED闪烁频率。
 +</WRAP>
 +
 +===== ALPHA MEGA328-U核心 =====
 +==== 硬件 ====
 +  * [[ocrobot:alpha:parallelexpansion:index|ALPHA 并行扩展板]]
 +  * [[ocrobot:alpha:mega328-u:main|ALPHA MEGA328-U]]
 +  * [[ocrobot:alpha:11led:index|ALPHA 11 LED模块]]
 +  * [[ocrobot:alpha:potentiometer:main|ALPHA 电位器模块]]
 +==== 搭建电路 ====
 +
 +  - ALPHA MEGA328-U模块插入并行扩展板1号槽位。
 +  - ALPHA 11 LED模块插入并行扩展版1号槽位,堆叠于MEGA328-U上。
 +  - ALPHA 电位器模块插入并行扩展版2号槽位。
 +  - USB线连接计算机与ALPHA MEGA328-U。
 +{{ocrobot:alpha:kitone:led_电位器435.png?nolink|}}
 +==== 代码 ====
 +
 +
 +<code cpp>
 +/*
 +  Analog Input
 +  读取模拟输入,使用读取值亮灭
 +*/
 +int sensorPin = A0;    // 电位计连接A0
 +int ledPin = 2;      // LED连接2号数字口
 +int sensorValue = 0;  // 变量存储读取值
 +
 +void setup() {
 +  pinMode(ledPin, OUTPUT);    // LED为输出:
 +}
 +
 +void loop() {
 +  sensorValue = analogRead(sensorPin);      // 读取模拟值
 +  digitalWrite(ledPin, HIGH);    // 点亮LED
 +  delay(sensorValue);            // 延时:
 +  digitalWrite(ledPin, LOW);     // 熄灭LED:
 +  delay(sensorValue);             //延时:
 +}
 +</code>
 +
 +<WRAP left round tip 100%>
 +转动旋钮后,你就改变了电位计两边到中间的电阻。改变了两边脚到中间脚的电压,这样就给模拟输入提供了不同的电压。当旋钮一直往一个方向拧,引脚上电压就是0,也就是输入值为0。当旋钮一直往另外一个方向拧,引脚上电压就是5v,也就是输入值为1023。在这之间,[[reference:language:analogwrite|analogWrite()]] 返回一个介于0和1023的数值,相应的电压就加在了引脚。
 +</WRAP>
 +
 +[[ocrobot:alpha:kitone:main|返回上一级]]
ocrobot/alpha/kitone/tutorial17.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1