MQX 4.1 Demo for ksplayer

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MQX 4.1 Demo for ksplayer

1,080 Views
kwiksay2
Contributor I

I am trying to run the NXP ksplayer demo for KwikStik ver5 board and have some problems.  I have downloaded and followed AN4523 app note from the NXP webpages. From what I see the latest version is MQX 4.1. I have also downloaded AN4523SW.zip ksplayer demo example and copied it to MQX 4.1 demo folder. I have built the  libraries as per the app note and see them in the demo project when run in Keil uVision5 but I get a lot of errors when building the ksplayer project on uVision5. I installed MQX4.1 in the folder D:Freescale/etc and the app note indicates I need to change the compiler / linker paths in the Player software. Does this mean the paths in Keil  uVision5 and where do I do that.?? or do I have to change the file path description within MQX.  The app note says the procedure is valid for Keil uVision4 and MQX4.0.... so what is difference for uVision5.  I have Keil uVision5 IDE but the exe that runs is actually in uv4 folder but it comes up as uvision5 when opening. Just wondering has anyone any experience in running MQX4.1 with uvision5 and the ksplayer demo.

0 Kudos
4 Replies

945 Views
kwiksay2
Contributor I

Thanks for reply.

I have looked at my version of KeiluVision5 and it is actually 5.29

according to the logs I have posted here is shows 5.29 and using compiler 5.06.

Where are the settings to change these. I tried to look online to get old versions but cannot find any.

I went to NXP webpages for legacy versions and clicked version 5.0 and run it to install. It told me I had newer version installed so I "Replaced all" option, but don't see any changes to the system and still get same errors listed.

Am I using the correct procedures, and I am only using software from NXP webpages and the MQX and the ksdemo were all downloaded from NXP. It seems odd that the demo and MQX or UVision are incompatable since they are downloaded from same source.

0 Kudos

945 Views
kwiksay2
Contributor I
I have got the error list shortened a bit...… now down to 30 errors and 9 warnings.
As Listed Below...
Most of these are relating to pointers etc so need some help please.
Regards
µVision Build Log
Tool Versions:
IDE-Version: µVision V5.29.0.0
Copyright (C) 2019 ARM Ltd and ARM Germany GmbH. All rights reserved.
License Information: L abc, LT, LIC=----
 
Tool Versions:
Toolchain:       MDK-Lite  Version: 5.29.0.0
Toolchain Path:  D:\MyProgramFiles\KEILuVision\KEILv5\ARM\ARMCC\Bin
C Compiler:      Armcc.exe V5.06 update 6 (build 750)
Assembler:       Armasm.exe V5.06 update 6 (build 750)
Linker/Locator:  ArmLink.exe V5.06 update 6 (build 750)
Library Manager: ArmAr.exe V5.06 update 6 (build 750)
Hex Converter:   FromElf.exe V5.06 update 6 (build 750)
CPU DLL:         SARMCM3.DLL V5.29.0.0
Dialog DLL:      DCM.DLL V1.17.3.0
Target DLL:      Segger\JL2CM3.dll V2.99.36.0
Dialog DLL:      TCM.DLL V1.36.5.0
 
Project:
D:\Freescale\demo\ksplayer\uv4\ksplayer_kwikstikk40x256\ksplayer_kwikstikk40x256.uvproj
Project File Date:  04/30/2020
Output:
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\MyProgramFiles\KEILuVision\KEILv5\ARM\ARMCC\Bin'
Rebuild target 'ksplayer Int Flash Debug'
compiling Fonts_LCD.c...
compiling filemenu.c...
..\..\filemenu.c(119): error:  #20: identifier "uint32_ptr" is undefined
    error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_FIRST_FILE, (uint32_ptr) &search);
..\..\filemenu.c(119): error:  #31: expression must have integral type
    error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_FIRST_FILE, (uint32_ptr) &search);
..\..\filemenu.c(150): error:  #20: identifier "uint_32_ptr" is undefined
      error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_NEXT_FILE, (uint_32_ptr) &search_data);
