MBDT 1.3.0 support for S32K312 in 100 pin MaxQFP?

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

MBDT 1.3.0 support for S32K312 in 100 pin MaxQFP?

Jump to solution
1,041 Views
hns80
Contributor V

The release notes list support for the S32K312 in the 172 pin MaxQFP and the S32K311 in 100 pin MaxQFP, but not the '312 in the 100 pin package.

Is there a quick way to add support for this package?

If not, do we use the S32K312 configuration and be careful not to use the extra pins or do we have to use the S32K311 configuration and only have access to half the memory?

 

0 Kudos
Reply
1 Solution
1,016 Views
georgevictor
NXP Employee
NXP Employee

 

Hi, @hns80 ,

Thank you for using MBDT for your projects.

The MBDT toolbox for S32K3 provides support for the S32K312 processor and a default configuration project for the Q172 package.
The only difference between the Q172 and the Q100 package is the configuration project. You can start your custom configuration project for the Q100 package from this default project.
My suggestion for your demand is to select the S32K312-Q172 Hardware Part in one of our provided examples, a simple one, like s32k3xx_dio (s32ct or ebt) that toggles an LED. 

Each time a Hardware Part is selected in a model, a default project created by us for that specific part is brought next to the model (depending on the configuration tool selected, it can be either a <model_name>.mex file for S32CT or a <model_name>_Tresos folder EB tresos). You can start with this default project for the Q172 package, switch it to the Q100 package, and fix the errors caused by this change. 

In an S32CT project you can change the processor package for a configuration like in the following picture:

georgevictor_0-1682668438468.png

georgevictor_1-1682668450789.png

In case you are using EB tresos, the processor package change is done from the Resource component as in the following picture:

georgevictor_2-1682668475141.png

You will probably have errors for the already configured pins(in the Pins component for S32CT or Port component for EB tresos) that are out of range for this package and need to be removed. This range will cause issues in the Dio component too. Ports (PTA, PTB, PTC, etc.) are structured in 2 sections, each of them containing 16 pins, and they are identified as: Low (pins from 0-15) and High (pins from 16-31). For more details you can hover the Dio Port Id element and check the details.

georgevictor_3-1682668533039.png

Some of the Dio pins already configured in our Q172 project may no longer be available for the Q100 package. Therefore, you should check the Reference Manual and the IOMUX table to see the available pins. As a quick note that may help you, if you would like to configure a DIO channel to PTA10 you should set the port ID to 0 corresponding to PTA_L (pins form 0-15). The channel ID setting should be configured to 10 because PTA10 can be found on the 10th position of the PTA_L port. To a have a more clear picture, you can consider this formula PinNumber = PortID * 16(pins per port) + Channel ID, in this case PinNumber equals with 10(mscr number from pin_muxing).

After you have solved all the issues encountered by this package change, you can try to build the application. Now you have  a custom configuration project set for the S32K312-Q100 package only for this specific model where you have made the necessary changes.
If you want to use this custom configuration project as a template for other applications as well, please check the functionality described in section 3.7 Support for custom default project in Release Notes. This functionality helps you to configure and save a custom configuration template that can be further associated to multiple applications. The link to Release Notes is found in the bottom of the example help.

Hope this helps. If you have any other questions, please don't hesitate to contact me.

Cheers,

Victor

 

View solution in original post

2 Replies
1,004 Views
hns80
Contributor V

Thank you for the comprehensive response!

0 Kudos
Reply
1,017 Views
georgevictor
NXP Employee
NXP Employee

 

Hi, @hns80 ,

Thank you for using MBDT for your projects.

The MBDT toolbox for S32K3 provides support for the S32K312 processor and a default configuration project for the Q172 package.
The only difference between the Q172 and the Q100 package is the configuration project. You can start your custom configuration project for the Q100 package from this default project.
My suggestion for your demand is to select the S32K312-Q172 Hardware Part in one of our provided examples, a simple one, like s32k3xx_dio (s32ct or ebt) that toggles an LED. 

Each time a Hardware Part is selected in a model, a default project created by us for that specific part is brought next to the model (depending on the configuration tool selected, it can be either a <model_name>.mex file for S32CT or a <model_name>_Tresos folder EB tresos). You can start with this default project for the Q172 package, switch it to the Q100 package, and fix the errors caused by this change. 

In an S32CT project you can change the processor package for a configuration like in the following picture:

georgevictor_0-1682668438468.png

georgevictor_1-1682668450789.png

In case you are using EB tresos, the processor package change is done from the Resource component as in the following picture:

georgevictor_2-1682668475141.png

You will probably have errors for the already configured pins(in the Pins component for S32CT or Port component for EB tresos) that are out of range for this package and need to be removed. This range will cause issues in the Dio component too. Ports (PTA, PTB, PTC, etc.) are structured in 2 sections, each of them containing 16 pins, and they are identified as: Low (pins from 0-15) and High (pins from 16-31). For more details you can hover the Dio Port Id element and check the details.

georgevictor_3-1682668533039.png

Some of the Dio pins already configured in our Q172 project may no longer be available for the Q100 package. Therefore, you should check the Reference Manual and the IOMUX table to see the available pins. As a quick note that may help you, if you would like to configure a DIO channel to PTA10 you should set the port ID to 0 corresponding to PTA_L (pins form 0-15). The channel ID setting should be configured to 10 because PTA10 can be found on the 10th position of the PTA_L port. To a have a more clear picture, you can consider this formula PinNumber = PortID * 16(pins per port) + Channel ID, in this case PinNumber equals with 10(mscr number from pin_muxing).

After you have solved all the issues encountered by this package change, you can try to build the application. Now you have  a custom configuration project set for the S32K312-Q100 package only for this specific model where you have made the necessary changes.
If you want to use this custom configuration project as a template for other applications as well, please check the functionality described in section 3.7 Support for custom default project in Release Notes. This functionality helps you to configure and save a custom configuration template that can be further associated to multiple applications. The link to Release Notes is found in the bottom of the example help.

Hope this helps. If you have any other questions, please don't hesitate to contact me.

Cheers,

Victor