Search Results

Search results 1-20 of 32.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • As an addendum, I want to point out that this ST processor is unusual in that the flash memory pages are not divided equally as they are in literally every processor I've ever seen in a 20 year career: Source Code (8 lines)So it could be that the Segger tools are doing something incorrectly on this particular chip if the tools assumed all flash memory pages were of equal size when they aren't. As can be seen in my original post I tried splitting sector 0 off into its own section but this produce…

  • Thank you for the feedback. The issue isn't declaring a value to exist in a particular region per se, but I also need to split off the flash to divide it into a R/W section for user data and save the rest for the code. Following the advice from the Segger wiki to make a new flash memory section leads to a UsageFault_StateError before I can even verify that the desired variables are correctly placed, as outlined in my original post.

  • Our project uses SEGGER Embedded Studio for ARM Release 7.12a Build 2023031402.52776 and works with the STM32F411VET. There are end-user settings we want to store in flash so they can be modified and preserved between power cycles of the device. Looking around we found two major sources of information on how to pull this off, but neither worked completely correctly. The first comes from this Segger forum post (note that this is dated 2017, so may now be inaccurate) : [SOLVED] Placing data at a s…

  • Hello- We are working with : SEGGER Embedded Studio for ARM Release 7.12a Build 2023031402.52776 Windows x64 We are compiling 3rd-party code that uses the USB peripheral on the STM32L062. This code is expecting the linker to define a section for the USB's PMA memory area and auto-generate symbol __pma_end__, however, despite our attempts to edit the link process we constantly get errors that this symbol is not defined. After reading the Segger Wiki page covering the memory map XML format : wiki.…

  • Thank you for the reply. Quote from Segger - Nino: “ Remove that two lines from your batch script and it should behave as expected. Or call the Python script directly. ” It does not matter what variations I put in that would or would not leave a terminal window open if I ran the command directly from the command line. I never see a terminal window spawn nor do I see any output. I have tried to use BAT files that write log outputs so that I could verify the batch file even started but none are ev…

  • Hello all- For a project we are currently using : SEGGER Embedded Studio for ARM Release 7.12a Build 2023031402.52776 Windows x64 Our goal is to allow a Python script to execute when the build process completes. As I understand it, I cannot tell SES to directly execute the PY file. Instead, I have to run a batch file which in turn can execute the Python script. Going to the common project settings I selected our batch file as the Post-Build Command option. The batch file consists of this code : …

  • Using the J-Link probe to connect to an STM32L062 chip on a custom PCB with SES 7.12a as the IDE, I am now unable to connect the J-Link to the processor, even though this setup has worked previously with no issues. The log for connecting is : Connecting ‘J-Link’ using ‘USB 4294967295’ Loaded C:/Program Files/SEGGER/SEGGER Embedded Studio for ARM 7.12a/bin/JLink_x64.dll Firmware Version: J-Link ARM V8 compiled Nov 28 2014 13:44:46 DLL Version: 7.86c Hardware Version: V8.00 Target Voltage: 3.306 D…

  • Quote: “My next step would be to step into the "offending" code on instruction level, and watch relevant port and RCC registers. ” Everything craps out at the function prologue assembly for HAL_UART_Transmit() : ldr r0, =0x200007D8 <huart2>. I know bad things happen when we de-reference illegal areas of memory, but this command is just loading the address into a register. At this stage all the initialization for this function have been commented out. I've been using the "Debug - Internal" build …

  • Hi! I agree this seems like the debugger is perhaps being disconnected. The debugger pins for the L062 are PA13/14 while UART2 is PA2/3 and UART1 is PA9/10. None of my code touches the debugger pins but I am writing on top of the ST MXCube framework. If I comment out the Cube code to initialize the UARTs this issue still happens. Our dev board is a custom product that is as bare-bones as you can get, nothing is attached to any of the GPIO pins except a USB connector and we're also using the Cube…

  • In our project there is a UART transmission function that didn't appear to produce any output, so I edited the code to call it from an infinite loop so I could get it to just spam characters. In release mode, the code doesn't work but the device is still responsive, however, when I try to debug the code to see what is happening I am unable to do so. The two screenshots show the result before and after trying to enter the HAL_UART_Transmit() function. Everything appears normal here at the breakpo…

  • Hello- thank you for the time spent looking into this. I went back to double-check what was used, the code is sourced from "Embedded Systems: Real-Time Operating Systems for Arm Cortex M Microcontrollers", Jonathan Valvano, ISBN: 9781466468863, which from the title can be seen to cover Cortex M in general and not M0 specifically. Both the processors I used from TI and ST were from the Cortex M4 line, so while I am working with M0 now I was mistaken that I had been using M0 originally. I will hav…

  • Hello- Switching to '.balign 2' results in the same errors. I would have been surprised if that did work as I would have expected alignment on 0 to be more restrictive and therefore less likely to have issues. EDIT: Also having errors with balign 4 and 8...

  • Hello- I have the following code in a project for the STM32L062 Cortex M0 processor: Source Code (19 lines) This is code that compiled fine under earlier versions of SES with other Cortex M0 chips from both TI and ST. Now, I am getting "cannot honor width suffix" errors as shown in the image. Internet searches seem to indicate that this is related to using thumb instructions, but also that the 'syntax unified' directive should take care of this. I didn't find any 'allow thumb' options for the as…

  • Hello- changed optimizations from "none" (project default) to "0" and things seem fine. Thanks!

  • I'm having a hard time understanding the rules for when SES does and does not provide information on variables. The attached screenshot shows that variable 'ptr' correctly loaded a value from 'result.value.v_voidPtr', so why is this value not showing in the union for 'result'? Variables also keep appearing and disappearing from the listings of 'locals' and 'autos' even when they are still in scope. Are there some kind of additional settings I need to enable?

  • The STM32L0xx CPU Support Package v2.06 is not generating a correct register XML file for the STM32L062 family (and presumably others). The XML file is placing the DBG_TIM22_STOP bit in register DBG_APB2_FZ as bit 6, but according to the ST datasheet (Reference manual for Ultra-low-power STM32L0x2 advanced Arm®-based 32-bit MCUs RM0376 Rev 7, page 935) this is bit 5. See attached image.

  • Further review indicates that I failed to have the STM32L0 BOOT0 pin wired correctly on the board. With this grounded out (== boot from flash) the code executed correctly after using the "no option byte" HEX file generated by SES and programmed with J-Flash Lite. This issue can be marked as closed/solved.

  • Thank you for the somewhat condescending reply. I will check into the points raised and provide an update on my success.

  • Not sure if this needs to be in the SES or J-Link forums since it isn't clear what part of the process is failing. Using SES 6.32 I am creating an application for the STM32L062K8U6 on a custom PCB. I have code that works correctly when I do "Build->Build and Run". The output window says that it is downloading the ELF file, which is 57kb. In the project options Common->Linker setting I have the HEX file enabled as an additional output. In contrast to the 57kb ELF file the HEX file is 5kb which is…