Search Results
Search results 21-40 of 322.
This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.
-
Hello Vadym, Sounds like you did not add the embOS library to your project. Yes, we have support for STMCubeMX. Please have a look here: wiki.segger.com/Using_embOS_with_STM32CubeMX No, we don't have a STM32WB55 BSP with embOS Cortex-M GCC so far (which is the correct embOS port for STM32CubeIDE): segger.com/products/rtos/embos…tex-m/embos-cortex-m-gcc/ But that can easily be created for your evaluation. Please feel free to contact us directly via our ticket system or support email address: segg…
-
Hello Jim, yes, you can use embOS spinlocks to synchronize data messaging between two or more cores. If you have an embOS instances running on each core you usually have a shared memory in which you can pass data from one core to the other. This shared memory must be secured with a spinlock. That's a generic way which works with every core. But most devices have device specific mechanism to communicate between the cores like triggering an interrupt on the other core. It depends on you applicatio…
-
Quote from westloser86: “This is correct, BLE is time sensitive and modifying the priorities of the ISR might cause instability in connections, advertisements, etc. I would not recommend to change this priorities. ” With Cortex-M the absolute interrupt priority value is not crucial but the comparison of two priorities. For example it makes no difference whether the interrupt priority is 0x00 or 0x80 if this is the only interrupt. Let's say the BLE stack initializes a BLE interrupt at priority 0x…
-
I guess the interrupt is initialized in the BLE library and you don't have the source code, correct? Anyway you can change the interrupt priority at any time later before your application starts. You just need to know which interrupt is used (I think it's the RTCC interrupt) and change the according interrupt priority. But I cannot know whether the interrupt priority has an influence on the BLE stack. Best regards, Til
-
Quote: “As far as I understand, this means that I cannot call the OS_EVENT_SetMask function because my program is in an ISR with higher priority. I have no clue how I can resolve this issue. ” That's correct. embOS API must be called only from embOS interrupts with an according interrupt priority. That means you have to change the interrupt priority to a valid value. Please have a look here and in the embOS manuals: wiki.segger.com/Interrupt_prioritization Best regards, Til
-
Dear Giacomo, Quote from j000: “Since in the method interrupt_handler() I make some calls to OS functions (like OS_PutMail used for mailboxes) If I'm not mistaken I have to tell the OS that I'm within an interrupt, with the methods OS_EnterInterrupt() and OS_LeaveInterrupt(). ” Yes, that's correct. Which error code do you get? Most likely you are using an invalid interrupt priority. The iMXRT1062 has four interrupt priority bits implemented, thus NVIC_SetPriority() expects values from 0 to 15 an…
-
Hello Alexander, IAR changes the runtime model from time to time. This messages says that the embOS libraries were built with an older runtime model. Unfortunately there is no easy fix. The embOS libraries needs to be rebuilt with your IAR version. And we must check whether there is something we need to modify in our code. Please contact us directly per email or our ticket system and we'll help you with the evaluation. You can also give me a call to discuss further details. Best regards, Til
-
Hello, is it possible to share your complete project with us? With the project it should be possible to solve your issue within a few minutes. If not could you please show how StackFS and StackNOR are defined? What else did you change in the project? Regarding hard fault, please have a look here in the application note: Analyzing HardFaults on Cortex-M CPUs (AN00016) Best regards, Til
-
Hallo Philipp, üblicherweise passiert das wenn das Interrupt Pending Flag nicht gelöscht wurde. Du müsstest mal schauen, ob es das bei deinem Device gibt und es dann in der Interrupt Routine als erstes löschen. Ansonsten sieht der Interrupt Controller das ein Pending Flag gesetzt ist und führt die ISR sofort wieder aus. Das sollte aber ohne embOS genauso passieren. Löst das dein Problem? Btw. Ein OS_INT_Call() brauchst du nicht. Das wird nur bei manchen speziellen CPUs gebraucht. Eine embOS Inte…
-
Korrekt, der embOS Timer wird in der OS_InitHW() in der RTOSInit.c initialisiert. Dazu passend müssen dann einige Sachen in der RTOSInit.c angepasst werden damit alle embOS Timing Funktionen über den neuen Timer informiert sind. Das ist aber fast selbsterklärend (z.B. OS_TIMER_FREQ auf die richtige Frequenz des genutzten Timers setzen). Ich würde aber empfehlen den anderen Weg zu versuchen. Das ist eigentlich einfacher. Im Zweifelsfall kannst du uns auch dein Projekt schicken und wir schauen mal…
-
Hallo Philipp, wenn ich das richtig im Kopf habe wird der SysTick in der STM32F10x_StdPeriph_Driver nur für Timeouts benutzt. D.h. dort wird wahrscheinlich nur irgendein Zähler inkrementiert. Das einfachste wäre also den SysTick in der STM32F10x_StdPeriph_Driver nicht zu initialisieren und das Inkrementieren in unserem SysTick Interrupt Handler auszuführen. Alternativ könnte man natürlich auch für das embOS einfach einen anderen Hardware Timer benutzen. embOS ist nicht auf den SysTick angewiesen…
-
Dear Mr. Seitter, most likely the "Printf Integer Support = Long Long" option is not set correctly in your project. Could you please double check that? You could also contact the embOS support directly via our support email address (which you can find in the embOS manual in chapter "Support"). If you like you can send us your project and we'll check it. Best regards, Til
-
Hello, thanks for your inquiry. Quote from bar: “1. Where can I found information about the OS_Init() function? ” Please have a look in the embOS manual which comes with your embOS shipment. It is also available online at: segger.com/downloads/embos/UM01001 Quote from bar: “2. Can I take the embOS example as init structure only use for the RTOS, so Is it right to use all the clock setting and power by the serial example as is or I need to understand what HW setting the embOS example all ready do…
-
Dear Audrey, in my understanding you are using the embOS RX CCRX sources with the IAR EWRX compiler and implement the necessary changes by yourself instead of licensing embOS RX IAR, right? Most likely there is no bug in embOS but in your implementation. What you are currently using is no embOS provided and tested by SEGGER! embOS RX IAR is used in a lot of products without any issues. > This bug appears when two interrupts (nested or with different priorities) run at same time (one interrupts t…
-
Hi Ran, OS_TASK_EnterRegion()/OS_TASK_LeaveRegion() disables preemptive task switches. Whether this has any effect on the BLE stack depends on your application and the BLE stack itself with which I am not that familiar with. Is the BLE communication handled in a task or in interrupts? Best regards, Til