..\..\filemenu.c(150): error:  #31: expression must have integral type
      error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_NEXT_FILE, (uint_32_ptr) &search_data);
..\..\filemenu.c: 0 warnings, 4 errors
compiling adc.c...
..\..\Drivers\adc.c(104): warning:  #1-D: last line of file ends without a newline
  
..\..\Drivers\adc.c: 1 warning, 0 errors
compiling sdcard_task.c...
..\..\sdcard_task.c(155): error:  #20: identifier "char_ptr" is undefined
      gpio_handle = fopen("gpio:read", (char_ptr) &sdcard_pins);
..\..\sdcard_task.c(155): error:  #31: expression must have integral type
      gpio_handle = fopen("gpio:read", (char_ptr) &sdcard_pins);
..\..\sdcard_task.c(165): error:  #20: identifier "pointer" is undefined
      error_code = _io_sdcard_install("sdcard:", (pointer)&_bsp_sdcard0_init, com_handle);
..\..\sdcard_task.c(165): error:  #31: expression must have integral type
      error_code = _io_sdcard_install("sdcard:", (pointer)&_bsp_sdcard0_init, com_handle);
..\..\sdcard_task.c(177): error:  #31: expression must have integral type
          if (IO_OK != ioctl(gpio_handle, GPIO_IOCTL_READ, (char_ptr) &sdcard_pins))
..\..\sdcard_task.c: 0 warnings, 5 errors
compiling dac.c...
../../../../demo/ksplayer/player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\Drivers\dac.c: 0 warnings, 1 error
compiling main_task.c...
..\..\main_task.c(29): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { INIT_TASK,    init_task,       3000,   19,      "Init",  MQX_AUTO_START_TASK,  0,     0 }, 
..\..\main_task.c(30): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { SDCARD_TASK,  sdcard_task,     2200,   8/*11*/,      "SDcard",  0,       0,     0 },
..\..\main_task.c(31): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { PLAY_TASK,    play_task,       2000,   10,        "Play",  0,       0,     0 },
..\..\main_task.c(32): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { LCD_TASK,     lcd_task,        2500,   12, "LCD",   0,       0,     0 },
..\..\main_task.c(33): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { CTRL_TASK,    control_task,    2500,   9,  "Control",      0,       0,     0 },
..\..\main_task.c: 5 warnings, 0 errors
compiling gpio.c...
..\..\Drivers\gpio.c(65): warning:  #1-D: last line of file ends without a newline
   
..\..\Drivers\gpio.c: 1 warning, 0 errors
compiling init_task.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\init_task.c: 0 warnings, 1 error
compiling Driver_SLCD.c...
..\..\Drivers\Driver_SLCD.c(304): warning:  #144-D: a value of type "char *" cannot be used to initialize an entity of type "STRING"
    STRING StringCopy = (char *) SourceString;
..\..\Drivers\Driver_SLCD.c: 1 warning, 0 errors
compiling play_task.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\play_task.c(26): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_set_volume(pointer);
..\..\play_task.c(27): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_print_push(pointer);
..\..\play_task.c(28): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_print_release(pointer);
..\..\play_task.c(65): error:  #20: identifier "pointer" is undefined
  pointer event_audio_buf_empty;
..\..\play_task.c(102): error:  #20: identifier "pointer" is undefined
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_1, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PLAY));
..\..\play_task.c(102): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_1, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PLAY));
..\..\play_task.c(103): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_2, HMI_VALUE_PUSH, callback_set_volume, (pointer*)(STATE_VOL_UP));
..\..\play_task.c(104): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_3, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_NEXT));
..\..\play_task.c(106): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_5, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PREV));
..\..\play_task.c(107): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_6, HMI_VALUE_PUSH, callback_set_volume, (pointer*)(STATE_VOL_DOWN));
..\..\play_task.c(123): error:  #20: identifier "pointer" is undefined
  void callback_set_volume(pointer volume)
