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.

[参考译文] ADS1263:读取寄存器时出现故障、我读取全部为0

Guru**** 664280 points
Other Parts Discussed in Thread: ADS1263, DAC8760
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/934413/ads1263-troubles-reading-registers-i-read-all-0

器件型号:ADS1263
主题中讨论的其他器件: DAC8760

大家好。 我是新使用此芯片 ADS1263的人。 为了避免一些问题、我使用示例 TIDCAN1A-TIPD188固件中的代码。 我正在使用 Microchip、而 SPI 由软件制成。 所以,我只更改了使 SPI 驱动程序成为一个较低级函数。 嗯、当我向寄存器发送字节时、我们注意到它们是有效的、并且有一些字节读取 ADC。 但是、当我们尝试在启动时读取所有寄存器、例如在更改它们之前的示例、它们中的大部分都是0。 至少有3个值随附。 其中许多都有默认值、我们读取的值为0。 我们注意到的另一点是、这是一个问题。 我们使用 校准命令程序、当我们读取寄存器时、它们位于00中。  

电子设计与 ADS1263评估板相同。 SPI 功能软件与 DAC8760使用相同的代码、只需更改引脚分配。  

我添加了我使用的部分代码。 n´t 我不知道我是否错过了什么。 希望有人能帮忙。 谢谢你

//偏移自校准命令
void ADS126xSendSFOCAL1Command (void){

uint_fast8_t inPMUX_byte、sporte_byte;// bes Leo las entradas anteriores
//读取 INPMUX 设置
ADS126xReadRegister (INPMUX、1、&INPMUX_byte);
//打开多路复用器
sporte_byte = 0xFF;
ADS126x 写入寄存器(INPMUX、1、&sportate_byte);
// cs 低
IO_CS_ADS_SET_LOW ();
//写入命令
ui8Read_Write_SPI_ads126x (SFOCAL1);
//将 CS 设置为高电平
IO_CS_ADS_SET_HIGH ();

//恢复 INPMUX 值
ADS126x 写入寄存器(INPMUX、1、INPMUX_BYTE);
//读取偏移以存储它
ADS126xReadRegister (OFCAL0、1、SFOL1_Bytes[0]);
ADS126xReadRegister (OFCAL1、1、SFOL1_Bytes[1]);
ADS126xReadRegister (OFCAL2、1、SFOCAL1_Bytes[2]);

}

//从给定的数组指针向多个连续的寄存器写入
void ADS126xWriteRegister (int StartAddress、int NumRegs、unsigned char * pdata)
{
//设置 CS 0
IO_CS_ADS_SET_LOW ();
ui8Read_Write_SPI_ads126x (0x40+StartAddress);
ui8Read_Write_SPI_ads126x (NumRegs-1);
for (int i=0;i <<

  

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

    您好 Juan、

    我将会详细介绍并尽快将其回复给您。 同时、您能否提供使用示波器捕获的写入和读取时序图、包括/SCLK、/DRDY、DIN 和/CS?

    此致、

    戴尔

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

    谢谢 Dale Li、我将尝试拍摄我家中有一个旧示波器的信号图片。 我们的家庭办公室由 Covid 提供。 我会尽力而为。

    谢谢你  

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

    您好 Juan、

    我理解这种情况,谢谢。 您使用的特定处理器是什么? 对于 SPI 通信、建议使用专用 SPI 外设、而不是位拆裂操作。

    此致、

    戴尔

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

    您好、Dale。 没错,最好使用专用 SPI 硬件。 电路板采用这种方式制造、因此我需要通过软件使用 SPI。 我们使用 PIC18F46K80。 BTW 我可以读取转换数据、这是可以的。 我仅在配置寄存器方面遇到问题。 这就是为什么我不明白是不是这样的错误。  

    此致、

    胡安   

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

    尊敬的 Juan:

    感谢您的更新。 我不确定是否值得花时间研究该寄存器配置问题、因为您已经计划为 ADS1263使用专用 SPI 外设。 如果您认为值得、请提供您的写入和读取使用示波器捕获的时序图、包括/SCLK、/DRDY、DIN 和/CS。  

    此致、

    戴尔

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

    您好、Dale。  

    很抱歉、我的英语不好。 我将尝试使用示波器捕获时间并发送它。 目前无法通过硬件使用 SPI、可能是在未来的设计中。  

    此致

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

    尊敬的 Juan:

    明白了、我正在等待您的计时。

    此致、

    戴尔

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

    您好 Dale、我很抱歉我迟到了。 我们尝试上周完成安装的其他板。 在该板中、我可以读取寄存器。 因此、问题在于硬件、我们正在寻找更改 PIC 或 ADS1263。

    感谢您的帮助和时间。

    此致