2015-10-13 25 views
0

我正在研究iOS应用程序以与Arduino板进行交互。在Arduino一侧,我使用“透明”串行实现在HM-10/11固件中。因此,我只需将HM-10/11 RT/TX引脚与Arduino的引脚连接起来,它就可以完美工作,写入特定的特性以发送数据并订阅/读取某些特定的BLE模块。无需在arduino草图中使用任何SDK或BLE库,无需修改引导加载程序。我需要NRF51822 BLE UART的主板吗?

现在我需要支持NRF51822 BLE芯片。 Nordic已经在firmware sources中实现了UART串行,但是对于我的NRF51822板(在ebay上购买),由于我看不到0001服务和00020003特性,所以它没有默认上传到芯片。我是否需要购买NRF motherboard并编译并上传此固件?我可以做到这一点,而无需购买此开发工具包我可以通过USB上传还是通过BLE上传?

回答

2

如果您使用的是NRF51822独立模块,那么通过SWIO/SWCLK引脚更新其固件,您需要一个兼容的JTAG编程器/调试器(您可以登录segger网站)。您可以使用Keil IDE将更新后的固件上传到NRF51822的闪存中。

0

nRF51和nRF52开发板具有板载Segger/JLink。那么你可以在nRF51822上进行开发和调试,也可以对其他nRF51822进行闪存。

1

虽然您需要使用SWD程序员上传,但您不仅限于Segger。 有像黑魔法问题这样的开源替代品,你可以从ebay闪存到$ 5硬件(stm32f103板)。

您的编译器工具链也不限于Keil或IAR。

它可以使用Eclipse和GCC进行编译(Nordic有一个关于如何设置Eclipse基本开发环境的博客条目) 您甚至可以使用Arduino IDE对这些设备进行编程。

可以上传OTA,但是您需要首先使用SWD将OTA引导加载程序闪存到设备上,即使这样,您可能也需要通过手机上传,因为我不知道任何PC设备支持通过DFU协议传输(虽然有些可能存在)

这些设备本身不支持USB。有些主板使用这些设备有一个单独的处理器,允许上传,就好像该芯片是一个大容量存储设备,但我不知道可以插入此模块的主板,它具有该功能。

顺便说一句。您链接到的模块实际上是由Waveshare.com设计和制造的。看看他们的网站,它有硬件上的完整文档,包括原理图