..\..\play_task.c(153): error:  #20: identifier "pointer" is undefined
  void callback_print_push(pointer event)
..\..\play_task.c(162): error:  #20: identifier "pointer" is undefined
        event = (pointer)STATE_STOP;
..\..\play_task.c(187): error:  #20: identifier "pointer" is undefined
  void callback_print_release(pointer text)
..\..\play_task.c(481): warning:  #223-D: function "toupper" declared implicitly
     *pShowName = toupper(*pSongName);
..\..\play_task.c(531): error:  #20: identifier "pointer" is undefined
    callback_print_push((pointer*)(STATE_NEXT));
..\..\play_task.c(531): error:  #29: expected an expression
    callback_print_push((pointer*)(STATE_NEXT));
..\..\play_task.c: 1 warning, 17 errors
compiling player_demo.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\player_demo.c(34): error:  #20: identifier "pointer" is undefined
     void FTM0_IRQ_Handler(pointer foo)
..\..\player_demo.c: 0 warnings, 2 errors
compiling ftm.c...
compiling pit.c...
".\ksplayer_kwikstikk40x256.axf" - 30 Error(s), 9 Warning(s).
Target not created.
Build Time Elapsed:  00:00:00
0 Kudos

945 Views
danielchen
NXP TechSupport
NXP TechSupport

Hi

Please be noted that MQX 4.1.0 was compiled and tested with Keil uVison 5.05

I would suggest you try this version.

Regards

Daniel

0 Kudos

945 Views
kwiksay2
Contributor I
I have looked over the errors and made some changes eg. datatypes changed  uint_32t to uint32t etc and got errors down to  33...….the log is shown below,  any ideas as to what may be causing these is it due to different versions of files etc ……….
µVision Build Log
Tool Versions:
IDE-Version: µVision V5.29.0.0
Copyright (C) 2019 ARM Ltd and ARM Germany GmbH. All rights reserved.
License Information: L abc, LT, LIC=----
 
Tool Versions:
Toolchain:       MDK-Lite  Version: 5.29.0.0
Toolchain Path:  D:\MyProgramFiles\KEILuVision\KEILv5\ARM\ARMCC\Bin
C Compiler:      Armcc.exe V5.06 update 6 (build 750)
Assembler:       Armasm.exe V5.06 update 6 (build 750)
Linker/Locator:  ArmLink.exe V5.06 update 6 (build 750)
Library Manager: ArmAr.exe V5.06 update 6 (build 750)
Hex Converter:   FromElf.exe V5.06 update 6 (build 750)
CPU DLL:         SARMCM3.DLL V5.29.0.0
Dialog DLL:      DCM.DLL V1.17.3.0
Target DLL:      Segger\JL2CM3.dll V2.99.36.0
Dialog DLL:      TCM.DLL V1.36.5.0
 
Project:
D:\Freescale\demo\ksplayer\uv4\ksplayer_kwikstikk40x256\ksplayer_kwikstikk40x256.uvproj
Project File Date:  04/30/2020
Output:
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\MyProgramFiles\KEILuVision\KEILv5\ARM\ARMCC\Bin'
Rebuild target 'ksplayer Int Flash Debug'
compiling Fonts_LCD.c...
compiling sdcard_task.c...
..\..\sdcard_task.c(78): error:  #20: identifier "boolean" is undefined
      boolean inserted = TRUE, readonly = FALSE, last = FALSE;
..\..\sdcard_task.c(155): error:  #20: identifier "char_ptr" is undefined
      gpio_handle = fopen("gpio:read", (char_ptr) &sdcard_pins);
..\..\sdcard_task.c(155): error:  #31: expression must have integral type
      gpio_handle = fopen("gpio:read", (char_ptr) &sdcard_pins);
..\..\sdcard_task.c(165): error:  #20: identifier "pointer" is undefined
      error_code = _io_sdcard_install("sdcard:", (pointer)&_bsp_sdcard0_init, com_handle);
