This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS570LC4357:MIBSPI 在一个块中发送 24 位数据帧

Guru**** 2540720 points
Other Parts Discussed in Thread: HALCOGEN

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1550288/tms570lc4357-mibspi-send-24-bits-data-frame-in-one-block

器件型号:TMS570LC4357
主题中讨论的其他器件:HALCOGEN

工具/软件:

您好、

我需要使用 MIBSPI4 向 DAC 模块 AD5422 发送一个 24 位长度的帧。 然而,由 Halcogen 创建的函数仅使用 16 位数据。 卤素中的“Charlen"设置“设置为 24、这样我就可以产生 24 个时钟脉冲。 但我不知道如何设置的 halcogene 推进,在代码中,我应该使用什么类型的数据,当调用函数:  

void mibspiSetData (mibspiBASE-t * mibspi、Uint32、uint16 * data)。
这里是我的 halcogene,确切地说,我只使用长度为 24 位的 TG0(=charlen ):
下面是 AD5422 模块的初始化、它无法完成、因为 MIBSPI 只能使用 16 位。

感谢您的支持 Slight smile

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Louis:

    1.将字符配置为 8 位,

    2.设置 CSHOLD 位: nCS 信号不会被停用、直到下一个控制字段载入新的芯片选择信息

    要使用 HALCoGen 生成的 API、您需要重新编排数据:

    uint32_t 数据= 0x1A2B3C; //24 位数据

    unit16_t txData[3]={0};

    txData[0]= DATA 和 0x00FF;

    txData[1]= data>>8 & 0x00FF;

    txData[2]= data>>16 & 0x00FF;

    mibspiSetData (mibspiREG1、1、&txdata[0])  

    其中 mibspiSetData (..、1、..) 中的“1"</s>“ 是转移组号。