Arduino使用的单片机型号大全是什么?

后使用快捷导航没有帐号?
中国电子DIY
科技成就未来
亲爱的游客,欢迎!
已有账号,请
如尚未注册?
在线时间:8:00-16:00
000-000-0000
电子DIY手机版
随时随地掌握网站动态
扫描二维码
免费获取邀请码
<div class="mn"
推广arduino——初识arduino
本帖最后由 乡间河太急 于
21:05 编辑
第一次知道arduino,是在《无线电》官网。
一篇名为“arduino为什么这么红”的文章,挂在首页好长一段时间。只是我一直并没有给于它太大的关注,因为这个单词实在太不起眼了。
直到后来,将首页的几乎所有感兴趣的文章看完后,实在没啥可看了,才想要去一窥究竟,到底何方神圣,能在首页挂那么久。(后来证明,它首页更新实在太不给力了!)
这篇文章,让我对arduino这个名字印象深刻,尽管看完文章后,我不知道这个名字的准确发音,也记不住它怎么拼写。
嵌入式、互动的艺术、玩具、开源、“Arduino控制板 + 外围电路 + 程序编写 = 整个世界!”
所有的这一切字眼,不正是自己爱上电子、学习单片机、踏上电子之路的初衷么?
尽管arduino不算贵,但是对于我这样一个苦学生来说,还是只能远观的。但是,可以这么说,它就像是一个结,一直在我心中晃荡着。毕竟对于从来没接触过而自己却一直挂记着的东西,并不多。所以,我一直计划着要拥有一块自己的arduino。
大约半年后,无意中在淘宝里看到,有个挺出名的网站在搞促销,arduino板子限时打折!经过反复琢磨,一块leonardo被我据为己有,那种感觉,特爽。就像小时候,得到一个心仪很久的玩具,有童年的男孩子都能体会的。
虽然买回来后并没有玩过多少次(因为我还有很多东西要学,不能太依赖开源),不过我还是很喜欢它,总爱向身边的朋友介绍它。
朋友们也总是问我,你买来干嘛?
“玩啊!”
我还是挺想看到自己论坛里面有人关注arduino的,这样我就不用老跑到别的论坛去看作品、学习。
每次一开电脑就点开十几个网站很辛苦的。
上面提到的文章我在这里贴出来了,为了区分,用不同的颜色吧。
Arduino为什么这么红?(上)
相信对嵌入式开发感兴趣的朋友最近一定不会对一个新名词陌生——Arduino。尤其对初学者来说,恐怕都听到过“嵌入式开发从哪里上手最好?Arduino!”这样的说法。那么Arduino到底是什么呢?是一种新的控制芯片?还是一种新的开发软件呢?
首先我们先看看Arduino的实物图,下面是最常见的一种Arduino实物图片(关于Arduino的分类,我们会在后面详述):
1.jpg (62.47 KB, 下载次数: 40)
14:37 上传
图中已经用红线根据功能将各个模块区分出来,相信对单片机开发稍有了解的朋友一定已经发现,这不就是一个以AVR单片机最小系统为核心的控制板吗?
不错,Arduino就是以ATMEL公司的AVR单片机为核心的单片机控制板,板上除了ATmega168最小系统电路外,还包含了稳压电路,USB转串口电路,一些指示用的LED,以及一些扩展用的电路插座。
仅仅一个单片机最小系统,为何能风靡欧美台湾的学生爱好者呢?
下面我们以图表的形式来比较一下单片机裸机、市面上一般的单片机开发板和Arduino之间的比较。
2.jpg (62.39 KB, 下载次数: 23)
14:39 上传
上面的表格中列出了三种选择方案的最直观比较(表中没有比较购买渠道的便利性比较,随着网络购物的普及,这一点已经不再成为爱好者们需要特别关注的问题),看起来似乎Arduino并没有特别的优势,那么为什么Arduino会得到如此热度的追捧呢?
1.gif (3.15 KB, 下载次数: 18)
14:40 上传
要回答这个问题,我们必须首先回顾一下Arduino的发展历程。2005年,意大利 Ivrea 一家高科技设计学校的老师Massimo Banzi为了能给学生们提供一种便宜好用的微控制器平台,与当时在这所学校做访问学者的西班牙籍芯片工程师David Cuartielles合作设计了最初的Arduino电路板。随后Arduino便开始迅速的在欧洲流行起来,并且逐渐将春风吹到了美国、日本、台湾、香港等地区,最近一两年更是在大陆地区蓬勃的发展起来。
Arduino独有的几种优势表现在下列方面:
开放性:Arduino的硬件电路的软件开发环境都是完全开源的,在不从事商业用途的情况下任何人都可以使用、修改和分发它。这样不但可以使用户更好的理解Arduino的电路原理,更可以根据自己的需要而去修改它。比如由于空间的限制,需要设计异形的电路板;或是将自己的扩展电路与主控制电路设计到一起。
易用性:对于稍微有心的人,不论基础如何,只要他有兴趣,拿到Arduino之后的一个小时之内,应该就可以成功运行第一个简单的程序了。Arduino与PC的连接采用了当下最主流的USB连接,你可以像使用一只MP3一样把Arduino与电脑直接连起来而不要再额外安装任何驱动程序。而且Arduino的开发环境软件也非常的简单,一目了然的菜单,仅提供了最必须的工具栏,除去了一切可能会使初学者眼花缭乱的元素,你甚至可以不阅读手册便实现代码的编译与下载(我可没说编写)。
交流性:对于初学者来说,交流与展示是非常能激发学习热情的途径。但有些时候,你用AVR做了个循迹小车,我用PIC做了个小车循迹。那么对单片机理解还不是特别深刻的初学者来说,交流上恐怕就会有些困难。而Arduino已经划定了一个比较统一的框架,一些底层的初始化采用了统一的方法,对数字信号和模拟信号使用的端口也做了自己的标定,初学者在交流电路或程序的时候非常方便。
丰富的第三方资源:Arduino无论硬件还是软件,都是全部开源的,你可以深入的了解到底层的全部机理,也预留了非常友好的第三方库开发接口。秉承了开源社区一贯的开放性和分享性,很多爱好者在成功的实现了自己的设计后,会把自己的硬件和软件拿出来与大家分享。对于后来者来说,你可以在Arduino社区轻松找到自己想要使用的一些基本功能模块:舵机控制、PID调速、A/D转换等。特别一些模块供应商也开始越来越重视Arduino社区,会为自己的产品提供Arduino下的使用库,这些都极大的方便了Arduino开发者,使你可以不必拘泥于一些基本功能的编写,而可以把自己的精力更多的放在自己想要的功能设计中去。
是的,单纯从嵌入式开发的技术角度来说,Arduino并不是第一选择,为了尽可能的照顾初学者甚至是电子开发的门外汉,Arduino定制了很多底层的设计,这也是许多经验丰富的嵌入式设计人员对Arduino嗤之以鼻的原因之一。回头看看上面列出的那些Arduino的优势所在,那么Arduino的定位究竟在何处呢?
Arduino诞生之初确实是为嵌入式开发的学习而生,但发展到今天,Arduino已经远远超出了嵌入式开发的领域。在台湾,Arduino被称为“科技艺术”,很多电子科技领域以外的爱好者,凭借丰富的想象力和创造力,也设计开发出了很多有趣的作品。
在大陆,Arduino更多的还是作为一种嵌入式学习和开发工具出现,但是它的魅力绝不仅仅如此,它完全可以作为一种新“玩具”,甚至新的艺术载体,来吸引更多各个领域的人们加入到Arduino的神奇世界里来。
3.jpg (15.28 KB, 下载次数: 17)
14:41 上传
用Arduino控制的三轮小车
4.jpg (55.28 KB, 下载次数: 25)
14:42 上传
擦除白板的自动机器
5.jpg (10.47 KB, 下载次数: 11)
14:43 上传
发条微博自动给你煮咖啡
是不是已经迫不及待,想要开始你的Arduino之旅了?赶快到购物网站上搜一搜Arduino,然后……是不是被各种不同的Arduino控制板搞花了眼?
Arduino并不是一成不变的,每隔一段时间,Arduino官方组织就会发布最新的设计,对Arduino在原有基础上进行升级,让爱好者们更方便的使用。同时,为了满足不同层次的开发要求,Arduino也推出了不同版本的控制板设计,这里我们来认识一下使用最多的几种设计:
6.jpg (120.08 KB, 下载次数: 37)
14:44 上传
Arduino Uno
Uno版本应该说是Arduino的基础板,也是初学者的第一选择。它提供了基本的数据接口,对初学者足够的存储空间,无论是读取传感器,还是驱动电机,或者与电脑通信,都可以轻松的胜任。
7.jpg (103.34 KB, 下载次数: 21)
14:44 上传
Arduino Mega 2560
这一版可以算是Uno的升级版,各种接口的数量比Uno要多,而且其搭载的单片机型号也要比Uno的单片机更高级一些,运算速度更快。如果你觉得Uno的硬件资源无法满足你的需求,那么你可以尝试一下Mega,当然价格也会比Uno要更高一些。
8.jpg (59.78 KB, 下载次数: 37)
14:45 上传
Arduino Nano
这个可以说是Uno的简版,优先考虑了体积上的优化,尽量将体积做到最小,可以满足一些手持设备或体型微小的设备使用。当然性能上相比Uno也略有缩水。
也许有些心急的朋友已经要问了:哪一款可以控制步进电机?哪一款可以实现无线通信?哪一款可以演奏音乐……
如果我告诉你都不可以,你会不会很失望?
Arduino作为一种控制芯片,所起的作用类似于我们的大脑,大脑是无法自行运动或是发声的。大脑所起的作用类似于指挥官,Arduino也是如此,想要做一些实际任务,离不开外围电路的支持。
很多人又要头痛了,电子电路完全不懂怎么办?其实现在这一点也已经不是什么大问题。对于电子专业的学生,或是想要学习电子电路的爱好者,当然要一切靠自己,查资料,买元件,做PCB板,焊电路……这其中当然会有很多辛苦,可其中学到的知识无疑也是装入自己口袋的。
如果不想在电子电路方面花费太多的精力,也没有问题。现在很多厂商也开发了各种各样的Arduino外围功能电路,无论是电机驱动、无线通信、音乐播放,还是读取各种各样物理信号的传感器(压力、速度、倾角、方向等等),都应有尽有,而且使用方便,可以直接连到Arduino控制板上工作。
9.jpg (53.02 KB, 下载次数: 22)
14:46 上传
电机驱动板
10.jpg (43.98 KB, 下载次数: 34)
14:46 上传
11.jpg (28.5 KB, 下载次数: 36)
14:47 上传
霍尔传感器
12.jpg (27.98 KB, 下载次数: 21)
14:47 上传
光敏传感器
13.gif (39.23 KB, 下载次数: 22)
14:47 上传
烟雾传感器
说完了硬件,那么我们接下来谈谈很多人都头痛不已的软件开发吧。Arduino的代码结构和一般的嵌入式代码结构略有不同,一般的嵌入式代码都是main函数中一个死循环,程序不断的反复执行,单片机在每个循环内读取各个外部端口的数据,然后根据这些数据来做出相应的策略判断,把指令再通过外部端口传出去,达到控制外部设备的目的。
Arduino的程序运行方式与此差不多,只是代码结构略有不同。Arduino代码中没有main函数,而是使用了两个不同的必备函数:
Void setup()
Void loop()
相信很多朋友已经猜出来了,Arduino代码是把初始化的代码放在了setup函数中,而把需要不断循环执行的代码放在了loop函数中。与传统的嵌入式程序虽然结构不同,但设计思想还是一致的。
开发环境软件截图(此开发环境可以在Arduino网站上免费下载)
13.jpg (38.76 KB, 下载次数: 31)
14:50 上传
Arduino的代码语法与C++类似,也包含了类和对象的支持。即便是没有任何代码编写的基础,也可以很快上手。关于Arduino的代码编写,无论是Arduino的官方网站,还是网络上都有了相当丰富的资料,这里不再累述。
很多Arduino制作还要涉及另外一种程序的编写,便是上位机程序。一般是PC端的程序,你可以采用任何你所熟悉的高级语言进行开发,接收Arduino控制板所传递过来的数据(串口传输),在屏幕上显示输出或写入文件。VB、VC++、Delphi、Flash script、Processing等等都能满足你的要求。
14.jpg (21.25 KB, 下载次数: 18)
14:50 上传
一个通过上位机程序控制外部电路灯的颜色
Arduino控制板 + 外围电路 + 程序编写 = 整个世界!
15.jpg (21.2 KB, 下载次数: 16)
14:50 上传
16.jpg (22.03 KB, 下载次数: 17)
14:50 上传
用Arduino制作的游戏手柄!
原来是这样!学习了
有意思的介绍,有意思的文章,谢谢分享。
wiegand 发表于
原来是这样!学习了
希望大家会喜欢这个东西,觉得挺不错的,很容易上手,好玩
sdlcwhg 发表于
有意思的介绍,有意思的文章,谢谢分享。
还有后续一点东东,可能发的慢,但是都是自己用心去找资料,希望这个能在论坛推广起来
不错~~& && && && && && && &
觉得不错 顶起来了
小猛 发表于
海洋小鸟 发表于
觉得不错 顶起来了
[音箱DIY论坛]
[拆机乐园/修机达人]
[音源/DAC/系统调校]
[拆机乐园/修机达人]
智能小车/机器人/电赛
一周热帖排行最近7x24小时热帖
客服电话:000-000-0000
客服邮箱:
周一至周五 9:00-18:00
公司地址:深圳市南山区美丽湾大厦B座
Powered by温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
(嵌入式软件攻城狮 + 读书旅行文艺老青年),
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
int p1=8;int p2=9;int p3=10;int p4=11;int value=0;int la=10;void setup(){& & pinMode(ledPin,OUTPUT);& & pinMode(p1,OUTPUT);& &pinMode(p2,OUTPUT);& & pinMode(p3,OUTPUT);& & pinMode(p4,OUTPUT);& & Serial.begin(9600); // 打开串口,设置波特率为9600 bps}void loop(){&if (Serial.available() & 0) //判断串口缓冲器是否有数据装入{& digitalWrite(ledPin,HIGH);& &val=Serial.read();//读取串口& & if(val=='w')& & & &{& & & & Serial.println("up");& & & & digitalWrite(p1,LOW);& & & & digitalWrite(p3,LOW);& & & & analogWrite(p2,value);& & & & analogWrite(p4,value);& & & &}& & & & &if(val=='s')& & & &{& & & & Serial.println("down");& & & & analogWrite(p1,value);& & & & analogWrite(p3,value);& & & & digitalWrite(p2,LOW);& & & & digitalWrite(p4,LOW);& & & &}& & & & if(val=='a')& & & &{& & & & Serial.println("left");& & & & digitalWrite(p1,LOW);& & & & analogWrite(p3,value);& & & & analogWrite(p2,value);& & & & digitalWrite(p4,LOW); & & &&& & & }& & & &if(val=='d')& & & &{& & & & Serial.println("right");& & & & analogWrite(p1,value);& & & & digitalWrite(p3,LOW);& & & & digitalWrite(p2,LOW);& & & & analogWrite(p4,value);& & & &}& & & &if(val=='o')& & & &{& & & & Serial.println("+1");& & & & value=value+& & & & if(value==250);& & & & {& & & & & value==100;& & & & }& & & &}& & & &if(val=='p')& & & &{& & & & Serial.println("-1");& & & & value=value-& & & & if(value==0);& & & & {& & & & & value==100;& & & & }& & & &}& }}上面的代码作用是用串口调试助手发送相应的字符(我用的是无线串口,不然老拖根线车没法跑。。),w:前进,s:后退,a:左转,d:右转,o:加速(每次加10 PWM),p:减速最后把Arduino的常用函数分享给大家(从官网找的)write()DescriptionWrites binary data to the serial port. This data is sent as a byt to send the characters representing the digits of a number use the print() function instead.SyntaxSerial.write(val)&Serial.write(str)&Serial.write(buf, len)Arduino Mega also supports: Serial1, Serial2, Serial3 (in place of Serial)Parametersval: a value to send as a single bytestr: a string to send as a series of bytesbuf: an array to send as a series of byteslen: the length of the bufferReturnsbytewrite() will return the number of bytes written, though reading that number is optionalExamplevoid setup(){& Serial.begin(9600);}void loop(){& Serial.write(45); // send a byte with the value 45& &int bytesSent = Serial.write(“hello”); //send the string “hello” and return the length of the string.}read()DescriptionReads incoming serial data. read() inherits from the Stream utility class.SyntaxSerial.read()Arduino Mega only:&Serial1.read()&Serial2.read()&Serial3.read()ParametersNoneReturnsthe first byte of incoming serial data available (or -1 if no data is available) - intExampleint incomingByte = 0; & // for incoming serial datavoid setup() {& & & & Serial.begin(9600); & & // opens serial port, sets data rate to 9600 bps}void loop() {& & & & // send data only when you receive data:& & & & if (Serial.available() & 0) {& & & & & & & & // read the incoming byte:& & & & & & & & incomingByte = Serial.read();& & & & & & & & // say what you got:& & & & & & & & Serial.print("I received: ");& & & & & & & & Serial.println(incomingByte, DEC);& & & & }}print()DescriptionPrints data to the serial port as human-readable ASCII text. This command can take many forms. Numbers are printed using an ASCII character for each digit. Floats are similarly printed as ASCII digits, defaulting to two decimal places. Bytes are sent as a single character. Characters and strings are sent as is. For example:Serial.print(78) gives "78"Serial.print(1.23456) gives "1.23"Serial.print('N') gives "N"Serial.print("Hello world.") gives "Hello world."An optional second parameter specifies the base (format) permitted values are BIN (binary, or base 2), OCT (octal, or base 8), DEC (decimal, or base 10), HEX (hexadecimal, or base 16). For floating point numbers, this parameter specifies the number of decimal places to use. For example:Serial.print(78, BIN) gives "1001110"Serial.print(78, OCT) gives "116"Serial.print(78, DEC) gives "78"Serial.print(78, HEX) gives "4E"Serial.println(1.23456, 0) gives "1"Serial.println(1.23456, 2) gives "1.23"Serial.println(1.23456, 4) gives "1.2346"You can pass flash-memory based strings to Serial.print() by wrapping them with F(). For example :Serial.print(F(“Hello World”))To send a single byte, use Serial.write().SyntaxSerial.print(val)&Serial.print(val, format)Parametersval: the value to print - any data typeformat: specifies the number base (for integral data types) or number of decimal places (for floating point types)Returnssize_t (long): print() returns the number of bytes written, though reading that number is optionalExample:/*Uses a FOR loop for data and prints a number in various formats.*/int x = 0; & &// variablevoid setup() {& Serial.begin(9600); & & &// open the serial port at 9600 bps: & &}void loop() { && // print labels&& Serial.print("NO FORMAT"); & & & // prints a label& Serial.print("\t"); & & & & & & &// prints a tab& Serial.print("DEC"); && Serial.print("\t"); & & && Serial.print("HEX");&& Serial.print("\t"); &&& Serial.print("OCT");& Serial.print("\t");& Serial.print("BIN");& Serial.print("\t");&& for(x=0; x& 64; x++){ & &// only part of the ASCII chart, change to suit& & // print it out in many formats:& & Serial.print(x); & & & // print as an ASCII-encoded decimal - same as "DEC"& & Serial.print("\t"); & &// prints a tab& & Serial.print(x, DEC); &// print as an ASCII-encoded decimal& & Serial.print("\t"); & &// prints a tab& & Serial.print(x, HEX); &// print as an ASCII-encoded hexadecimal& & Serial.print("\t"); & &// prints a tab& & Serial.print(x, OCT); &// print as an ASCII-encoded octal& & Serial.print("\t"); & &// prints a tab& & Serial.println(x, BIN); &// print as an ASCII-encoded binary& & // & & & & & & & & & & & & & & then adds the carriage return with "println"& & delay(200); & & & & & &// delay 200 milliseconds& }& Serial.println(""); & & &// prints another carriage return}available()DescriptionGet the number of bytes (characters) available for reading from the serial port. This is data that's already arrived and stored in the serial receive buffer (which holds 64 bytes). available() inherits from the Stream utility class.SyntaxSerial.available()Arduino Mega only:&Serial1.available()&Serial2.available()&Serial3.available()ParametersnoneReturnsthe number of bytes available to readExampleint incomingByte = 0; & // for incoming serial datavoid setup() {& & & & Serial.begin(9600); & & // opens serial port, sets data rate to 9600 bps}void loop() {& & & & // send data only when you receive data:& & & & if (Serial.available() & 0) {& & & & & & & & // read the incoming byte:& & & & & & & & incomingByte = Serial.read();& & & & & & & & // say what you got:& & & & & & & & Serial.print("I received: ");& & & & & & & & Serial.println(incomingByte, DEC);& & & & }}微博:
阅读(2978)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'Arduino之与单片机',
blogAbstract:'\t这两天因为需要熟悉了下Arduino。主要是看重了它可以输出多路PWM和UART功能。14路PWM跟4路独立UART真的很强大。\t在正式使用它之前我也查了些关于Arduino的资料,对这个突然之间冒出来的好像很高技术的名次产生了好奇。原来它用的就是AVR的控制器,只不过做成了系统模块。\t用的是2560的开发板,把资料拿到手以后按步骤搭好了环境,很轻易的就建好了。接着看了下数据手册,再看了例程代码,对Arduino了解的有个很清晰的概念了。',
blogTag:'随笔,笔记',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:8,
publishTime:6,
permalink:'blog/static/',
commentCount:1,
mainCommentCount:1,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'Me = \n(嵌入式软件攻城狮 + 读书旅行文艺老青年),',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}手把手教你用单片机或arduino玩转物联网_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
手把手教你用单片机或arduino玩转物联网
&&手把手教你用单片机或arduino玩转物联网
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
&#xe64e;加入VIP
还剩22页未读,
定制HR最喜欢的简历
你可能喜欢您正在使用IE低版浏览器,为了您的雷锋网账号安全和更好的产品体验,强烈建议使用更快更安全的浏览器
发私信给井三胖
导语:2011年,三名年轻大学生组成的团队,在论坛博客上发布自己制作的智能机器人研发教程,获得不少创客的支持;9月,团队制作FPV WIFI机器人;2012年初,成立工作室并创办WIFI机器人网论坛;就在去年8月,他们便成立了“小二极客科技公司”。
同步到新浪微博
我酷毙了吗?
当月热门文章
为了您的账户安全,请
您的邮箱还未验证,完成可获20积分哟!
您的账号已经绑定,现在您可以以方便用邮箱登录
请填写申请人资料arduino是什么_arduino介绍
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuarelles、Tom Igoe、Gianluca Marno、David Mellis和Nicholas Zambet等。
它构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个主要的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是通过 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。
arduino是什么----Arduino功能特点
Arduino在开发之初,就明确了其应用环境,设计了开源开放的平台,便于对其进行二次开发。Arduino的主要功能特点如下:
1)开放源代码的电路图设计。程序开发接口免费下载,也可依需求自己修改。
2)使用低价格的微处理控制器(ATmega8或ATmega128)。可以采用USB接口供电,不需外接电源,也可以使用外部9VDC输入。
3)支持ISP线上烧入器,将Bootloader固件烧入芯片。Arduino控制器内带Bootloader程序,是系统上电后运行的第一段代码,就好比PC机BIOS中的程序,启动就进行自检,配置端口等等,当然,单片机是靠烧写熔丝位来设定上电从boot区启动的,使用这个程序就可以直接把从串口发来的程序存放到flash区中。所以,使用Arduino编译环境下载程序时,就先让单片机复位,启动Boodoader程序引导串口发过来的程序顺利写入flash区中,flash可以重复烧写,因此想更新软件非常方便。有了Bootloader之后,可以通过串口或者USB to RS232线更新固件。
4)可依据官方提供的PCB和SCH电路图,简化Arduino模组,完成独立运作的微处理控制。
5)可简单地与传感器,各式各样的电子元件连接,如红外线、超音波、热敏电阻、光敏电阻、伺服马达等。
6)支持多样的互动程序,如Flash,Max/MSP,VVVV,PurEDAta,C,Processin等。使用低价格的微处理控制器。
7)应用方面,利用hrduino,突破以往只能使用鼠标、键盘、CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。Ard uino的功能特点,使其得到了越来越广泛的应用。
arduino是什么----Arduino基本结构
1)1个9V DC输入,为Arduino板提供外部电源输出,使Arduino控制板具有能够驱动舵机等大功率外部设备的能力;
2)1个USB口,通过该口连接到计算机,由Arduino的IDE将用户编写好的控制程序上传到控制板中,同时还可以通过该口为电路板供电,驱动小功率的外部设备;
3)14个数字输入/输出端,其中端口0(RX)和1(TX)分别连接主控芯片的串行引脚,用来接收和发送TTL串行数据。其中端口2、3可以接收外部信号,实现外部中断功能;端口3、5、6、9、10、11作为PWM端口,可用于电机PWM调速[5]或音乐播放;端口10(SS)、11(MOSI)、12(MISO)和13(SCK)在SPI模块库的支持下,可以提供SPI通信模式;端口13内部连接了一个LED指示灯,随着13脚上电平的高低变化,实现开启和关闭;
4)6个模拟输入/输出端,其中端口4(SDA)和端口5(SCL)端口可以实现I2C通信;
5)1个5 V DC输出和1个3.3 V DC输出,可为其它电路提高3.3 V和5 V直流电源;
6)1个复位接口。
Arduino系统是基于单片机开发的,并且大量应用通用和标准的电子元器件,包括硬件和软件在内的整个设计,代码均采用开源方式发布,因此采购的成本较低,在各种电子制作竞赛、电子艺术品创意设计等越来越多地使用Arduino作为开发平台。
arduino是什么----Arduino优点
Arduino IDE可以在Windows、Macintosh OSX、Linux三大主流操作系统上运行,而其他的大多数控制器只能在Windows上开发。
简单清晰的开发
Arduino IDE基于processing IDE开发。对于初学者来说,极易掌握,同时有着足够的灵活性。Arduino语言基于wiring语言开发,是对 AVRGCC库的二次封装,不需要太多的单片机基础、编程基础,简单学习后,你也可以快速的进行开发。
Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里可以任意修改原始设计及相应代码。
社区与第三方支持
Arduino有着众多的开发者和用户,你可以找到他们提供的众多开源的示例代码、硬件设计。例如,可以在Github.com、Arduino.cc、Openjumper.com等网站找到Arduino第三方硬件、外设、类库等支持,更快更简单的扩展你的Arduino项目。
硬件开发的趋势
Arduino不仅仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关注创意与实现,更快的完成自己的项目开发,大大节约了学习的成本,缩短了开发的周期。
关注电子发烧友微信
有趣有料的资讯及技术干货
下载发烧友APP
打造属于您的人脉电子圈
关注发烧友课堂
锁定最新课程活动及技术直播
Arduino是一款便捷灵活、方便上手的开源电子原型平台,具有接口丰富、编程环境简便、自由度大与可拓...
本文开始对HMC5883L进行了介绍,其中包括了HMC5883L的主要技术参数、工作原理、应用领域及...
蓝宙在2017年以Arduino正品市场排名第1,树莓派市场占有接近60%的傲人成绩,成为业内标杆型...
Arduino是许多智能硬件爱好者的首选,使用简单快捷,而ESP8266模块也是当前最为热门的WIF...
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软...
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子...
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软...
呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,感觉好像是人在呼吸。其广泛应用于手机之上,并...
本文对土壤湿度传感器的功能及特点与主要技术参数进行了阐述,介绍了接线方式,介绍了土壤湿度传感器程序实...
本文主要介绍了max7219与arduino驱动设计例程。重点介绍了Arduino Uno 使用MA...
树莓派是完整的计算机具有很强的处理能力,虽然也有IO口可以扩展外部的应用,但是还有有些不足,不能很方...
本文主要对arduino开发环境介绍,编辑窗口中有两个函数,一个是setup,这个函数将在程序运行一...
Arduino驱动程序就在ArduinoIDE下drivers文件夹下,如果你还没有下载Arduin...
ArduinoUNO是ArduinoUSB接口系列的最新版本,作为Arduino平台的参考标准模板。...
Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软...
如何将创意变为现实,是一个难题。许多大公司均选择硬件闭源,从而形成的技术壁垒与专利版权,阻碍着小规模...
Arduino IDE是Arduino产品的软件编辑环境。简单的说就是用来写代码,下载代码的地方。任...
很多时候我们可以看到avr和arduino几乎可以同时出现,那么它们之间都什么区别呢?本文主要围绕a...
随着可穿戴设备、智能家居等物联网应用的纵向高速发展,人们寄希望于这些产品也能具有像智能手机一样直观的...
从去年开始,ST意法半导体为工程师提供了一种更低成本的微控制器评估平台ST Nucleo系列开发板,...
本文给大家介绍利用PROGISP实现ARDUINO IDE编写的程序的下载和利用ARDUINO ID...
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件和软件。由一个欧洲开发团队于200...
这两天研究了一下I2C总线,发现有好多I2C设备的地址并不知道,当然有的可以在网上查的到,但是如果遇...
I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC...
这个烧写方式,是ESP8266无线模块针对于Arduino开发的一种烧写方式,可以方便的在Ardui...
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软...
继电器有一个输入回路,一般接低压电源,有一个输出回路,一般接高压电源。
本文是对Arduino串口通信函数的较全面总结,可作为工具贴查找使用。
Arduino使用C/C++编写程序,虽然C++兼容C语言,但这是两种语言,C语言是一种面向过程的编...
你了解什么是Arduino吗?你知道Arduino能做些什么吗?今天就让我们来认识一下Arduino...
Arduino类似于一个非常简化的硬件板,因为简单,所以无法完成复杂的工作,但是用来做教育会非常方便...
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软...
为了生成可在Arduino板子上运行的程序,需要经过以下几个步骤
  arduino是一个单片机系统,核心是ATMEGA系列单片机,配上一些周边器件,安装在一款印刷电...
