模吧

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

3050查看 | 8回复

用J-Link给crazyflie2.0下载程序

[复制链接]
发表于 2015-8-25 21:43:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 alicepeter 于 2015-8-25 21:43 编辑



Crazyflie是软件硬件都开源的微型四轴飞行器,在微型四轴里面是比较极客型的四轴,目前有1.0和2.0两代。

Crazyflie2.0的系统结构如下:

用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 6495


官方的程序是在Linux下用eclipse开发的,下载和调试用的是ST-Link。下面写一下在windows平台下如何用J-Link来给nRF51822和STM32F405RG烧写程序。

1.给J-Link刷高版本固件

nRF51822用的Cortex-M0的内核,低版本的J-Link固件识别不了Cortex-M0内核,首先要给J-Link刷新固件。刷固件的教程有很多,推荐刷入出厂固件,附件中有J-Link的出厂固件,有了它J-Link想刷哪个版本就刷哪个版本。在安装sam-ba这个软件时,一定要把它带的驱动装上,不然可能会找不到芯片。然后到SEGGER下载最新版的软件,安装完成之后按一下步骤更新。

(1)启动JLink Commander,会提示要升级固件,暂时先不升级。此时可以看到识别出来JlinkV8的序列号S/N是-1,为出厂设置。

(2) 在命令行中输入“exec setsn=XXXXXXXX”。其中XXXXXXXX是8个十进制数,可以随意设定,比如说是当天的日期。需要注意的是,写入序列号后将不能通过本命令更改序列号,除非重新写入固件恢复出厂设置。退出Jlink Commander软件。

(3)断开JlinkV8后重新连接,重新启动Jlink Commander,提示升级,此时可安全升级为最新版固件。

下面是刷新好的V5.00固件的截图。

用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 8290

2.编译工程

可能是出于版权的考虑,crazyflie2-nrf-firmware-master这个nRF51822的工程没有添加nRF51-SDK和S110-SD-v7这个库,需要到nordicsemi官网去下载,下载完之后放分别放到nrf51_sdk和s110这两个文件夹下。注意文件解压后的路径。可以从这个工程的makefile看出这两个文件解压后应该放置的位置。

NRF51_SDK ?= nrf51_sdk/nrf51822

NRF_S110 ?= s110

CFLAGS += -I$(NRF51_SDK)/Include/ble/ble_services/

CFLAGS += -I$(NRF_S110)/s110_nrf51822_7.0.0_API/include

从上面的代码可以看出nRF51-SDK解压后nrf51822这个目录应该在nrf51_sdk这个目录下。s110_nrf51822_7.0.0_API这个文件夹应该在s110这个目录下。

如果不想自己编译这个文件,可以到附件下载 用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 8017 cf2.rar (235.48 KB, 下载次数: 10)

,也可以到github上下载官方编译好的文件。

3.下载

STM32F405RG

给STM32F405RG下载程序比较简单,直接把STM-SWD接口上的SDIO和SCLK和J-Link的响应的接口连接,可以参照一下这个JLINK的SW调试模式连线方式。

用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 7434


PIN 1 (桔红): VCC(3.3V) (目标板上给JLINK的馈电,必须)


PIN 7 (黄)  : SDIO


PIN 9 (绿)  : SCLK


PIN 10(蓝)  : GND (任何一个JLINK的地都可以,比如PIN12)


打开J-Flash,新建工程,在工程设置中的cpu选项中Device选STM32F405RG。






用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 881

用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 3801


配置好之后分别打开附件中cf2loader.hex,cflie.hex这两个文件,选Target下面的connect,然后按F5下载程序。


nRF51822


这个下载程序要安装nRF5x_MDK_8_0_3_Keil4.msi这个程序,这样才能在Device下找到Nordic Semi nRF51822_xxAA这个选项。



用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 1235

用J-Link给crazyflie2.0下载程序 windows,飞行器,Linux,程序,工程 作者:alicepeter 5819

配置好工程之后,分别打开cf2_nrf.hex、cload_nrf_v1.0.hex、nrf_mbs_v1.0.hex、s110_nrf51822_7.0.0_softdevice.hex这四个文件,按F5烧写就行了。

nRF51822的代码结构如下:

+--------------+ 256k

|     MBS      |    Write protected

+--------------+ 252k

|  Bootloader  |

+--------------+ 232k

|              |

|              |

|              |

|              |

|              |

|  Firmware    |

+--------------+ 88K

|              |

|              |

|              |

|              |

|              |

|              |

|  Softdevice  |

+--------------+ 4K

|     MBR      |    Write protected

+--------------+ 0

烧写完成之后,就可以愉快的玩耍了。






v8_ID-XXXXXXXX.rar

25.12 KB, 下载次数: 5, 下载积分: 牛币 -10

J-Link出厂固件

发表于 2015-8-25 22:22:56 | 显示全部楼层
顶一个
发表于 2015-8-26 22:43:46 | 显示全部楼层
好帖,支持一下
发表于 2015-8-30 10:16:31 | 显示全部楼层
技术贴,支持
发表于 2015-11-3 23:59:01 | 显示全部楼层
楼主,能否将 nRF5x_MDK_8_0_3_Keil4.msi这个程序  这个文件共享一下。nordicsemi.com 在我这里网页根本打不开,下不到这个文件。
非常感谢!
发表于 2015-11-6 08:34:27 来自手机 | 显示全部楼层
技术贴,留个脚印wechat:lang_wechat_threadmessage
发表于 2017-11-17 12:18:37 | 显示全部楼层
支持支持,就是附件还是下不了,没牛币
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|关于模吧|APP下载|广告报价|手机版|企业会员|商城入驻|联系我们|模吧 ( 黔ICP备2022002348号-1 )

© 2013-2020 Moz8.com 模吧,玩出精彩!