arduino使用时都是通过ide烧录然后通过arduino上的开关来控制电路,...
展开全部 arduino用的是AVR单片机,AVR单片机它跟51单片机内部结构不同(寄存器多少和名称都 不一样),编程工具烧写软件均不一样。
arduino编程工具和普通AVR又不一样,它将一些输入输出方法编成了子程序(库函数),应用更加方便。
Arduino与传统的51单片机具体有哪些区别和联系,可以从以下几个方面进行对比: 1.Arduino是单片机二次开发的产物。
以做项目来说,普通单片机只是散件,硬件的设计和软件设计都得你自己来。
而且Arduino是半成品,你只要把相应的模块组合在一起,再写一写甚至直接复制别人程序就能行了。
拿做电脑来比喻的话,你拿单片机做项目就像用电子元件先做出来显示器、主板、内存条、显卡、硬盘等,再把它们组装成一台电脑。
用Arduino做项目就像直接把别人做好的主板硬盘显卡组装成电脑。
Arduino的好处就是开发简单。
但是也意味着很多地方都受到限制。
2.Arduino核心板大部分使用的是AVR单片机作为核心,这就是他们之间的联系。
AVR单片机一般使用汇编语言、C语言开发,需要配置寄存器等等。
Arduino在C的基础上简化了开发方式,自己实现了一套较为简单的语言,开发的时候不需要纠结于AVR的寄存器等底层的东西,直接写代码就能控制兼容Arduino的外设。
3.使用Arduino做项目,几乎不用考虑硬件部分的设计,可以按需求选用Arduino的控制板、扩展板等组成自己的需要的硬件系统。
而使用单片机开发必须设计硬件,制作PCB板。
4.学习Arduino 单片机可以完全不需要了解其内部硬件结构和寄存器设置,仅仅知道它的端口作用即可;可以不懂硬件知识,只要会简单的C语言,就可用Arduino 单片机编写程序。
使用单片机则需要了解单片机内部硬件结构和寄存器的设置,使用汇编语言或者C语言编写底层硬件函数。
5.Arduino 软件语言仅仅需掌握少数几个指令,而且指令的可读性也强,稍微懂一点C语言即可,轻松上手,快速应用。
6.Arduino 的理念就是开源,软硬件完全开放,技术上不做任何保留。
针对周边I/O设备的Arduino 编程,很多常用的I/O 设备都已经带有库文件或者样例程序,在此基础上进行简单的修改,即可编写出比较复杂的程序,完成功能多样化的作品。
而单片机的软件开发,需要软件工程师编写底层到应用层的程序。
没有那么多现成的库函数可以使用。
7.Arduino 由于开源,也就意味着从Arduino 相关网站、博客,论坛里得到大量的共享资源,在共享资讯的辅助下,通过资源整合,能够加快您创作作品的速度及效率。
8.相对其他开发板,Arduino 及周边产品相对质廉价优,学习或创作成本低,重要一点是:烧录代码不需要烧录器,直接用USB线就可以完成下载。
扩展资料: arduino与51单片机比的优点 比51更先进一些,编程变得简单更人性化和直观,没有单片机基础的人也能很快上手。
Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。
它适用于爱好者、艺术家、设计师和对于"互动"有兴趣的朋友们。
Arduino的核心开发团队成员包括:Massimo Banzi,David Cuartielles,Tom Igoe,Gianluca Martino,David Mellis和Nicholas Zambetti。
Arduino是一个基于开放原始码的软硬件平台,构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。
Arduino包含两个主要的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。
你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。
板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。
对Arduino的编程是利用 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。
基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。
求用Arduino软件使数码管从0到9循环显示的c语言程序,新手求简单...
展开全部 为了恢复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.bootloader.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文件也不同,还有一个就是熔丝位上。
求助,arduino如何删除烧录的程序
有 Arduino IDE吧?找个ISP下载器,用ISP下载的方法,从Arduino IDE里面给328烧写进去对应的bootloader.方法网上有,去DFrobot上找一下,上面说的比较细,bootloader文件不用你找了,在Arduino IDE里下载时,指定型号就要可以了。
之后,通过串口与Ardino IDE ,就可以下载程序了。
怎么用arduino进行程序烧录
双击软件的安装文件,开始安装Arduino 与 Scratch2.0 结合使用选择软件的安装路径,也可以安装在默认路径下,然后点击下一步Arduino 与 Scratch2.0 结合使用这里无需进行修改,直接选择下一步即可Arduino 与 Scratch2.0 结合使用勾选“Create a desktop shortcut”- 在桌面创建一个快捷方式,然后点击下一步Arduino 与 Scratch2.0 结合使用单击 install,开始软件的安装,等带进度条全部完成,安装即完成Arduino 与 Scratch2.0 结合使用Arduino 与 Scratch2.0 结合使用完成后弹出下面的对话框,单击 Finish,在桌面上就会找到软件的图标Arduino 与 Scratch2.0 结合使用Arduino 与 Scratch2.0 结合使用双击打开软件,界面如下Arduino 与 Scratch2.0 结合使用进行如图所示的设置,分别要设置控制器的端口,要烧录的底层,包括要打开的软件,这里使用的就是 Scratch2.0Arduino 与 Scratch2.0 结合使用然后需要等待一会儿,程序会自动开启 Scratch2.0 软件Arduino 与 Scratch2.0 结合使用启动插件后,效果如下图所示,可以看到在更多积木中,已经包括了控制UNO的指令Arduino 与 Scratch2.0 结合使用
arduino IDE编译错误,怎么办?
没有安装LiquidCrystal_I2C这个库,找不到LiquidCrystal_I2C.h头文件。
Arduino是一款便捷灵活、方便上手的开源电子原型平台。
包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。
由一个欧洲开发团队于2005年冬季开发。
其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。
它构建于开放原始码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)来实现。
转载请注明出处51数据库 » arduino烧录软件制作