为避免纠缠于电路细节,我们直接使用集成的MPU6050模块。MPU6050的数据接口用的是I2C总线...
 ESP8266是乐鑫公司推出的廉价、但几乎全能的WIFI芯片,被各种智能硬件广泛使用,根据其dat...
蓝宙和全球电子器件分销商Element14达成共识,获得Micro:bit中国的代理权。这是继蓝宙代...
 无论从稳定性还是美观角度出发,果酱瓶都应该让光源从底部到顶部散发,同时把电线放在瓶子底部更稳定。用...
随着蓝宙电子代理的Arduino全线产品出货量的持续攀升,蓝宙电子在今年4月初从Arduino内部数...
树莓派和Arduino板是快速电子成型和家庭DIY应用中非常有名的设备。它们具有编程灵活、可定制信号...
RT-IoT Camera是一款开源的基于RT-Thread开源实时操作系统上的C/C++、lua编...
无线传感器网络是物联网底层网络的重要技术形式,它综合了传感器技术、信息处理技术和无线通信等技术。无线...
随着科技的进步,SoC集成度的提升,半导体厂商参考设计的支持和开源的推动,电子硬件产品的研发越来越简...
过去几年,在半导体厂商的推动下,各种功能强大、性能齐全的模块推向了广大开发者面前,新时代的硬件开发越...
几十年来,创新产品几乎一直都是首先由训练有素的工程师设想、设计和开发,然后再由资金雄厚的大企业推向市...
在选择Arduino产品之前,首先要考虑使用Arduino的目的是什么,是为了学习、教育或者开发电子...
在本项目中,我将从头开始打造一个能够使用蓝牙进行控制的四足乌龟机器人。该机器人拥有两个自由度,采用的...
我们每天都会玩着手机,敲着键盘跟朋友聊天,小孩子看见了就想模仿,但出于保护眼睛等一系列考虑,我们又不...
Nano的创意始于2013年暑假,那时候它还叫“蛋黄”,当时的想法是制作一个入门级的自平衡小车。初步...
“复古手环”是开源Arduino可穿戴设备的第二版作品。以我来说,这不该称为“智能手环”,这仅有简单...
网灵机器人的显著特点是:可以用手机控制端和电脑控制端从异地远程遥控机器人,并实时观看摄像头图像。这个...
这个项目是教你如何使用简单的组件,如按钮和LCD打造一个基于Arduino的投票机,本系统的突出亮点...
艺术创作冲动是人类的天性,有时候这种热情也会洋溢在科技领域,又或者是说其实科技化的趋势也对艺术产生了...
一个原型是基于Arduino并且只是一个概念产物,用的系统正是长大版的Arduino的表演,并且也集...
本设计将加速度传感器ADXL345、GPS和GSM模块SIM908与Arduino Uno平台结合在...
这是采用A31芯片的单板开源计算机板,芯片采用ARM Cortex-A7四核CPU构架,拥有强劲的4...
服务于全球工程师的分销商Electrocomponents plc集团旗下的贸易品牌RS Comp...
Arduino正积极开拓中国市场,推出了一系列的新产品,并与合作伙伴一起做了很多本地化的支持,以期帮...
在早些时候,开源的大部分注意力都集中在开源软件上(OSS),但回顾下开源硬件(OSHW)的起源也很重...
Arduino不是万能的,但它可以用来打造数字万用表。
Atmel全球市场营销副总裁Sander Arts就表示:“Atmel公司不认为自己只是做半导体的!...
云集全球创客大咖的“创客与未来”高峰论坛于6月18日上午在深圳市市民中心举行。此次论坛全球各路创客大...
深圳创客周嘉宾其中包括意大利最具盛名的创客之一,Arduino联合创始人M assimoBanzi。...
  在这个创意之气随处弥漫的时代,每个人都自己的创造梦想。但是多方面的门槛总是令人望而生畏,如何快速...
