2013-12-7 17:28:22 [显示全部楼层]
7426浏览
查看: 7426|回复: 0

[入门] Arduino入门套件体验报告from上海理工大学老师及学生

[复制链接]
很快,2013.11.13收到测试套装。我打开包装,各种小件整齐明朗地出现在面前,抽出时间找到网上教程,视频,源代码根据视频和手册文档搭好电路,下载软件Arduino-1.0.5-windows.exe
安装好驱动Arduino入门套件体验报告from上海理工大学老师及学生图1
运行arduino.exe,file+open  源代码 led1.pde  完成Verify/Compile
Tools+Board选aduino  UNO   Serial Port 选Com4  选upload按钮,糟糕,没有按照理想状态led灯闪烁,查原因,重新Compile,upload,还是没反应,再查,接地端没有插入插槽,直接插在主板插孔上,改插插槽,成功。还算顺利。
将代码中设定控制LED的数字IO脚改为9,int ledPin=9;硬件插槽也改插入9,重新Compile,upload,小灯也亮了,成功。感觉比底层编程的确简单,以前改io脚还要进行2进制转换呢。
一鼓作气,进行下一个实验,硬件软件连接好了,后面的实验应该更顺利一些了吧
下面测试广告灯,6个灯太啰嗦,改成3个灯,打开相应的源程序,把6个灯的参数改为3个灯,Compile,upload,出现了意料中的效果。
测试蜂鸣器实验:修改源代码,改为1个频率段的叫声,成功!
希望尝试通过按钮控制蜂鸣器的叫声,没有成功。根据中文教程用按钮控制led灯,按钮按下时,灯亮,放开时,本应该灯灭,但还是中亮,修改程序,加入一些延迟,灭灯的效果有改善。
while(1)
{
   i=analogRead(0);//读取模拟0口电压值
   if(i>1000)//如果电压值大于1000
     {digitalWrite(buzzer,HIGH);//设置第七引脚为高电平,点亮led灯
      delay(500);}
   else
      {digitalWrite(buzzer,LOW);//设置第七引脚为低电平,熄灭led灯
      delay(500);}
}
希望尝试通过按钮控制蜂鸣器的叫声,没有成功。但奇怪的是,蜂鸣器没有成功通过按钮来控制,而是通过手感应有控制效果,手靠近,蜂鸣器响,手离开,蜂鸣器不响。
int buzzer=7;
void setup()
{
pinMode(buzzer,OUTPUT);//
}
void loop()
{
int i;
while(1)
{
   i=analogRead(0);
   if(i>1000)
   {
      //while(1)  
      for(i=0;i<80;i++)
     { digitalWrite(buzzer,HIGH);
       delay(1);//延时1ms
       digitalWrite(buzzer,LOW);
       delay(1);//延时ms
     }
   }
      else
      {
       digitalWrite(buzzer,LOW);
      }
}
}
接下来测试数码管实验,找到数码管对应电路图,了解引脚和数码管上数字段的关系,根据教程接好电路,打开源程序,编译,烧写,编译时报core.a文件有重复,重新把usb下载线做下插拔。数码管还是不亮。看视频,发现除了要把和数字段有关的电路接好,还要接一个共阳极大到5V上。这样修改后,出现了理想的结果。
修改代码只对b,c段进行设置,使其只显示数字1。修改代码如下,调试,烧写,成功按所设想显示。
int b=6;
int c=5;
void digital_1(void)
{
unsigned char j;
digitalWrite(c,LOW);
digitalWrite(b,LOW);
}
void setup()
{
int i;
for(i=5;i<=6;i++)
   pinMode(i,OUTPUT);
}
void loop()
{
while(1)
{
   digital_1();
   }
}
增加“0”字符输出
void digital_0(void)
{
unsigned char j;
for(j=5;j<=11;j++)
   digitalWrite(j,LOW);
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,HIGH);
digitalWrite(dp,HIGH);
}
测试光敏电阻测试,按照教程接好线路图,打开源代码,调试,烧写,在不同的光照下测试,效果明显。
将蜂鸣器改成led灯,修改代码,调试,烧写,有效果。
void setup()
{
   pinMode(6,OUTPUT);
}
void loop()
{
   
     char i,j;
     while(1)
     {
       digitalWrite(6,HIGH);
        
}
      
  
}
温度报警器实验,按教程要求连接好电路图,打开源程序调试,烧写,由于室温相对恒定,绿灯一直亮。用冰块和热水杯去影响温度传感器,红灯和黄灯分别亮。
体会:
对于上层程序,有C语言基础的话,简单易懂
对于套件:分类明确,清晰,对初学者对些小部件的认识很有帮助。
以后会继续关注物联网,机器人相关的芯片及项目。
进行了一些基础实验后,也请感兴趣的同学测试了套件。
下面是尚静同学的感受及测试实验。
经过近半个月对Arduino入门套件的学习和使用,我深深地被这款开源电子原型平台吸引住了。看得出,这款套件是精心为初学者设计的一款学习工具。它颠覆了我以往对单片机等电子器件入门难的一贯印象,着实给了我一个很大的惊喜。
Arduino套件为有意于电子制作又苦于入门难的人提供了绝佳的学习平台。他们可以避开艰涩的理论和技术学习,直接从应用着手快速入门进行电子制作。学习该套件几乎不需要任何基础,只要有兴趣,小学生也可以在很短的时间内完全掌握它,并用它来开发自己的作品。
Arduino能通过倾斜开关、LM35温度传感器、红外接收管和光敏电阻等传感器来感知环境,并通过LED灯、蜂鸣器、 8段数码管和9g迷你舵机等元件来反馈和影响环境。利用各式各样的元器件,我做了多彩LED灯、光控声音、抢答器、温度报警及倾斜开关等多个实验,并自己编写代码,实现了“跑马灯”实验,装置连接图和实验效果图如下所示。
Arduino入门套件体验报告from上海理工大学老师及学生图2Arduino入门套件体验报告from上海理工大学老师及学生图3与套件配套的是详尽的图文及视频教程,每一节实验都有必备的图文说明和例子程序。视频教程详细讲解了各元器件的接线方法,而且接线过程清晰可见,有助于初学者对使用方法的学习和掌握。此外,由于Arduino的开源性,相关的学习资料非常容易获得,这也为它的推广提供了有利条件,相信在不久的将来它将引领一个新的电子时代。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail