Comments (4)
For anyone working on this, I discovered yesterday that if you use the I2S/SPI interface in a 'send limited memory block, interrupt on completion' mode, the function of the GPIO pin seems to be 'reset to default' when the interrupt trips. So when I wrote new data and triggered the send a second time, nothing seemed to happen but actually the DMA/I2S/SPI stuff was fine, but I needed to reprogram the GPIO pin again before starting.
from esp8266_mp3_decoder.
Aha - seems all the magic is in mp3/driver/i2s_freertos.c. All rather 'black box' though - is there any documentation for these incantations and interesting register writes? For example, I think I might need to either use a different set of calls or a different (slower) timer if I want to (mis)use the I2S interface for my project.
from esp8266_mp3_decoder.
Sorry, there's not really any other information on the i2s hardware at the moment.
from esp8266_mp3_decoder.
Jeroen,
Thanks for the feedback. FYI the driver has a slight error – you can only divide the clock rate down by at most 63 x 63 not 127 x 127. I’ve managed to (mis)use the interface by sending 32-bits for every true data bit meaning I’m running the clock at 32-times the speed I really wanted. But it works a treat!
However next time I’ll probably use the HSPI interface instead as it looks like that can be done in a similar manner but with a lower clock speed.
Paul DS
P.S. I will release my code once I’ve had time to finish tidying it up. Teenage children and their exams are slowing me down .
From: Jeroen Domburg
Sent: Tuesday, May 24, 2016 7:33 AM
To: espressif/ESP8266_MP3_DECODER
Cc: papadeltasierra ; Author
Subject: Re: [espressif/ESP8266_MP3_DECODER] esp8266 newbie - where's the DMA precisely? (#17)
Sorry, there's not really any other information on the i2s hardware at the moment.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
from esp8266_mp3_decoder.
Related Issues (20)
- Is it possible to read data from SD card instead of streaming server? HOT 3
- Hardware PWM vs I2S HOT 4
- Connecting the SRAM HOT 9
- ES9023 MCLK HOT 10
- ESP-12E gets extremely hot HOT 4
- xTaskCreate sets usStackDepth to e.g. 2100 for 2100 bytes (not 2100 words) HOT 5
- The range of I2S_CLKM_DIV_NUM and I2S_BCK_DIV_NUM HOT 1
- Setup Help HOT 8
- What do these constants mean?
- Reboot Loop! MEM CHECK FAIL HOT 1
- Waiting for network... loops HOT 1
- Connection closed. lwip_read failes with -1
- List of needed dependencies?
- It's been restarting all the time HOT 1
- mv: cannot stat ‘eagle.app.flash.bin’: No such file or directory HOT 1
- Schematics HOT 4
- make wifi bridge between phone and mobile HOT 1
- using esp01 without spi ram, but with i2s codec HOT 2
- compile issue
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esp8266_mp3_decoder.