I am interested in Freemaster in FRDM-K20D50M-DEMO project. After enabling MACRO in source, IAR shows the following build errors by linker.
Error[Li005]: no definition for "FMSTR_Poll" [referenced from E:\OpenSDA\kinetis_50MHz_sc\k20d50m_sc_baremetal\build\iar\frdm-k20d50m-demo\FLASH_128KB_PFLASH\Obj\frdm-k20d50m-demo.o] Error[Li005]: no definition for "FMSTR_InitScope" [referenced from E:\OpenSDA\kinetis_50MHz_sc\k20d50m_sc_baremetal\build\iar\frdm-k20d50m-demo\FLASH_128KB_PFLASH\Obj\freemaster_protocol.o] Error[Li005]: no definition for "FMSTR_InitRec" [referenced from E:\OpenSDA\kinetis_50MHz_sc\k20d50m_sc_baremetal\build\iar\frdm-k20d50m-demo\FLASH_128KB_PFLASH\Obj\freemaster_protocol.o] Error[Li005]: no definition for "FMSTR_InitAppCmds" [referenced from E:\OpenSDA\kinetis_50MHz_sc\k20d50m_sc_baremetal\build\iar\frdm-k20d50m-demo\FLASH_128KB_PFLASH\Obj\freemaster_protocol.o] Error[Li005]: no definition for "FMSTR_InitSerial" [referenced from E:\OpenSDA\kinetis_50MHz_sc\k20d50m_sc_baremetal\build\iar\frdm-k20d50m-demo\FLASH_128KB_PFLASH\Obj\freemaster_protocol.o]
Actually these functions are defined in freemaster.h and freemaster_private.h.
I checked the include path:
... $PROJ_DIR$\..\..\..\src\projects\frdm-k20d50m-demo\fft_test $PROJ_DIR$\..\..\..\src\projects\frdm-k20d50m-demo\freemaster $PROJ_DIR$\..\..\..\src\projects\frdm-k20d50m-demo\freemaster\common $PROJ_DIR$\..\..\..\src\projects\frdm-k20d50m-demo\freemaster\Kxx $PROJ_DIR$\..\..\..\src\projects\frdm-k20d50m-demo\I2C ...
I can find two identical freemaster.h under freemaster\common and freemaster\Kxx, and freemaster\common\freemaster_private.h, which are listed in include path.
Why does IAR report that? Or it can not be built with 32KB EV version?
解決済! 解決策の投稿を見る。
The frdm-k20d50m-demo has not included the source files listed as following:
common\freemaster_appcmd.c (FMSTR_InitAppCmds)
common\freemaster_rec.c (FMSTR_InitRec)
common\freemaster_scope.c (FMSTR_InitScope)
common\freemaster_serial.c (FMSTR_Poll, FMSTR_InitSerial)
After including these source files, it can be built successfully. So the project actually is not a tested complete FreeMaster application.
Also I found that the existing Freemaster doesn't support POLL over USB-CDC. Only SCI is working. And I am studying the code to find out which serial port is considered as SCI console.
The frdm-k20d50m-demo has not included the source files listed as following:
common\freemaster_appcmd.c (FMSTR_InitAppCmds)
common\freemaster_rec.c (FMSTR_InitRec)
common\freemaster_scope.c (FMSTR_InitScope)
common\freemaster_serial.c (FMSTR_Poll, FMSTR_InitSerial)
After including these source files, it can be built successfully. So the project actually is not a tested complete FreeMaster application.
Also I found that the existing Freemaster doesn't support POLL over USB-CDC. Only SCI is working. And I am studying the code to find out which serial port is considered as SCI console.