..\..\sdcard_task.c(165): error:  #31: expression must have integral type
      error_code = _io_sdcard_install("sdcard:", (pointer)&_bsp_sdcard0_init, com_handle);
..\..\sdcard_task.c(177): error:  #31: expression must have integral type
          if (IO_OK != ioctl(gpio_handle, GPIO_IOCTL_READ, (char_ptr) &sdcard_pins))
..\..\sdcard_task.c(237): error:  #20: identifier "uint_32" is undefined
                      printf("Error opening partition manager: %s\n", MFS_Error_text((uint_32)error_code));
..\..\sdcard_task.c(237): error:  #18: expected a ")"
                      printf("Error opening partition manager: %s\n", MFS_Error_text((uint_32)error_code));
..\..\sdcard_task.c: 0 warnings, 8 errors
compiling adc.c...
..\..\Drivers\adc.c(102): warning:  #1-D: last line of file ends without a newline
  
..\..\Drivers\adc.c: 1 warning, 0 errors
compiling filemenu.c...
..\..\filemenu.c(119): error:  #20: identifier "uint32_ptr" is undefined
    error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_FIRST_FILE, (uint32_ptr) &search);
..\..\filemenu.c(119): error:  #31: expression must have integral type
    error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_FIRST_FILE, (uint32_ptr) &search);
..\..\filemenu.c(150): error:  #20: identifier "uint_32_ptr" is undefined
      error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_NEXT_FILE, (uint_32_ptr) &search_data);
..\..\filemenu.c(150): error:  #31: expression must have integral type
      error_code = ioctl(filesystem_handle, IO_IOCTL_FIND_NEXT_FILE, (uint_32_ptr) &search_data);
..\..\filemenu.c: 0 warnings, 4 errors
compiling gpio.c...
..\..\Drivers\gpio.c(65): warning:  #1-D: last line of file ends without a newline
   
..\..\Drivers\gpio.c: 1 warning, 0 errors
compiling main_task.c...
..\..\main_task.c(29): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { INIT_TASK,    init_task,       3000,   19,      "Init",  MQX_AUTO_START_TASK,  0,     0 }, 
..\..\main_task.c(30): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { SDCARD_TASK,  sdcard_task,     2200,   8/*11*/,      "SDcard",  0,       0,     0 },
..\..\main_task.c(31): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { PLAY_TASK,    play_task,       2000,   10,        "Play",  0,       0,     0 },
..\..\main_task.c(32): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { LCD_TASK,     lcd_task,        2500,   12, "LCD",   0,       0,     0 },
..\..\main_task.c(33): warning:  #144-D: a value of type "void (*)(uint32)" cannot be used to initialize an entity of type "TASK_FPTR"
      { CTRL_TASK,    control_task,    2500,   9,  "Control",      0,       0,     0 },
..\..\main_task.c: 5 warnings, 0 errors
compiling Driver_SLCD.c...
..\..\Drivers\Driver_SLCD.c(304): warning:  #144-D: a value of type "char *" cannot be used to initialize an entity of type "STRING"
    STRING StringCopy = (char *)SourceString;
..\..\Drivers\Driver_SLCD.c(341): warning:  #223-D: function "_time_delay" declared implicitly
      _time_delay((STRING)SCROOL_DELAY);
..\..\Drivers\Driver_SLCD.c(350): warning:  #940-D: missing return statement at end of non-void function "_SLCDModule_PrintScrolling"
  }
..\..\Drivers\Driver_SLCD.c(300): warning:  #177-D: variable "MarqueeEnd"  was declared but never referenced
    BOOL MarqueeEnd = FALSE;
..\..\Drivers\Driver_SLCD.c(305): warning:  #177-D: variable "ReversedString"  was declared but never referenced
    STRING ReversedString;
