在MSP430上的外部接近报告程序

9个帖子/ 0新
最后发表
mabraun.
离线
最后一次露面:3年10个月前
加入:2015-11-16 15:57
在MSP430上的外部接近报告程序

你好,

首先:我的目标是让外部接近报告应用程序(projects\host_apps\da1458x\proximity\reporter)的主机应用程序在MSP430上运行。

为了做到这一点,我尝试着将项目“移植”到Code Composer Studio (CCS)。我最初的想法是在CCS中创建一个干净的项目,添加Keil项目的源文件和头文件,并替换特定于设备的驱动程序(如SPI)。我的问题是我无法让项目运行,因为CCS无法访问DA14580 SDK。(app.c, app_task.c, ble_msg.c, ....所有文件都来自SDK。)项目需要访问SDK是否正确?我该怎么做呢?

我想我不是第一个试图让接近记者运行在一个MSP430。对于这个问题是否有指南?我尝试使用UM-B-010和UM-B-013,但我觉得它们用处不大,因为它们只是解释了主机应用程序在DA1458x上运行的场景。

任何帮助都赞赏!

mabraun.
离线
最后一次露面:3年10个月前
加入:2015-11-16 15:57
让我提炼一下我的问题。在

让我提炼一下我的问题。在所附的屏幕截图中,您可以看到外部处理器配置的基本架构,如各种Dialog用户手册中描述的那样。一般来说,我不知道proximity reporter应用的哪一部分是“host application”的一部分(截图中的绿色框),以及如何将host application连接到平台的其余部分。

我想知道的是

1.接近报告程序的哪些头文件/源文件是“主机应用程序”的一部分?
2.这些文件(主机应用程序)需要编译DA14580 sdk的哪些部分?(SDK被构造为'app_modules', 'ble_stack', 'common_project_files'和'platform'。我可以直接从项目中删除“平台”部分吗?)
3.“主机应用程序”对剩余系统的界面是什么?如何将主机应用程序连接到My MSP平台?我正在寻找一个主机应用程序函数的简明列表,需要连接到平台。

提前谢谢!

mt_dialog.
离线
最后一次露面:6个月1个星期前
工作人员
加入:2015-06-08 34
嗨mabraun,

嗨mabraun,

外部处理器配置中的邻近应用程序与位于SDK/projects/host_apps/windows/proximity/reporter中的windows报告程序一起执行,在那里你可以找到所有必需的头文件和源文件,用来创建你的自定义外部主机。应该有user_platform,以便设置UART并与外部主机通信。580的外部应用程序通过UART通过GTL通信,请检查UM-B-010邻近应用程序,了解更多信息。

谢谢mt_dialog.

mabraun.
离线
最后一次露面:3年10个月前
加入:2015-11-16 15:57
嗨MT_dialog,

嗨MT_dialog,

谢谢你的回复。所以据我所知,SDK在外部处理器配置中为接近报告程序提供了两个不同的示例:
1. Windows应用程序(SDK / Projects / Host_Apps / Windows / Proximity / Reporter),它打算通过UART与DA14580连接。
2.在SDK \ Projects \ host_apps \ da1458x \ proximity \ Reporter下找到的项目。在这种情况下,两个DA14580通过SPI连接;一个DA14580正在取代外部微控制器的作用,另一个DA14580正在采取BLE收音机的作用。此设置不需要Windows应用程序。

你能否证实?

我的意图是通过SPI连接我的DA14580到外部微控制器,因此我试图使用示例#2 (SDK\projects\host_apps\da1458x\proximity\reporter)作为参考,而不是windows应用程序。

希望这说得通。

干杯,
mabraun.

编辑:我只是在说附近的记者。我知道近距离监控器需要增加DA14580。

mt_dialog.
离线
最后一次露面:6个月1个星期前
工作人员
加入:2015-06-08 34
嗨mabraun,

嗨mabraun,

是的,你可以使用两个580(一个有外部应用程序,另一个有堆栈),并通过SPI在GTL上相互交互,你可以在UM-B-013中找到更多信息。

谢谢mt_dialog.

mabraun.
离线
最后一次露面:3年10个月前
加入:2015-11-16 15:57
嗨MT_dialog,

嗨MT_dialog,

谢谢你的解释。这意味着在项目“SDK\projects\host_apps\da1458x\proximity\reporter”中,GTL层对应于“spi_hci_msg.c”。然而,文件名“spi_hci_msg.c”表明这里使用的是HCI接口。此外,该文件中的所有注释都建议相同的事情。在那个例子中使用的协议真的是GTL吗?为什么总是谈论人机交互?据我所知,这两个接口之间存在显著差异(至少从协议堆栈的角度来看)。

谢谢,
mabraun.

mt_dialog.
离线
最后一次露面:6个月1个星期前
工作人员
加入:2015-06-08 34
嗨mabraun,

嗨mabraun,

580并不完全支持HCI接口的所有命令,所以命令是在GTL之上的。

谢谢mt_dialog.

mabraun.
离线
最后一次露面:3年10个月前
加入:2015-11-16 15:57
嗨MT_dialog,

嗨MT_dialog,

谢谢你的帮助,我终于让项目运行了!:)

我还有一个问题。与我在此所述的问题有关(http://support.dialog-semiconductor.com/spi-slave-mode-not-working这样的…),我必须在spi_hci_slave_init()的SPI初始化期间清除SPI_CTRL_REG中的SPI_EN_CTRL位。否则SPI连接将不稳定。

在“projects\target_apps\ble_examples\prox_reporter_ext_spi”项目中禁用SPI_EN_CTRL是否有任何后果?

谢谢,
mabraun.

mt_dialog.
离线
最后一次露面:6个月1个星期前
工作人员
加入:2015-06-08 34
嗨mabraun

嗨mabraun

也许你的线条有点吵,这就是为什么当禁用spi_en时,你会得到没有错误的数据。如果SPI_EN在MSB和LSB位之间取消激活,则I / O缓冲区将重置并转到空闲状态。它很好地让SPI_EN激活,它应该在清晰的线条中保护无效数据。

谢谢mt_dialog.