4.1k views
in System Integration by
Hello all,

Is it possible to integrate an Embedded Wizard Studio project in System Workbench for STM32 ? I am using the Evaluation Edition of the wizard studio.

Best Regards,

Valentin

2 Answers

+4 votes
by
 
Best answer
Hello Valentin,

Example for STM32F746DISCO, Enjoy!

https://drive.google.com/open?id=0B8plE2t3z9EESVhHcGJ5YlpZSkU

This is my awkward attemp to combine STM32CubeMX, SystemWorkbench and Embedded Wizard in one project. Seems working. Yet I believe TARA engineers can do better...

With regards
by

 Jsueprez, hi

It is supposed to be flashed (as well as debugged) in System Workbench (through st-link for sure).

in my project main.c contains main() which was generated bt CubeMX. Further Tara.c contains "old main" which I call as just one FreeRTOS task. That is it.

I you have problem with this porting I can try to do it for you. Just to be sure: the main idea is to make project System Workbench compatible, is that what you need? :-)

by
Yes, what i need really is to work the C code on my eclipse IDE.I could integrate and compile the project with all .c and .h file necesary to control the display.Also i have a project in embedded wizard. But i'm having problem when i run the code, the display show like if it was broken.

When i do the debug, i can see that the code stop in Infinite_Loop all the time.

If you can help me it will be very gratefull...
by
if you have the picture already (even like on broken screen) it seems as gui is running. The issue could be in SDRAM initialazation and in LCD initialization part.

ps: check your message box.
by
Hallo,

i tried to make a template for the STM32F469 Discovery Board. I followed the steps from above but my code/project is not working. In the System Workbench i get the following errors if i try to build it:
undefinded references and more undefined references of some Objects generated form Embedded Wizard.
All the undefined references are in the generated Code of Embedded Wizard. I don't know why this is happening, because i think i have all necessary includes  included. I hope somebody can help me with this problem.
Here is a Download Link to the template:
https://www.dropbox.com/s/x6dwm1ox96voo09/EmbWizCode_ExampleDeviceIntegration.zip?dl=0
by

I figured out my problem! It was a wrong setting in the CubeMx file. Now i have a example which can be built in the system workbench. But the Display is still not working see the following picture:

I think it is a problem of the clock setting in my project. Here is a picture of the Clock Setting in Cube MX:

I made in the CubeMX also the DCMI (Slave 8bits External Synchro), DMA2D, DSIHost (Adapted Command Mode), FMC (SDRAM1 -  SDCKE0+SDNE0 - 4 banks - Adress 13bits - Data 16bits), I2C1, I2C2, I2S2, LTDC (RGB565 [16bits] - DSI mode), QUADSPI, RTC.

I use Free RTOS and my main and this is my main:

int main(void) {

    /* USER CODE BEGIN 1 */

    /* USER CODE END 1 */

    /* MCU Configuration----------------------------------------------------------*/

    /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
    HAL_Init();

    /* USER CODE BEGIN Init */

    /* USER CODE END Init */

    /* Configure the system clock */
    //SystemClock_Config();
    /* USER CODE BEGIN SysInit */
    /* initalize system */
    EwBspConfigSystem();

    /* configure system tick counter */
    EwBspConfigSystemTick();

    /* configure realtime clock */
    EwBspConfigRealTimeClock();
    /* USER CODE END SysInit */

    /* Initialize all configured peripherals */
    MX_GPIO_Init();
    MX_FMC_Init();
    MX_LTDC_Init();
    MX_DCMI_Init();
    MX_QUADSPI_Init();
    MX_I2C1_Init();
    MX_I2C2_Init();
    MX_I2S2_Init();
    MX_RTC_Init();
    MX_USART6_UART_Init();
    MX_DMA2D_Init();
    MX_DSIHOST_DSI_Init();

    /* USER CODE BEGIN 2 */
    BSP_SDRAM_Init();

    /* configure LED */
    EwBspConfigLed();

    /* initialize serial interface for debugging and connect xprintf module */
    EwBspConfigSerial();
    xdev_out(EwBspPutCharacter);

    //extern main_old(void);
    //main_old();
    /* USER CODE END 2 */

    /* USER CODE BEGIN RTOS_MUTEX */
    /* add mutexes, ... */
    /* USER CODE END RTOS_MUTEX */

    /* USER CODE BEGIN RTOS_SEMAPHORES */
    /* add semaphores, ... */
    /* USER CODE END RTOS_SEMAPHORES */

    /* USER CODE BEGIN RTOS_TIMERS */
    /* start timers, add new ones, ... */
    /* USER CODE END RTOS_TIMERS */

    /* Create the thread(s) */
    /* definition and creation of defaultTask */
    osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);
    defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);

    /* definition and creation of TaskEmbWiz */
    osThreadDef(TaskEmbWiz, StartTaskEmbWiz, osPriorityIdle, 0, 1280);
    TaskEmbWizHandle = osThreadCreate(osThread(TaskEmbWiz), NULL);

    /* USER CODE BEGIN RTOS_THREADS */
    /* add threads, ... */
    /* USER CODE END RTOS_THREADS */

    /* USER CODE BEGIN RTOS_QUEUES */
    /* add queues, ... */
    /* USER CODE END RTOS_QUEUES */

    /* Start scheduler */
    osKernelStart();

    /* We should never get here as control is now taken by the scheduler */

    /* Infinite loop */
    /* USER CODE BEGIN WHILE */
    while (1) {
        /* USER CODE END WHILE */

        /* USER CODE BEGIN 3 */

    }
    /* USER CODE END 3 */

}

I know that the issue appears when the function HAL_LTDC_ConfigLayer(&hltdc_handle, &LayerConfig, LAYER_INDEX ) in ew_bsp_display.c (Line 329) is called.

I hope that someone can help me with this issue. Thanks guys.

By the way in the Linkto the new version:
https://www.dropbox.com/s/hxzuxlmcyk9mrme/Template.zip?dl=0&m=

0 votes
by
Here is an actual template for the STM32F469I-Discovery Board:
https://ask.embedded-wizard.de/1335/freertos-system-integration-of-embedded-wizard

Ask Embedded Wizard

Welcome to the question and answer site for Embedded Wizard users and UI developers.

Ask your question and receive answers from the Embedded Wizard support team or from other members of the community!

Embedded Wizard Website | Privacy Policy | Imprint

...