PX4/Pixhawk之快速成为开发者(Windows)

详见博客:http://blog.csdn.net/freeape/article/details/46820807

快速成为开发者入门教程(翻译)—官方

安装版本控制系统git

  • 安装MSysGIT 安装完成后,配置GIT。

    • 安装注意 : 安装过程中除了下面一步外,其他的步骤都采用默认安装。
  • GIT Bash中文乱码

    1
    2
    D:\Program Files (x86)\Git\etc中的git-completion.bash文件最后一行加上:
    alias ls='ls --show-control-chars --color=auto'
  • 在GIT终端输入下面的命令可以提高GIT的输出格式

    1
    2
    3
    4
    git config --global color.branch auto
    git config --global color.diff auto
    git config --global color.interactive auto
    git config --global color.status auto
  • 配置用户名和邮箱(GITHUB注册用户名和邮箱,在使用git push时有用,可以不用配置)

    1
    2
    git config --global user.name "Your Name"
    git config --global user.email you@example.com

工具链安装和配置

  只需要安装工具链就够了,源码什么的可以到https://github.com/PX4/Firmware上下载,也可以通过git命令行下载

  • 本次使用的工具链版本为px4_toolchain_installer_v14_win.exe
  • 安装好后,路径为D:\px4(默认的为C:\px4);附带的PX4的驱动程序也安装好了(win8需另外配置);
  • 通过PX4 Toolchain下载PX4源码:开始菜单—>应用程序—>PX4 Toolchain—>PX4 Software Download。或者直接到github.com网站上去下载,前提是需要指导仓库地址,这样就可以省去这一步和下一步。
  • 下载的源码包含路径和文件夹:

    1
    2
    3
    4
    5
    px4
    Firmware – PX4 固件(所有模块),包括MAVLink
    NuttX – NuttX实时操作系统(RTOS)
    libopencm3 – 可选: 开源Cortex Mx 库, 仅仅用于引导(bootloaders)
    Bootloader – 可选: Bootloaders, 通常不需要操作、修改。
  • 配置eclipse(可以方便查看固件源码以及交互式编译烧写固件)

1
2
3
4
5
6
安装了JAVA,注意不是JRE,JAVA(JDK)是JAVA程序运行环境,JRE是开发工具包;
注意:当windows操作系统为64位时,JAVA的安装位置在c:\Program Files (x86)\Java\jre_xxx,而不是通常的c:\Program files\Java\jre_xxx,因此必须在eclipse文件夹中找到eclipse.ini文件添加“-vm c:\Program Files (x86)\Java\jre_xxx\javaw.exe” ;或者配置JAVA的环境变量也可以。
JAVA(jre not jdk)环境变量配置成功标志:
安装完PX4 Toolchain后就已经集成了Eclipse,当然我们也可以另外去下载Eclipse,不过要配置环境变量和工具链。打开Eclipse:开始菜单--->所有程序--->PX4 Toolchain--->PX4 Eclipse。第一次启动时,选择好workspace,并勾选Use this as the default and...。
建立工程文件。File--->New--->Makefile Project...。然后点击Browse...,到D:\px4\Firmware,并选择Cross GCC,点击Finish。
可以在右边板块中"Make Target",选中根文件夹,可以创建新的make Target(绿色圆形按钮)。
  • 各make target 说明
    1
    2
    3
    4
    5
    6
    7
    8
    all – builds the autopilot software (depends on archives)
    archives– builds the NuttX OS(编译实时系统NuttX OS,时间需要很久)
    distclean– cleans everything, including the NuttX build
    clean – cleans only the application (autopilot) part,不会清除archives
    pixfmu-v2_default---FMU固件
    px4io-v2_default---IO固件
    upload px4fmu-v1_default – uploads to PX4FMU v1.x boards
    upload px4fmu-v2_default – uploads to PX4FMU v2.x boards

编译和刷固件

1
2
3
4
5
6
7
8
9
10
两种方式:
方式一,通过Eclipse,将第五步配置好后,可以先双击"distclean" ,然后是"archives",再然后是"all",最后双击"upload px4fmu-v1_default",将其编译好的文件上传到PX4FMU v1.x板子上。或者双击"upload px4fmu-v2_default",将其编译好的文件上传到PX4FMU v2.x板子上。上传到板子上的前提是各种连接均已配置好,如驱动、串口等。
方式二,通过控制台,开始菜单--->应用程序--->PX4 Toolchain--->PX4 console;
cd Firmware/
make distclean # Only needed after changes on header files, NuttX or a fresh GIT checkout / update
make archives # 这条命令仅仅是当使用了"make distclean"之后才用,编译Nuttx系统。
make px4fmu-v2_default #编译固件,版本为fmu-v2
make upload px4fmu-v2_default
方式三,通过地面站刷固件,如QGroundControl(QGC)或者Mission Plan,可以刷官方稳定版的固件或者自己编译的固件都可以。
用工具链的控制台编译固件之后:

注:自2015年10月6号后,编译系统有所更改(变为cmake方式,不再是通过makefile),请参见文章:http://blog.csdn.net/freeape/article/details/49024053