文章标题

暑期关于arduino的初步学习

1.概况

  • 初步认识arduino MEGA 2560单片机
  • 熟悉arduino MEGA 2560单片机上的各个引脚的作用
  • 初步学习简单的arduino开发语言
  • 完成简单的设计实验

2.关于arduino MEGA 2560单片机的学习

是什么

Arduino Mega 2560是基于ATmega2560的微控制板,有54路数字输入/输出端口(其中15个可以作为PWM输出),16路模拟输入端口,4路UART串口,16MHz的晶振,USB连接口,电池接口,ICSP头和复位按钮。简单地用USB连接电脑或者用交直流变压器就能使用。

认识它的接口

arduino MEGA 2560示意图

其中包括

1. Serial(串口):
Serial 0:0 (RX) and 1 (TX);
Serial 1: 19 (RX) and 18 (TX);
Serial 2: 17 (RX) and 16 (TX);
Serial 3: 15 (RX) and 14 (TX).
2. PWM(脉冲调制):
2~13口;
44~ 46口
3. SPI(串行外设接口):
50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS)
4. LED :13
5. TWI:20 (SDA) 和21 (SCL)
6. 模拟输入:16个模拟输入 A0–A15
7. Reset
8. External Interrupts(外部中断):
2 (interrupt 0)
3 (interrupt 1)
18 (interrupt 5)
19 (interrupt 4)
20 (interrupt 3)
9. 电源 3.3v和5v供电

如何使用它

Mega2560使用Arduino IDE环境编程,通过板上自带的usb接口连接至电脑,进行上传。

编程语言的初步认识

基于对c语言的学习,能够比较快速的上手Arduino语言,主要认识和学习了一些特殊的函数。
1. 基本框架

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

2.目前掌握的函数

pinMode()
digitalWrite()
digitalRead()
analogRead()
analogWrite()
tone()
noTone()
delay()
Serial.println()
Serial.begin()

3.一些简单的小玩意

感应光灯

int potpin=A0;
int val=0;
int pinmod=9;
void setup() {
Serial.begin(9600);
}
void loop() {
val=analogRead(potpin);//  读取传感器的模拟值并赋值给val
Serial.println(val);//显示val 变量
if(val>510){
val=510;
}
else if(val>100){
val=val/2;
}
else{
val=0;
}
analogWrite(pinmod,255-val);
delay(200);//延时0.02秒

}

随着时间间隙增长的灯

int i=1000;
void setup ()
{
pinMode (2,OUTPUT);
}
void loop()
{ 
digitalWrite(2,HIGH);
delay(i);
digitalWrite(2,LOW);
delay(i);
i=i+500;
}

呼吸灯

int potpin=A0;
int pinmod=9;
void setup() {
Serial.begin(9600);
}
void loop() {
  for(int val=0;val<255;val++){
    analogWrite(pinmod,val);
    delay(20);
  }
  for(int val=255;val>0;val--){
    analogWrite(pinmod,val);
    delay(20);
  }
  analogWrite(pinmod,0);
  delay(500);

蜂鸣器

int buzzer=6;//设置控制蜂鸣器的数字IO脚
void setup() 
{ 
pinMode(buzzer,OUTPUT);//设置数字IO脚模式,OUTPUT为输出 
} 
void loop() 
{ 
digitalWrite(buzzer,HIGH);//发声音
delay(1);//延时1ms 
digitalWrite(buzzer,LOW);//不发声音
delay(1);//延时ms 

} 

4.目前任务

与同学合作完成一个简单的抢答器,预计实现抢答,加分,计时和惩罚功能。现在已经拟好初步计划报告,正在获取相关材料。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值