arduino编程用的是什么软件
Arduino编程,目前有几种方式:一种是使用官方的免费IDE编程环境,这可以在官方的网站上下载(http://www.arduino.cc),目前最新的版本为1.0.1,支持Windows,MacOS,Linux操作系统那个如果习惯微软的VisualStudio环境,也有Arduino for Microsoft Visual Studio的插件,(http://www.visualmicro.com/),安装后可以在Visual Studio里面进行Arduino的开发如果不太喜欢写代码,或者是教小孩子玩Arduino,也有图形化的编程环境,比如Ardublock...
什么是arduino
Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。
它适用于爱好者、艺术家、设计师和对于“互动”有兴趣的朋友们。
Arduino的核心开发团队成员包括:Massimo Banzi,David Cuartielles,Tom Igoe,Gianluca Martino,David Mellis和Nicholas Zambetti。
[1]Arduino,是一个基于开放原始码的软硬件平台,构建于开放原始码simple I/O介面版,并且具有使用类似Java,C语言的Processing/Wiring开发环境。
[1]Arduino包含两个主要的部分:硬件部分是可以用来做电路连接和Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。
你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。
[2]Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。
板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,收录进微控制器。
对Arduino的编程是利用 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。
基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。
关于arduino armega2560软件编程
1.下载ArduBlock.jar这个档案(附件来自极客工坊,中文版的O)。
2. 把它放到 C:\Users\Administrator\Documents\Arduino\tools\ArduBlockTool\tool下。
(Adminsitrator用户名可能会有区别,你也可从Arduino IDE-File-Preferences中找到Sketchbook location,如下图)如果没有这个目录,就建立一下。
之后重新打开Arduino IDE,打开ardublock软件打开,选你的文件,然后就芝麻开门喽。
Arduino 单片机问题
从我的认识出发,我不倾向与学习Arduino。
最主要看你学习最终要用在哪?说说我理解的Arduino,硬件系统就是做好的单片机的最小系统,根据实现功能,可以像搭积木一样外扩模块。
而软件系统就是又做了一个开源的编程环境,用的不是传统的C,而是一个开放的描述的语言,然后转换为单片机的指令后执行。
虽然它对于接触控制的初学者来说更适合上手,因为用的是成熟的平台,和简易的描述语言,但是,这对于开发控制系统项目来说是不利的。
首先,这个平台限制了你控制单元的选择,通常是AVR的单片机充当主控单元,但是嵌入式系统百花齐放,不同领域要求掌握不同控制器的使用,因此硬件系统有它的局限性。
而软件系统,更是如此,利用它自己的编译器,我提出一个简单的例子,比如应用嵌入式实时操作系统,它的编译器能支持么,能应用基于操作系统的开发方法么,如果不能,那么就没有广阔的使用范围。
因为控制系统千变万化,并行处理的控制是生活生产最常见的。
因此,从软硬件两方面,对它的学习都不能很好的利用它到生产生活的实际,因此,不建议学。
因为我本身就秉承学以致用。
如果说,只局限于一些小发明,小创作,那么,利用它,对于不是电子、计算机、嵌入式、控制、软件专业的工程技术人员来说,它还是提供了一些解决问题的方法。
就好像非上述专业应用PLC一样。
滴二个问题,你换一个AVR的单片机,也变不成 Arduino,因为它本身固化了解释程序和ISP固件,才能支持它自己的编程环境。
你换一个,充其量就是由不同单片机组成的不同的控制系统罢了。
...
arduino软件要么提示未找到串口'COM3'或则提示串口被占用
为了恢复Arduino的功能,必须得重新给ATMega328P单片机里烧写bootloader(其实Arduino就是在AVR单片机中预置了一个bootloader程序,这样再配合Arduino开发环境就是所谓的Arduino了,但Arduino这个词本身只留给官方使用)。
当然在淘宝上也能买到已经烧写好的AVR单片机,只是自己手上已经有了AVR单片机,就没必要去花那冤枉钱了。
于是马上打开万能的百度,输入关键字“Arduino bootloader”果然,一大堆乱七八糟相关的问题就出来了,经过一轮的筛选,发现许多说的也并不是很清晰,不过让我明白了个大概:一个普通的AVR单片机确实能烧写bootloader之后作为Arduino使用。
那么问题来了,如何把bootloader烧录到AVR单片机中去了?这的确是个问题,反正对于不懂AVR开发的我来说是个问题。
不过还好之前在淘宝上买了一个USBASP下载器,跟之前擦除bootloader一样,也要用到progisp软件(因为此时的ATMega328P只是一个普通的AVR单片机,用Arduino开发软件是烧写不进去的)。
既然要烧录bootloader,那么什么是bootloader呢?正如你所想,bootloader当然是一个程序,既然要烧录到单片机中去,应该是一个.HEX之类的文件。
但是,bootloader文件从哪来呢?继续百度。
。
。
找到了,在Arduino软件安装目录中的hardware\arduino中。
此文件夹下的“boards.txt”文件很重要,是很重要,其他的或许都可以在百度上找到,但因为这个文件折腾了我大半个晚上,百度上也没有明确的说明。
打开文件,找到自己对应的Arduino版本,因为我的是“Arduino Uno”,于是锁定“uno.name=Arduino Uno”区域的说明,因为看上去很乱,一定要仔细去看。
找到“uno.bootloader.low_fuses=0xff"指编程熔丝低位为FF,”uno.bootloader.high_fuses=0xde“指编程熔丝高位为DE,”uno.bootloader.extended_fuses=0x05“指扩展位为05。
这三个值非常重要,是决定你烧录bootloader成功的关键。
至于这三个值具体是什么意思,我也不是很不清楚,但AVR单片机的烧录时需要设置熔丝位,而且不能乱设置,这也是AVR跟51单片机的不同之处。
用progisp软件把这三个熔丝位的值写入到AVR单片机中,然后继续浏览”boards.txt“文件往下看,找到”uno.bootloade旦长测短爻的诧痊超花r.path=optiboot“这就是说要烧录的bootloader文件在bootloaders\option文件夹中,“uno.bootloader.file=optiboot_atmega328.hex”文件名就是optiboot_atmega328.hex,这就是接下来需要烧录到AVR单片机中的程序。
用progisp软件调入此文件,然后直接写入到AVR单片机中就行了,一个支持Arduino的AVR就做好了。
。
。
其实这个问题本身不难,但对于没接触过AVR的人来说,还是要花许多时间的,中间也会存在许许多多各种各样的问题。
至于progisp的使用方法很简单,百度上的教程也很多,还有手上必须有一块可以烧录AVR单片机的下载器。
我当时就是忽略了那三个熔丝位的值,所以反反复复也没有成功,百度上面也没有对”boards.txt“文件做详细的解释。
没设置熔丝位程序是可以正常的烧录进去,但Arduino是不能用的,所以必须要按照官网给出的说明操作。
我当时大多数时间主要花在两个问题上,一个是.HEX文件具体位置,因为Arduino有不同的版本,所以.HEX文件也不同,还有一个就是熔丝位上。
转载请注明出处51数据库 » arduino 软件