Thread 中讨论的其他器件:ADS1278、controlSUITE
我有一个 TMS320C2000实验套件[R3]和一个 F28335 Delfino 系列控制卡[R2.2]。
我使用其 McBSP-B 从填充了 ADS1278的 ADS1x7xEVM Rev F 中读取数据、该版本在我设置的所有配置中均按预期工作。
现在、由于 ADS1278发送数据的格式为24位二进制补码格式、 因此我想获取符号扩展、以便在检索 DRR2 (MS 字)和 DRR1 (LS 字)时 数据整个32位值将被正确解释为有符号32位值。
惊喜,惊喜! McbspbRegs.SPCR1.bit.RJUST = 0b01;不起作用!
根据数据表:
我的调查结果表明、值0和值2按预期工作、值1不会进行符号扩展、因此基本上与值0一样工作。
出于绝望、我尝试了保留的值3、建议不要使用、该值3执行了符号扩展、就像值1应该执行的那样。
编辑:抱歉、我太快无法查看数据、值3不会对值进行符号扩展! 因此、我无法像预期的那样使用 McBSP 硬件进行符号扩展。 结束编辑
我已经检查了 DSP2833x_Mcbsp.h、希望在结构 SPCR1_BITS 的位字段上找到不对齐的情况、但一切都很好。
Code Composer Studio 版本:6.1.3.00034 + controlSUITE v3.4.0
因此、我可以规避该问题、但我的芯片修订版本仍然存在一些问题、或者什么问题? 我想获得有关此类问题原因的答案。
谢谢。
此致、
Rui