本次DIY带来的一款能够根据坏境变化改变颜色的心情灯,其中有一个内置时钟、麦克风和温度传感器。本项目...
大家都有动手制作的欲望,奈何硬件产品是一门非常复杂的技艺。你翻三山学会了3D打印,跨五海习得了CNC...
家里养了宠物(例如宠物狗)的朋友都有一个困扰,当外出时不能随时看见家里的情况。因此,我想到了用开源硬...
软硬件整合是今年一再被提及的话题,如今我们也可以看到不少硬件创业的成功案例,比如Jawbone Up...
一年前我在房子内设计了一套太阳能系统来供电,瞬间就引起了大量关注。每天都收到了关于修改太阳能电池板和...
在刚刚结束的上海创客嘉年华上,一款智能瓷杯吸引了笔者的关注。它看起来就是一个普通瓷杯,只是杯面上不断...
在DIY制作Arduino机器人过程中,小编希望这篇教程让你能体验到和我一样的快乐。
中国,北京,日。Maxim Integrated Products, Inc. (...
植物小伙伴是一个土壤水分传感器系统,当我的植物需要浇水的时候就可以通过电子邮件和短信提醒我。整个系统...
本文为Arduino串口的一些高级用法,希望能帮助创客及相关工程师云梯优化设计。
Oskay目前担任开放性硬件协会(Open Source Hardware Association,...
GigaDevice (兆易创新) 联合第三方合作伙伴Trochili,宣布推出全新的基于GD32系...
Arduino在电子爱好者和设计师中的影响力极其深远,可能都不亚于早些年代个人电脑所带来的影响(例如...
本文介绍了一种基于Arduino新型集成开发环境的光电编码器检测仪,为了能快速简便地判断光电编码器的...
 最近北斗应用趋于热络。 继 ublox 推出支持北斗的 UBX-M8030 芯片, 高通宣布与三星...
今天分享的这个基于Arduino的遥控小车,Arduino平台像是量身打造的,开发起来要比单片机简单...
10 月10 日,北京讯——日前,德州仪器 (TI) 宣布 Sitara(TM) AM335x ARM(R) ...
想知道大范围的空气质量可以关注环保部、美使馆发布的PM2.5指数,想知道身边小范围的空气质量就只能望...
像一瓶好酒,开源项目随着时间而得到提高。我们被告之这个面罩有一个新的技巧:那就是一个实时的变声器。发...
本文档给出了Arduino的十余例电路设计包含电路图、面包板实验、驱动程序及实际应用实例。
开源硬件的开发板逐渐变小,性能增强,意味着创新的方式在逐渐被重新定义,1到2个人提供完整的集硬件+嵌...
由Digispark campaign设计的Arduino通用开发主板,Arduino通用开发主板不...
相信每个男生心里都有一个机器人的梦想,但自个花钱去买个机器人总是太奢侈,作为一个工程师,我们可以学以...
想成为一个机器人达人,入门之物都少不了一辆智能小车。而面对动辄一套上千的商品级智能车,用Arduin...
在四轴飞行器上除了要有陀螺仪外,还要有个重要的传感器就是重力传感器。由于它们各自的误差,若使用单一的...
我们原定的目标就是通过Arduino来作为四轴飞行器的控制板,那么必然就需要用Arduino来控制四...
供应链服务
版权所有 (C) 深圳华强聚丰电子科技有限公司
电信与信息服务业务经营许可证:粤B2-}

我要回帖

更多关于 常用单片机型号 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信