cancel
Showing results for 
Search instead for 
Did you mean: 

Nucleo interfaced with ADS1293

tejasharma13
Associate II

Hello Community,
I'm trying to interface STM32 P-NUCLEO-WB55 with ADS1293 via SPI communication protocol, But there is a issue I'm unable to read data, to verify the SPI I tried to print "Reg10 = %d\r\n" but it is returning zero as value. I'm attaching the connections diagram and ioc diagram and code file, Can anyone please help me with where I'm getting wrong..
Thank you

10 REPLIES 10
Peter BENSCH
ST Employee

Welcome @tejasharma13, to the community!

I’m afraid there won’t be much we can do to help you here. A similar question was already asked here, and it was explained to the person asking that the question would probably be better suited to TI.

Hope that helps?

Regards
/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hey Peter, Thanks for the reply
The reply on that question says that it would be appropriate to inquire in TI, but I have used the same breakout board with Arduino Nano and achieved results. However, when I attempted to connect it with Nucleo, the values did not appear.

mfgkw
Senior III

Are you sure you can send commands like "REG0=..\r\n" directly to the chip?

I assume you have to send something like a command in one byte and some data (like reg number) in another byte and send this via SPI. Maybe on Arduino you used some lib which translates a text command to the format required by the chip?

I found a description at https://www.ti.com/lit/ds/symlink/ads1293.pdf?ts=1776946446158&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252Fde-de%252FADS1293

If it describes your chip I see nothing like your command "REG...=...".

Hey thanks for reply,

You're right....ADS1293 does not accept commands like  "REG...=..." .

It uses SPI with a binary protocol as described in the datasheet. In my implementation, I’m sending register address and data as raw bytes, I’ve written a function that formats the SPI transaction based on the datasheet.

ADS1293_ReadReg(reg) sends reg 0x80, dummy and reads back the value

This matches the SPI communication format specified in the datasheet and also I have used " https://github.com/Protocentral/protocentral-ads1293-arduino " this library for Arduino.

Can you please go through the code text file which I have attached for details....

Pavel A.
Super User

How about ground? Is the GND connected between the boards?

Yes :)

Great. Get a simple logic analyzer, connect to MOSI and SCK, see if these signals go out on the wires at all. Please don't tell us that you cannot find a simple logic analyzer :)

So have you done as advised in that other thread:

  1. Use an oscilloscope to verify that the signals are clean, with good edges, at the correct levels, etc;
  2. Use a logic analyser to verify the SPI activity. 

 


@tejasharma13 wrote:

 I have used the same breakout board with Arduino Nano and achieved results. .


So use your  logic analyser to capture traces of both the Arduino and Nucleo cases.

Compare and contrast ...

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Sure, We have one in office...I'll try that
Thank you