Hm, just found this post:
http://forum.chibios.org/phpbb/viewtopic.php?f=2&t=924
Not good at all. I really don't like the idea for SW I2C. But I cannot track the problem, the default: case in the event interrupt is not "a default", it is obviously intended to "work" in some ...
Search found 16 matches
- Mon Feb 23, 2015 5:34 pm
- Forum: STM32 Support
- Topic: I2C hangs in event interrupt if I2C bus is disturbed
- Replies: 2
- Views: 3828
- Sun Feb 22, 2015 9:57 am
- Forum: STM32 Support
- Topic: I2C hangs in event interrupt if I2C bus is disturbed
- Replies: 2
- Views: 3828
I2C hangs in event interrupt if I2C bus is disturbed
This is a minor issue from RTOS point of view, but still I need to find a solution for it ...
I have a system where the MCU (STM32F4) communicates with a slave chip - ecompass. Currently the MCU polls the ecompass chip every 20ms to feed data to ecompass processing algorithm that makes the ...
I have a system where the MCU (STM32F4) communicates with a slave chip - ecompass. Currently the MCU polls the ecompass chip every 20ms to feed data to ecompass processing algorithm that makes the ...
- Sun Feb 22, 2015 9:21 am
- Forum: STM32 Support
- Topic: HandFault exception in PROLOGUE of DMA1_Stream interrupt
- Replies: 4
- Views: 2983
Re: HandFault exception in PROLOGUE of DMA1_Stream interrupt
ICU handler is relatively short - there are no long running activities, just simple Manchester decoding, I think it is below 5us (@84MHz) in any case. But I cannot disable it.
There is an I2C thread that polls the ecompass chips every 20ms, it reads some 12-18 bytes in each transaction.
In parallel ...
There is an I2C thread that polls the ecompass chips every 20ms, it reads some 12-18 bytes in each transaction.
In parallel ...
- Fri Feb 20, 2015 6:21 pm
- Forum: STM32 Support
- Topic: HandFault exception in PROLOGUE of DMA1_Stream interrupt
- Replies: 4
- Views: 2983
Re: HandFault exception in PROLOGUE of DMA1_Stream interrupt
Yes, all debug options are enabled. I will try the IRQ priority fix, if this doesn't help I will have to rewrite the I2C code using no interrupts (maybe libopencm3 driver or std lib ones).
Thank you for the hint, hope that the priority will help.
Thank you for the hint, hope that the priority will help.
- Fri Feb 20, 2015 1:04 pm
- Forum: STM32 Support
- Topic: HandFault exception in PROLOGUE of DMA1_Stream interrupt
- Replies: 4
- Views: 2983
HandFault exception in PROLOGUE of DMA1_Stream interrupt
I see sporadic hardfaults (STM32F4 target). The application is quite complex - it uses 3 UARTS to communicate to the outside world and to other modules, also monitors digital compass on the I2C bus and not-so-often accesses an SPI FLASH on SPI1 peripheral. In the meantime I use the ICU peripheral ...
- Tue Feb 17, 2015 6:33 pm
- Forum: STM32 Support
- Topic: "Dirty" stop of the RTOS and entering deep sleep mode
- Replies: 2
- Views: 2466
Re: "Dirty" stop of the RTOS and entering deep sleep mode
Thank you, I will look for this information.
- Mon Feb 16, 2015 8:37 pm
- Forum: STM32 Support
- Topic: "Dirty" stop of the RTOS and entering deep sleep mode
- Replies: 2
- Views: 2466
"Dirty" stop of the RTOS and entering deep sleep mode
In my application I have to stop the microcontroller (STM32F4) in deep sleep mode. Then it will be woken by edge on SYS WKUP pin (this is equivalent to reset - that's why I don't care about "clean" stop of the RTOS - I don't need to "re-start" after sleep).
I have implemented the steps to stop all ...
I have implemented the steps to stop all ...
- Sat Dec 20, 2014 7:11 pm
- Forum: STM32 Support
- Topic: Possible issue in USARTv1 driver, serve_interrupt() function
- Replies: 7
- Views: 3816
Re: Possible issue in USARTv1 driver, serve_interrupt() func
Everything without the debug trace. Yesterday I even enabled it (the debug trace) to check context switches to get a hint if anything runs after overrun error. What I saw is that the buffer pointer is not moving any more after the constant interrupt problem.
- Sat Dec 20, 2014 3:42 pm
- Forum: STM32 Support
- Topic: Possible issue in USARTv1 driver, serve_interrupt() function
- Replies: 7
- Views: 3816
Re: Possible issue in USARTv1 driver, serve_interrupt() func
I never lock anything in my threads.
I am using period/width callbacks with ICU driver and have some code inside, I know it runs in the interrupt context. But I don't use locking in my code (in the callback).
I had ADC callback too and it was using chSysLockFromIsr()/Unlock() around the call of ...
I am using period/width callbacks with ICU driver and have some code inside, I know it runs in the interrupt context. But I don't use locking in my code (in the callback).
I had ADC callback too and it was using chSysLockFromIsr()/Unlock() around the call of ...
- Sat Dec 20, 2014 1:59 pm
- Forum: STM32 Support
- Topic: Possible issue in USARTv1 driver, serve_interrupt() function
- Replies: 7
- Views: 3816
Re: Possible issue in USARTv1 driver, serve_interrupt() func
I cannot simplify it, it hangs only with the complex project when all threads are active. Also, it does not appear instantly, I need to run the device for at least several minutes to get the problem.
Meanwhile I made a "hack" to the serve_interrupt() - it just check if ORE bit is set and makes the ...
Meanwhile I made a "hack" to the serve_interrupt() - it just check if ORE bit is set and makes the ...