Missing function SIM_PDD_SetClockSourceUART0 in KDS 1.0.1

cancel
Showing results for 
Search instead for 
Did you mean: 

Missing function SIM_PDD_SetClockSourceUART0 in KDS 1.0.1

Jump to solution
1,302 Views
MarceloBarrosde
Contributor II

Hello

 

I am using Kinetis Design Studio [beta] version 1.0.1 with frdm board (KL46Z).

 

I am trying to add an async serial port to the project (uart 0) but I am always getting an error related to the following undefined function:

 

SIM_PDD_SetClockSourceUART0(SIM_BASE_PTR, SIM_PDD_PLL_FLL_CLOCK);

 

Am I missing any other inclusion ?  The component is AsynchroSerial (CPU Internal Peripherals->Communication).

 

My clock was set to external clock (8MHz), with MCG mode as PEE,

PLL is enabled and set to 48MHz, FLL is disabled.

Core clock is 48MHz and bus clock is 24MHz.

 

Thanks a lot

 

Marcelo Barros

Labels (1)
Tags (2)
1 Solution
200 Views
BlackNight
NXP Employee
NXP Employee

Here is the workaround for this issue:

  1. Place the attached Serial_LDD.drv as
    C:\Freescale\KDS_1.0.1\eclipse\ProcessorExpert\Drivers\Kinetis\Serial_LDD.drv
    into your KDS installation (you might need to create the Kinetis subfolder if not present)
  2. Place the attached SIM_PDD.h as
    C:\Freescale\KDS_1.0.1\eclipse\ProcessorExpert\lib\Kinetis\pdd\inc\SIM_PDD.h
    into your KDS installation (you might first rename/backup your existing SIM_PDD.h

For the projects affected, regenerate code, and things should work now. To make sure that the code gets re-generated, you can delete the Generated_Code folder from your project.

The above steps solved the issue on my end.

Erich

View solution in original post

7 Replies
200 Views
randylee
Contributor IV

question about this:  Do you remember how you created your project regarding the static code set?

I've got the same problem here.  I ended up creating the project rather than importing a CW10.5 project because of the issues I was having with it.  It was asking something about static code in it and weather it should copy or link files.  I'm pretty sure that I aid "link" and the icons have a link indicator in them (icons in the "Static" dropdown of code) but the file names indicate a local copy although they are clearly pointing somewhere else (nothing in the local directories) [Yet another oddity].

It looks to me like there is some sort of mismatch between the static PDD libraries and what PE is expecting for KDS 1.0.1  -- this code doesn't quite align.  Is it possible that KDS is using an older version of PE on my machine (I must have a couple due to CW 10.x being there)?

0 Kudos
201 Views
BlackNight
NXP Employee
NXP Employee

Here is the workaround for this issue:

  1. Place the attached Serial_LDD.drv as
    C:\Freescale\KDS_1.0.1\eclipse\ProcessorExpert\Drivers\Kinetis\Serial_LDD.drv
    into your KDS installation (you might need to create the Kinetis subfolder if not present)
  2. Place the attached SIM_PDD.h as
    C:\Freescale\KDS_1.0.1\eclipse\ProcessorExpert\lib\Kinetis\pdd\inc\SIM_PDD.h
    into your KDS installation (you might first rename/backup your existing SIM_PDD.h

For the projects affected, regenerate code, and things should work now. To make sure that the code gets re-generated, you can delete the Generated_Code folder from your project.

The above steps solved the issue on my end.

Erich

View solution in original post

200 Views
ronaldoduarte
Contributor I

Works like a charm Erich!

Thanks.

Ronaldo

0 Kudos
200 Views
ronaldoduarte
Contributor I

Marcelo,

I have the some problem while trying to use the AsynchroSerial component with my FRDM-KL25Z.

I decided to download the standalone Processor Expert v10.3, installed it and added the AsynchroSerial component to my project. While inspecting the autogenerated source files, I noticed that a different function is being called to set the UART0 clock source:

UART0_PDD_SetClockSource(UART0_BASE_PTR, UART0_PDD_PLL_FLL_CLOCK);

instead of

SIM_PDD_SetClockSourceUART0(SIM_BASE_PTR, SIM_PDD_PLL_FLL_CLOCK);

I replaced the function call in KDS, and the project now compiles, still have to check if the UART is working properly.

This is only a workaround, because the incorrect function will be there again once you autogenerate sources, but it's better than nothing.

Let's hope Erich finds a better one.

Ronaldo

0 Kudos
200 Views
MarceloBarrosde
Contributor II

Ronaldo, it is working. I tested using uart0 and it is possible to see the frames arriving at the virtual COM generated by FRDM board.

Thanks.

Marcelo

200 Views
BlackNight
NXP Employee
NXP Employee

Hi Marcelo,

I confirm the problem :-(.

I'm checking if I can find a solution or workaround for you.

Erich

200 Views
MarceloBarrosde
Contributor II

Ok, Erich. Thanks !

Marcelo

0 Kudos