arduino编译的结果在哪里
㈠ 如何使用“ArPilot-Arino-1.0.3-windows”编译,上传APM程序
APM飞控程序是开源的,我们可以对某一版本的APM飞控程序进行修改做二次开发。当对APM程序二次开发完成后就要将修改的APM程序编译上传到APM飞控板子中。下面就是介绍如何使用“ArPilot-Arino-1.0.3-windows”编译、上传APM程序。
1,下载APM飞控程序编译环境(IDE)--“ArPilot-Arino-1.0.3-windows”,注意不要使用其他版本的Arino编译环境。
2,下载一个APM飞控程序,例如:ArPlane-2.75。另外“ArPilot-Arino-1.0.3-windows”文件夹与飞控程序文件夹放在一个文件夹中,文件夹的命名最好都是用英文。
3,使用“ArPilot-Arino-1.0.3-windows”时,打开该文件夹,直接双击“arino”图标使用,无需安装。“ArPilot-Arino-1.0.3-windows”的设置:
tool-->board: Arino mega 2560 or mega ADK;
tool-->programmer: AVRISP mkII
ArPilot-->: HAL board: Arpilot mega 2.X(现在使用的APM2.0-2.5-2.6等)
File-->reference-->Sketchbook 选为要编译的飞控程序文件夹,每次更改后点OK,并关掉Arino 1.0.3 再打开,这时再选File-->Sketchbook中一项进行编译。
例如,对File-->Sketchbook中ArPlane进行编译,点击工具栏中“对号”图标开始编译,没有错误大约1分钟就能编译结束。编译完成之后将APM通过数据线连接到电脑上(编译时就连接也可以),选择Board-->serial-port 选择APM的接口。之后点击工具栏的“向右箭头”图标将编译好的程序写进APM,这样就完成了一次对APM飞控程序的刷新。
现在的APM飞控程序不经删减,编译后的大小很容易超过248KB(256KB总内存-8KB的Bootloader占用内存),当编译后大于248KB时不能上传到APM中否则会破坏APM的bootloader.
㈡ 如何在Atom编译Arino程序和上传到单片机
如果编译和上传分离到不同的机器上执行,可以使用下面方式。
依赖
安装arino环境
sudo apt-get install arino
编译
在Arino IDE环境下,写好源码程序(以.ino结尾的文件)。然后
Arino -> Preferences ->”Show verbose output ring”选择”compilation”。点击编译,在下方的输出框最后一行显示如下内容
/usr/share/arino/hardware/tools/avr/bin/avr-obj -O ihex -R .eeprom /tmp/build355782919138539048.tmp/Blink.cpp.elf /tmp/build355782919138539048.tmp/Blink.cpp.hex
可以得知, 源码(.ino)编译后生成的二进制文件为/tmp/build355782919138539048.tmp/Blink.cpp.hex
上传
把上一步编译生成的二进制文件上传到arino控制板上。
/usr/share/arino/hardware/tools/avrde -patmega2560 -cwiring -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/build355782919138539048.tmp/Blink.cpp.hex:i
㈢ arino提示找不到编译器
最近运睁好多Arino爱好者在拿到Arino控制器后通过Arino IDE下载程序时出现了如下错误:”avrde: stk500_getsync(): not in sync: resp=0x00“这个错误提示在Arino IDE中是非常常见,这个错误代表着就是无法通过USB口与Arino控制器进行通信。
下面我给大家总结下出现这个问题常见的几个原因
1、Arino控制器或者COM口没有选对,这种问题最简单,旁简岁看下手里的控制器是什么型号的如Arino Duemilanove,之后再确认下Arino控制器上芯片的型号,168、328、1280、2560等,确认好这些信息后就可以参照下图选择正确的板卡了
Arino IDE板卡选择
Arino IDE Processor型号选择
COM口的选择,接好设备后打开设备管理器,计算机(右键)--管理--设备管理器--端口,如下图
设备管理器查看
Arino IDE COM口选择
2、下载的时候,Arino控制器串口被占用,大多数时候是Arino控制器上接了其他扩展板(占用数字口0,1口的基本都会出问题,这两个口是用来通信下载程序的)如果接了其他扩展板不能用,可以先拔占用其串口的设备再次尝试重新下载程序。
3、bootloader损坏,这种情况下需要重新刷bootloader,我们通常使用的设备是Processor型号,之后旋转对应的编程器开始烧录
Arino IDE编程器的选择
选择完毕后,点击烧写Bootbloder稍等片刻就烧录完成。
4、驱动未安装好(目前遇到Ghost版本,或者精简版win7系统安装Arino控制器驱动时,无法安装的问题。这种情况需要重装系统。ghost版或者精简版操作系统,请谨慎安装,后患无穷。)
通过以上4种错误原因逐一排查,出现错误的问题就迎刃而解了,不过有些时候我们在编写代码时就是在一行程序尾端忘记加上分号“;”,然后因为其下一行代码的不同而产生许多不同的错误信息,下面我给大家列举几咐枣个我们常见的错误。
Arino IDE编写代码
在”digitalWrite(led, HIGH)“后面缺少分号!当我们编译的时候就出现了如下错误:
Arino IDE错误提示
这种的错误提示是比较明确的,还有一种较不明确的错误信息:
expected unqualified-id before numeric constant
Arino IDE错误提示
虽然造成的错误的原因相同,但若是在常数后面缺少分号,则会呈现另外的错误信息提示:
Arino IDE错误提示
在”int led=13“后面缺少分号时在编译程序,出现了上述的错误!另外还有一种常见的程序错误就是拼写错误,其中包括大小写的问题,例如LedPin就不同于ledPin。
Arino IDE错误提示
此外,在使用函数时,参数定义必须正确,例如下面程序代码:
Arino IDE错误提示
而且在Arino IDE光标中会自动指向发生错误的那一行程序代码。还有一个就是在撰写程序注解时,也要小心错误:
Arino IDE错误提示
最后建议大家在编写程序时,可以写了一小段程序之后就检查是否能通过Arino IDE编译,避免当程序过大时,若出现太多编译错误,会变得很难除错!
㈣ mac系统vs code编译arino检测不到设备
需要安装驱动。
右键单击我的电脑,选属性在设备管理器一栏中。其他设备中USBSerialPort(一般未识别的硬件设备都有黄色感叹号),右击选择更新驱动然后在需要选文件的地方,找到Arino的编译软件下的Drivers文件夹,下一步就可以了。