cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F4xx - does going up a package pin count impact pin AF mapping?

PHolt.1
Senior III

I think it doesn't have an impact and you just get extra pins (e.g. extra SPI controllers becoming accessible) if going say 100 to 176. But it's not clear...

IOW, will existing code run exactly as before?

Isn't the silicon identical and they merely bond out the extra pins on the bigger packages?

 

 

1 ACCEPTED SOLUTION

Accepted Solutions

@PHolt.1 wrote:

I wonder if running VGT6 code on say an IGT6 might create floating signals internally.

 

 As said previously, they absolutely have the same die inside.

VGT6 -> 100 pin package

IGT6 -> 177 pin package

From the datasheet:

mALLEm_0-1765192476628.png

G means 1024KB of flash memory.

mALLEm_1-1765192506503.png

So migrating from VGT6 to IGT6 with a code made for VGT6 is doable.

Migrating 417 to 437 is another question.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

View solution in original post

10 REPLIES 10
TDK
Super User

If the part number is the same except for the package, yes the AF mapping will be identical. This is covered in the datasheet. One AF mapping table for the entire family.

If you feel a post has answered your question, please click "Accept as Solution".
Issamos
Lead II

Hello @PHolt.1 

I think if both MCUs have the same sub device name (F401, F407,..) (same datasheet) the AF should not be changed and the same code (made for the smallest package) should run on both MCUs. For different subfamilies, I think more verification is needed.

Best Regards.

II

mƎALLEm
ST Employee

Hello;

" does going up a package pin count impact pin AF mapping?" -> Absolutely not.

All packages of the same part number have the same die inside. Common GPIOs between the different packages have common AFs. Extra GPIOs have more AFs, more SPI AFs, TIMs AFs, etc ..

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Depends on specific model, but many share the same die, you can check..

The muxing is fairly consistent but will be in the data sheet. More pins, more escape options.

F407, F401 and F412 are all different die.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
PHolt.1
Senior III

OK I was a bit ambiguous in using "4xx" which implies different CPU chips.

I was really asking if going say 32F417 QFP100 to QFP144 to QFP176

32F417VGT6 to 32F417ZGT6 to 32F417IGT6 (100 to 144 to 176)

the VGT6 code will just run.

Obviously if by going to a bigger package you expose new GPIO etc then these need to be taken care of on the PCB. AIUI all unconfigured GPIO comes up as inputs, but if you expose other-functional pins then this is not so.

I wonder if running VGT6 code on say an IGT6 might create floating signals internally.

Then you get the interesting topic of the 32F437 which is an almost perfect superset of the 417 and (apart from the Vbat measurement ADC channel) is 100% software compatible. I use it for the extra 64k RAM (I get the device ID and on the 437 move the general stack 64k higher up, and fix up the Vbat ADC channel, but run the 417 code otherwise, with the only place where the 437 is specified being the ST Utility production programmer) but it has six SPIs instead of three and the QFP144 package should expose at least one of these.


@PHolt.1 wrote:

I wonder if running VGT6 code on say an IGT6 might create floating signals internally.

 

 As said previously, they absolutely have the same die inside.

VGT6 -> 100 pin package

IGT6 -> 177 pin package

From the datasheet:

mALLEm_0-1765192476628.png

G means 1024KB of flash memory.

mALLEm_1-1765192506503.png

So migrating from VGT6 to IGT6 with a code made for VGT6 is doable.

Migrating 417 to 437 is another question.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
PHolt.1
Senior III

What is interesting is that the 437 is an extremely close superset of the 417.


@PHolt.1 wrote:

What is interesting is that the 437 is an extremely close superset of the 437 .


I suggest to close that thread and start another one for 437 vs 417 as the original question has been answered.

Thank you.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
PHolt.1
Senior III

Happy to start a new thread but not sure how to frame that question to get a good answer.