Where's the I2S slave/master driver in ASF4?

Go To Last Post
10 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

 

Last year I experimented with Atmel Start and seemed bit buggy, but have recently returned to give it another go as it seems much better. So I start developing application for commercial product using I2S and discovered the I2S driver is controller only, no master or slave mode!

 

Using SAMD21 part, with the SAMD21 XPro board as development platform.

 

I'm sure I've read lots of documentation from ASF < 4 covering a complete driver so am stunned that I can't find it in ASF4, or am I missing something?

 

- Using Start, I created new project, added I2S driver.

- Tried to configure the data lines but there are no options.

- The mode drop down box has controller only options

- Go to ASF4 API reference manual, and I2S driver is listed as synchronous controller only, with no options for data transfer

 

Does anyone know if there is driver, and if not, what are my options?

Can I integrate the ASF3 driver into ASF4 project?

Is there any sample code or 3rd party drivers that might help?.

 

 

Thanks in advance

Andrew

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It may be called TWI (Two Wire Interface) instead of I2C. There were apparently some copyright "issues" early on, and that is what Atmel named their implementation of the I2C system.

 

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim,

 

I think Andrew is talking about I2S not I2C

 

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oooops, you are correct!

 

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yep, after info on I2S, the digital audio interface, but thanks anyway.

 

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello!

 

Is there any update in this topic? , im stuck in the same issue, but using the SAM E54 Xplained Pro.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

 

I work on SAM E54, I try to used I2S (with CODEC) but I don't understand.

I add software component I2S in Atmel Start, in "Signals" I have only "Interface 0 FS, Interface 0 MCK and Interface 0 SCK" but I need SDO and SDI for send data. I don't have the solution for the moment...

 

The "I2S_0_example()" with DMA don't work, it's say "undefined reference to dma..." but H files are presents...

 

If you have any solution, i'm here.

 

Thanks

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

When creating the Atmel start proyect and adding the I2S driver, under the component settings you can chose the mode, here is where you tell the chip to act as a controller, as a slave or a master. The controller uses only the clocks and thats the default case, in master and slave you'll be able to see the TX and RX signals. That was added not long ago, i think the drivers and examples are still being polished. Hope that helps with the first part of your problem.

 

To be able to use the DMA example used by the I2S driver, you need to enable the DMA.  This is not done right away by the code added by the I2S as the DMA is completly apart. In the Dashboard, under the components tree theres the DMAC component, this should be enabled and configured. You should enable the channel 0, and some configuration options will appear. Dont remember exactly the configuration needed but this is where you should be looking and not in the code. 

 

Had the same issues not long ago, and in general is all about the ATMEL start configuration. I really hope this helps you out.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks a lot Johannes

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

When I use Atmel Start and add I2S to a new project for the SAMD21J17A, I only have options to select Controller for driver and mode. There is no master mode.

I'd prefer to use the new ASF4 if possible (with minimal effort. lol) Has anyone tackled this yet?