Hi,
I know that article, some months ago, after reading it, I created a test application that uses 9 DMA channels concurrently, it is under ./testhal/STM32F4xx/DMA_STORM. I haven't been able to replicate the problem.
Another problem regarding DMA has been acknowledged by ST but it is not about more than two concurrent DMA channels, a description is here: viewtopic.php?f=3&t=275
It does not affect ChibiOS.
Giovanni
STM34F4 Discovery Board Multiple Serial Ports Problem
Moderators: RoccoMarco, lbednarz, tfAteba
- Giovanni
- Site Admin
- Posts: 14892
- Joined: Wed May 27, 2009 8:48 am
- Has thanked: 1202 times
- Been thanked: 996 times
-
erwinkendo
- Posts: 14
- Joined: Wed Apr 25, 2012 4:44 am
Re: STM34F4 Discovery Board Multiple Serial Ports Problem
Thank you for all the help.
It was indeed a DMA channels problem, I updated my trunk, changed I2C1 DMA channel and problem solved. Once I fixed it, I tried reading and writing to a BaseChannel in a SerialDrive, but for a high amount of iterations, it seems to create a system lock, so UART driver performs better in this cases.
Maybe a related issue, is it normal if you disconnect one of the I2C cables when reading or writing to a device (and with a timeout different to INFINITE) that the system halts completely? The USART and SERIAL implementation don't behave in this way.
It was indeed a DMA channels problem, I updated my trunk, changed I2C1 DMA channel and problem solved. Once I fixed it, I tried reading and writing to a BaseChannel in a SerialDrive, but for a high amount of iterations, it seems to create a system lock, so UART driver performs better in this cases.
Maybe a related issue, is it normal if you disconnect one of the I2C cables when reading or writing to a device (and with a timeout different to INFINITE) that the system halts completely? The USART and SERIAL implementation don't behave in this way.
- Giovanni
- Site Admin
- Posts: 14892
- Joined: Wed May 27, 2009 8:48 am
- Has thanked: 1202 times
- Been thanked: 996 times
Re: STM34F4 Discovery Board Multiple Serial Ports Problem
I2C is "problematic", I don't think that hot dis/connections can be done reliably, Barthess could give you more info. Also, where this system hangs when this does happen?
Giovanni
Giovanni
Re: STM34F4 Discovery Board Multiple Serial Ports Problem
erwinkendo wrote:....Maybe a related issue, is it normal if you disconnect one of the I2C cables when reading or writing to a device....
Disconnecting any working I2C system is definitely not "normal". Period.
For such purposes USB was once invented ...
-
DrunkenDonkey
- Posts: 124
- Joined: Sun Aug 28, 2011 5:16 pm
Re: STM34F4 Discovery Board Multiple Serial Ports Problem
If you have tried to simulate i2c device not responding, then the driver correctly exits with an error after the timeout, tried that several times, resistors pull the SDA up and the code detects it as NAK and thats all.