Arduino入门笔记【1】
刚刚接触这个东西只知道这是类似于单片机的开发板,可以做一些单片机实现或者不能实现的东西,但是比单片机要简单得多。
Arduino到底是什么?
维基百科上的描述是:Arduino是一块开发板的微控制器和一整套的开发软件,它的硬件包含一个以AVR单片机为核心的开发板和其他各种I/O板。软件包括一个标准编程语言开发环境和在开发板上运行的烧录程序。
简单的说,Arduino包括了硬件和软件,拥有自己的硬件和开发软件。
第一件事:
拿到开发板后的第一件事就是使用它,首先要将它和电脑连接起来。在这之前需要了解的就是在手中的开发板的型号,我的是Arduino UNO,是Arduino USB系列的最新版,芯片用的是ATmega328p,也就是板子上稍微大一点的,有许多引脚的塑料块。
我用到的东西:Arduino UNO开发板,一根usb电缆,1.0.5版本IDE.
将usb的一端连在开发板上,另外一端连接到PC上。
第一个问题:
由于win7是精简版的,windows无法自动安装开发板的驱动,手动安装提示windows找不到驱动文件。查看C:\Windows\inf\setupapi.dev.log,这个文件包含了有关即插即用设备和驱动程序安装的信息,当然它也记录你Arduino驱动安装失败的原因。发现缺少文件夹mdmcpq.inf_x86_neutral_9f203c20b6f0dabd,没错,就是这么长,不同版本的windows缺少的文件也不一样,详细的要看log文件中的记录,由于这是系统文件,所以首先赋予管理员权限(方法:右键一下,你就知道),新建一个同名文件夹,将你从网上下载的缺失文件拖入其中(我是拖进去的,由于权限问题不能复制进去)。这时候就大功告成啦,重新安装驱动试试看!
总结一下:
安装驱动出现问题一般出现在精简版的windows里面,正版一般不会出现问题,精简版缺少了一些文件,详情看自己的setupapi.dev.log文件,看这个文件的时候直接拖到最后面,从后往前找。驱动正确安装以后再设备管理器里能找到开发板对应的串口。
小实验一个:
好了,把驱动问题解决了之后,打开IDE,连上开发板,选择串口。在IDE的tools下的board下选择你的开发板,这个主要根据板子上的芯片来确定,我的是ATmega328p,所以选择Arduino UNO,之后先用IDE自带的exp测试一下,我用的是Blink:
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain.
*/ // Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = ; // the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
} // the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
delay(); // wait for a second
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
delay(); // wait for a second
}
一眼看过去这个程序是很简单的类C语言。Arduino程序必须包含void setup(){}和void loop{}两个函数,必须必须,否则Arduino将不会工作,setup函数只在程序开头运行一次,之后一直在loop函数中循环。这个程序让LED13,也就是板子上的一个很小的LED亮1s再灭1s,一直循环亮灭亮灭…
今天就到这里,明天继续。
Arduino入门笔记【1】的更多相关文章
- Arduino入门笔记(4):用蜂鸣器演奏音乐并配有LED闪烁
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino板 https://item.taoba ...
- Arduino入门笔记(3):单LED闪烁
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 在搭建好arduino开发环境(http://www.cnblogs.com/xi ...
- Arduino入门笔记(6):温度传感器及感温杯实验
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino板 :https://item.taob ...
- Arduino入门笔记(1):认识Arduino
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 各种网站论坛里经常看到网友DIY各种遥控小车.机器人什么的,一直很好奇,很想学习一 ...
- Arduino入门笔记(2):Arduino的开发和virtualbreadboard仿真环境
欢迎加入讨论群 64770604 1.开发环境 (1)下载开发环境 Arduino的开发环境从http://arduino.cc/en/Main/Software官网下载即可,分为windows版本. ...
- Arduino入门笔记(5):1602液晶实验(实现时钟)
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino板 https://item.taoba ...
- Arduino入门笔记(9):蓝牙模块及第一辆蓝牙遥控小车
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino UNO板 https://item.t ...
- Arduino入门笔记(8):利用12864和ADXL345学习重力感应控制
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino UNO板 https://item.t ...
- Arduino入门笔记(7):利用1602、1302实现时钟和定时器
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 常常听到老妈在做饭时说“开锅15分钟后叫我一下”,为何不做个定时器,来提醒老妈呢 ...
随机推荐
- Java提高篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序
静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行.执行顺序优先级:静态块,main(),构造块,构造方法. 构造函数 public H ...
- simple_tag,filte,分页以及cookie和装饰器
自定义simple_tag 内置的方法 首先Django中包含了很多内置的方法: 这里通过lower实现 在views视图函数中写如下代码: def tp3(request): name= " ...
- sys.syslockinfo--master..syslockinfo
from:http://technet.microsoft.com/zh-cn/library/ms189497.aspx 重要提示 将此 SQL Server 2000 系统表作为一个视图包含进来是 ...
- layoutSubviews
- 使用EF Oracle实现DevExpress绑定大数据的ServerMode模式
前提:需要引入EntityFramework组件,注意几个使用点后使用上其实比较简单. 一.引入Oracle EF支持组建 1.可手动引入附件中的DLL(需手动合并web.config配置) 2.也可 ...
- 当display=none时,元素和子元素高度为0的解决办法
在前端中为了某种需要,我们需要获取display=none的元素或者子元素的实际高度来进行某些处理,然而html对display=none的元素和子元素是不进行渲染的,如果我们没有规定这些元素的高度那 ...
- hibernate配置文件详细解析
在javaweb开发中,hibernate框架的是常用的,能帮我们节省大量的时间,以下是hibernate的配置文件解析. hibernate配置文件的默认名为:hibernate.cfg.xml 默 ...
- String空值判定
不能用 str.equalsIgnoreCase(null). 写了个判定的方法,供以后直接调用: public static boolean isEmpty(String str) { if (st ...
- listview和checkbox的冲突的用法
package com.exaple.music; import java.util.List; import java.util.Timer; import java.util.TimerTask; ...
- PostgreSQL入门
这篇文章主要介绍我在最近工作中接触到的数据库PostgreSQL,做个入门记录,以便自己日后回顾. 1.下载安装,安装配置过程可以参考http://blog.chinaunix.net/uid-354 ...