前言
又放暑假啦!!!\(^o^)/~
话说这次期末考试这么难啊......
时隔5天,我又回来了!
最近发现,自己的Arduino编程教程更新了一期,就再没有更新。
还有C++Easyx图形库教程。
(可怕的点赞量)
怎么没人看啊!!![痛苦]
TAT。。。。。。
即使没人看,我也要坚持下去!
上课!
正文
程序结构
Arduino程序必须包含setup()
和loop()
两个主要函数:
//void?好像在哪里见过?
void setup() {
// 初始化代码,仅运行一次
}
void loop() {
// 主循环代码,重复执行
}
变量与数据类型
(没了)
常用数据类型包括:
//蒽?
int var = 10; // 整数
float pi = 3.14; // 浮点数
char letter = 'A'; // 字符
bool flag = true; // 布尔值
const int MAX = 100; // 常量
引脚控制
数字引脚操作:
pinMode(13, OUTPUT); // 设置引脚模式
digitalWrite(13, HIGH); // 输出高电平
int val = digitalRead(2); // 读取数字输入
模拟引脚操作:
//开始看不懂
analogWrite(9, 128); // PWM输出(0-255)
int sensor = analogRead(A0); // 读取模拟值(0-1023)
控制结构
条件语句:
if (x > 0) {
// 执行代码
} else if (x == 0) {
// 执行代码
} else {
// 执行代码
}
循环结构
for (int i=0; i<10; i++) {
// 重复10次
}
while (x < 100) {
// 满足条件时循环
}
函数定义
自定义函数示例:
int addNumbers(int a, int b) {
return a + b;
}
Doge: A+B = C
串口通信
调试常用方法:
Serial.begin(9600); // 初始化串口
Serial.println("Hello"); // 发送数据
if (Serial.available()) { // 检查数据接收
char c = Serial.read(); // 读取数据
}
时间控制
延时函数:
//啊啊啊不想写了QAQ
delay(1000); // 毫秒延时
delayMicroseconds(500); // 微秒延时
数组与字符串
数组使用示例:
int arr[5] = {1,2,3,4,5};
String msg = "Arduino"; // 字符串对象
注释方式
单行注释:
// 这是单行注释
多行注释:
/* 这是
多行注释 */
注意事项
- 所有语句必须以分号结尾
- 区分大小写
- 避免在
loop()
中使用长延时 - 引脚编号需与实际硬件对应!
示例程序:Arduino 控制 LED灯
准备材料
◆LED灯 一个
◆Arduino开发板 一个
◆9V电池(也可以直接连接电脑)一个
◆杜邦线 两根
◆面包板 一个
◆1000Ω(注:" Ω"读欧米茄) 电阻一个
接线图
代码:
int pin = 1; //LED的管脚
void setup()
{
Serial.begin(9600); // 初始化串口
pinMode(pin, OUTPUT); //设置管脚为输出模式
}
void loop()
{
digitalWrite(pin, HIGH); //向管脚写入HIGH, 设置为高电平, 则LED灯亮
}