EMbitz
Update for EmBitz 1.11 - Printable Version

+- EMbitz (https://www.embitz.org/forum)
+-- Forum: EmBitz (https://www.embitz.org/forum/forum-1.html)
+--- Forum: Using EmBitz (https://www.embitz.org/forum/forum-2.html)
+--- Thread: Update for EmBitz 1.11 (/thread-12.html)



Update for EmBitz 1.11 - Mink - 01-09-2020

While we all wait for the new version EmBitz 2.0, i decided to make an update for EmBitz 1.11.
First of all, this is an update of the libraries and the list of supported microcontrollers.
Download the file here https://www.dropbox.com/s/upmp6r1fuqltrzp/UpdateLib_1.0_For_EmBitz_1.11.zip

Select STM32 when creating a project to use this update.

[attachment=2]

Libraries available CMSIS, SPL, HAL, LL. Note that the HAL library is partially LL dependent. Therefore, if you select only HAL, some modules will be disabled (the list of disabled modules can be found in the stm32XXxx_hal_conf.h file).

To install this update, just unzip the archive into the folder with EmBitz 1.11.
Typically a path in x64 Windows
Code:
C:\Program Files (x86)\EmBitz\1.11\
The x86 Windows path
Code:
C:\Program Files\EmBitz\1.11\

This update requires EBlink. Current version 2.8 https://www.dropbox.com/s/fefp18w932vxii7/EBlink_2.8_For_EmBitz_1.11.zip
For installation, unpack into the EmBitz folder.

I have also updated the compiler to the current version. https://www.dropbox.com/s/yr86grco7g21ior/gcc-arm-none-eabi-9-2020-q2-update_For_EmBitz_1.11.7z
This is an optional update. Install only if you need a new compiler or you need STM32L5 microcontrollers. They have an ARM Cortex-M33 core, which is not supported by the compiler GCC 5.4 from the distribution EmBitz 1.11.

Please note that EB monitor does not work with this compiler. Use Semihosting.

To use this compiler, you must select it in the window Tool settings (opens from the menu Setting -> Tools...).

[attachment=3]

Path compiler
Code:
${EMBITZ}\share\armgcc_9\bin

Here are some examples of projects created using this update. https://www.dropbox.com/s/ekhxrimq1ibce98/Examples.7z

----------------------------------------------------------------

Update v1.1 https://www.embitz.org/forum/thread-12-post-45.html#pid45


RE: Update for EmBitz 1.11 - Mink - 01-09-2020

Patch for "UpdateLib_1.0".
Fixed missing flag "-mfloat-abi=hard" for C++ compiler.


RE: Update for EmBitz 1.11 - Mink - 05-09-2020

Please note that when using a new version of the compiler, interrupts do not work when LTO optimization is enabled. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83967
In GCC 5.4 from the EmBitz distribution does not have this bug.

If you need LTO, use the workaround. Set build priority to high (menu File -> Properties) for the startup file.


RE: Update for EmBitz 1.11 - n1kt0 - 05-09-2020

Wow, nice work! Thank you!


RE: Update for EmBitz 1.11 - AVI-crak - 10-09-2020

Very strangely, gcc-arm-none-eabi-9-2020-q2 did not find any new warnings or errors. I guess I don't have them.
I found new files created: specs and libraries. This is not in the official gcc-arm update. Doesn't work without add-ons.
Interrupts can be used from any * .c, * .cpp file, the main thing is to declare them weak.
void __attribute__ ((weak)) EXTI9_5_IRQHandler (void)
Printing works without problems.
Thank.


RE: Update for EmBitz 1.11 - Mink - 17-09-2020

Update version 1.1.

In package STM32Cube_FW_F4_V1.24.0 there a bug in the file stm32f4xx_hal_exti (structure field name difference) because of this, the code did not compile. Fixed by replacing the package with STM32Cube_FW_F4_V1.25.0.
Added choice of stack location first in RAM.
https://www.dropbox.com/s/38l9jy4u3mvl1wh/UpdateLib_1.1_For_EmBitz_1.11.zip?dl=0

In compiler has a problem because of which did not work, the malloc function, and similar. Fixed.
https://www.dropbox.com/s/hh72886laog2tkg/gcc-arm-none-eabi-9-2020-q2-update_For_EmBitz_1.11..7z?dl=0

EBlink updated to version 2.9 https://www.dropbox.com/s/34r0lremrw0qjmp/EBlink_2.9_For_EmBitz_1.11.zip?dl=0


RE: Update for EmBitz 1.11 - Mink - 23-10-2020

Update version 1.2. https://www.dropbox.com/s/mricb7d86ceh2gk/UpdateLib_1.2_For_EmBitz_1.11.zip

Fixed bug DebugRAM target for STM32H7. The code was located in DTCMRAM, but in file system_stm32h7xx.c in register SCB->VTOR written memory address RAM_D1.
Code:
/* Configure the Vector Table location add offset address for cortex-M7 ------------------*/
#ifdef VECT_TAB_SRAM
  SCB->VTOR = D1_AXISRAM_BASE  | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal D1 AXI-RAM */
#else
  SCB->VTOR = FLASH_BANK1_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH */
#endif
Now instead DTCMRAM used RAM_D1.

Also, the debug information level has been reduced from -g3 to -g2. This has greatly reduced the size of the object files (obj folder).

EBlink updated to version 3.8 https://www.dropbox.com/s/qhxt7n05ad0t7ly/EBlink_3.8_For_EmBitz_1.11.zip?dl=0


RE: Update for EmBitz 1.11 - Mink - 05-11-2020

Current version EBlink.