..\..\Drivers\Driver_SLCD.c(1042): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy1 |= (U32)(1 << (PHASE_H + 24));
..\..\Drivers\Driver_SLCD.c(1094): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy1 |= (U32)(1 << (PHASE_H + 24));
..\..\Drivers\Driver_SLCD.c(1167): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy1 &= ~(1 << (PHASE_H + 24));
..\..\Drivers\Driver_SLCD.c(1219): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy1 &= ~(1 << (PHASE_H + 24));
..\..\Drivers\Driver_SLCD.c(1489): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy2 |= (U32)(1 << PHASE_H + 24); //Battery Lower Block
..\..\Drivers\Driver_SLCD.c(1496): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy2 |= (U32)(1 << PHASE_H + 24); //Battery Lower Block
..\..\Drivers\Driver_SLCD.c(1503): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy2 |= (U32)(1 << PHASE_H + 24); //Battery Lower Block
..\..\Drivers\Driver_SLCD.c(1509): warning:  #61-D: integer operation result is out of range
      WFRegisterCopy2 &= ~(U32)(1 << PHASE_H + 24); //Battery Lower Block
..\..\Drivers\Driver_SLCD.c(1536): warning:  #61-D: integer operation result is out of range
    WFRegisterCopy2 &= ~(1 << PHASE_H + 24); //Battery Lower Block
..\..\Drivers\Driver_SLCD.c: 14 warnings, 0 errors
compiling ftm.c...
compiling dac.c...
../../../../demo/ksplayer/player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\Drivers\dac.c: 0 warnings, 1 error
compiling play_task.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\play_task.c(26): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_set_volume(pointer);
..\..\play_task.c(27): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_print_push(pointer);
..\..\play_task.c(28): error:  #92: identifier-list parameters may only be used in a function definition
  void callback_print_release(pointer);
..\..\play_task.c(65): error:  #20: identifier "pointer" is undefined
  pointer event_audio_buf_empty;
..\..\play_task.c(102): error:  #20: identifier "pointer" is undefined
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_1, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PLAY));
..\..\play_task.c(102): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_1, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PLAY));
..\..\play_task.c(103): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_2, HMI_VALUE_PUSH, callback_set_volume, (pointer*)(STATE_VOL_UP));
..\..\play_task.c(104): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_3, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_NEXT));
..\..\play_task.c(106): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_5, HMI_VALUE_PUSH, callback_print_push, (pointer*)(STATE_PREV));
..\..\play_task.c(107): error:  #29: expected an expression
   btnled_add_clb(bsp_btnled_driver_handle, HMI_BUTTON_6, HMI_VALUE_PUSH, callback_set_volume, (pointer*)(STATE_VOL_DOWN));
..\..\play_task.c(123): error:  #20: identifier "pointer" is undefined
  void callback_set_volume(pointer volume)
..\..\play_task.c(153): error:  #20: identifier "pointer" is undefined
  void callback_print_push(pointer event)
..\..\play_task.c(162): error:  #20: identifier "pointer" is undefined
        event = (pointer)STATE_STOP;
..\..\play_task.c(187): error:  #20: identifier "pointer" is undefined
  void callback_print_release(pointer text)
..\..\play_task.c(481): warning:  #223-D: function "toupper" declared implicitly
     *pShowName = toupper(*pSongName);
..\..\play_task.c(531): error:  #20: identifier "pointer" is undefined
    callback_print_push((pointer*)(STATE_NEXT));
..\..\play_task.c(531): error:  #29: expected an expression
    callback_print_push((pointer*)(STATE_NEXT));
..\..\play_task.c: 1 warning, 17 errors
compiling init_task.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\init_task.c: 0 warnings, 1 error
compiling player_demo.c...
..\..\player_demo.h(30): error:  #20: identifier "pointer" is undefined
  void FTM2_IRQ_Handler(pointer foo);
..\..\player_demo.c(34): error:  #20: identifier "pointer" is undefined
     void FTM0_IRQ_Handler(pointer foo)
..\..\player_demo.c: 0 warnings, 2 errors
compiling pit.c...
".\ksplayer_kwikstikk40x256.axf" - 33 Error(s), 22 Warning(s).
Target not created.
Build Time Elapsed:  00:00:00
0 Kudos