⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support。我们将在未来几天修复bug /优化搜索和标记。
5个职位/ 0个新
最后发表
joachimkr
离线
最后看到:3个月1周前
加入:2018-07-06 08:58
SPI外围

你好,

我正在开发一个定制板,带有DA14531和NXP芯片,通过SPI连接。作为开发环境我使用的是Pro开发板,带有DA14531的女儿。
我把跳线调出SPI,以便连接我的目标,驻留在它自己的主板环境中。
NXP芯片期待一个简单的协议。在读取时,上面的7位是寄存器地址,0位决定读取或写入。
因此,我猜,必须传输2字节一次读取,第二个被忽略,但MISO是由NXP芯片驱动的。

我现在被困在图书馆里了。我关闭了项目中的DMA配置参数(删除了定义CFG_SPI_DMA_SUPPORT)并准备了我的'read_register'函数。

库在文件spi931.c的第903行停止了一个无限循环:

//当spi_rx_fifo_empty_status_getf() == SPI_RX_FIFO_IS_EMPTY时等待;

这是我的图书馆电话:

unsigned char geregister (unsigned int reg_address) {unsigned char reg_addressv = reg_address;for (int i = 0;我< sizeof (recv_buffer);++i) {recv_buffer[i] = (unsigned char) 0xaa;} reg_addressv = reg_addressv << 1;reg_addressv | = 0 x01;//标记读取trx_buffer[0] = reg_addressv;trx_buffer [1] = 0;//虚拟spi_transfer(recv_buffer, trx_buffer, 1, SPI_OP_BLOCKING);返回recv_buffer [0]; }

我们感兴趣的是调用spi_transfer()的地方。

SoC初始化取自spi_flash项目,接口设置为字节传输。
实际上,我将spi_flash示例作为代码库并对其进行了修改。除移除DMA支持外,所有初始化都保持原样。
我不处理中断。

可能出了什么问题?
为什么rx fifo是空的?
它应该是非空的,即使没有什么附加到SPI端口引脚,我错了吗?

谢谢你的帮助和提示,
约阿希姆

关键词:
设备:
PM_Dialog
在线
最后看到:6分18秒前
工作人员
加入:2018-02-08 11:03
嗨joachimkr,

嗨joachimkr,

能否分享一下你是如何将外置MCU与DA14531 DK连接的?

所以,你运行它的时候附加了调试器和固件卡在这一行?

是否有可能使用逻辑分析器,探测SPI线并共享SPI捕获?

谢谢,PM_Dialog

joachimkr
离线
最后看到:3个月1周前
加入:2018-07-06 08:58
你好,

你好,

谢谢你的反应。你的问题假设是一个NXP CPU,它是附加的。不,它是一个外围设备。下面回答大家的问题:

调试器停止,在给定的行中循环。现在我将附加一个分析器,以确保我得到所有预期的反应:

与此同时,我能够解决最基本的问题。结果是,在调用事务函数之前,SPI控制器依赖于将CS信号设置为活动的调用。在激活CS(在我的情况下是低的)之后,spi控制器工作了,我传递了这行代码,得到了一个字节的结果,正如预期的那样。当将MISO附加到low时,它是零,当它附加到high时,如预期的0xFF。

无论是在代码中还是在数据表中,都没有描述该依赖关系。

我建议在示例的源代码中添加注释。此外,我通过项目级别定义禁用了DMA,并注意到通过闪存测试代码成功运行。图书馆的一些描述不见了。越基本,就越重要;-)

尽管如此,这是干净的代码!

谢谢你的评论,

问候,约阿希姆

joachimkr
离线
最后看到:3个月1周前
加入:2018-07-06 08:58
另一个问题了。的

另一个问题了。字节“宽”的外围设备按顺序期望至少2个字节,第二个返回所寻址寄存器的正确内容。
为了解决这个问题,我添加了一个用于寄存器访问的实用程序,它在命令之后发送一个虚拟字节(带有它的时钟脉冲),以获得返回值。
RxFifo中的第一个字节被忽略,垃圾。第二个字节作为函数结果返回。
我很满意,但建议在库代码中添加一些注释。我想,我不是唯一一个遇到类似问题的人。
总体:伟大的工作!
约阿希姆

CYibin
离线
最后看到:7个月1周前
工作人员
加入:2017-12-14 02:48
嗨joachimkr,

嗨joachimkr,

谢谢你!你的建议很好

Br,宜宾