I need to do SPI and I2C communications on the board. What hardware items I need to buy and where to put them on the board. Which would be a good slave (data to read from).
The first thing is to study the documentation for the board - including the schematics (aka "circuit diagrams"):
http://www.keil.com/mcbstm32f400/
http://www.keil.com/support/man/docs/mcbstm32f200/
www.keil.com/.../mcbstm32f200_to_schematics.htm
That should answer your questions about the board itself.
If you're not already familiar with the STM32, you will also need the chip documentation - from ST:
www.st.com/.../stm32f407ig.html
If you're not already familiar with the basics of SPI in gneneral, see:
en.wikipedia.org/.../Serial_Peripheral_Interface
"Which would be a good slave (data to read from)"
This makes it sound like a school/training exercise - yes? In that case, the best person to ask is your teacher/supervisor/tutor - they will know what is most appropriate to the exercise.
In the board documentation, look at what slaves already exist on the board.
See the provided examples:
www.keil.com/.../mcbstm32f200_examples.htm
For simple experiments, Microchip have an SPI demo board with a selection of 7 common slaves on it:
www.microchip.com/.../pkserial-spi1
They also have one for I2C, if you'll move on to that later:
www.microchip.com/.../pkserial-i2c1
Companies like Adafruit & Sparfun do lots of "breakout" boards - giving easy access to various chips ...
That should, of course, be "Sparkfun"
From NXP, the originator & owner of I2C, UM10204 - I2C-bus specification and user manual - is the definitive document: www.nxp.com/.../UM10204.pdf See also: www.nxp.com/.../AN10216.pdf
And: http://www.nxp.com/i2c
Other, 3rd-party, references abound - eg, en.wikipedia.org/.../I²C - but the NXP specification is the foundation.
e2e.ti.com/.../588933
How did you get on ... ?
There isn't a no-effort solution, having people direct your every step is not a cognitive learning experience. You should thoroughly review documentation and examples until you understand things, and perhaps master simpler tasks before tackling more complex ones.
Review the schematics, as Andrew indicates, this should provide details on connectivity and attachment points for assorted peripherals, and existing devices provided on those buses.
The board is a bit dated, and HAL libraries from ST won't have specific examples for it, you'll need to look at examples for DISCO and EVAL boards, and port them to your chosen platform.
Thanks much for providing the pointers. I have MCBSTM32F400 board, I am buying the below board as you mentioned: www.microchip.com/.../pkserial-spi1
Q1: How can I make the above board to work with the STM board?
Q2: The ARM Cortex M4 has 3 SPI peripherals. Assume I want to work with SPI1. Which port/pins the SPI1 has been brought out on the STM board?
Once again thanks much.
You're welcome.
But have you actually done what I said in that post?
* Have you studied the documentation for both boards - including the schematics ?
* Have you studied the documentation for the STM32 ?
* Have you familiarised yourself with how SPI works in general ?
"Q1: How can I make the above board to work with the STM board?"
The same way you'd go about interfacing any two things:
www.8052mcu.com/.../160143
Which, again, requires that you have done the things mentioned in the first reply.
"Q2: The ARM Cortex M4 has 3 SPI peripherals"
The ARM Cortex-M4 is just the CPU core - it does not have any peripherals at all.
The peripherals are what the chip manufacturer - ST, in this case - adds to make their particular product - the STM32, in this case.
"Which port/pins the SPI1 has been brought out on the STM board?"
That will be shown in documentation for the board - including the schematics (aka "circuit diagrams").
That's why I said:
"The first thing is to study the documentation for the board - including the schematics (aka 'circuit diagrams')"
This is clearly illustrated in the STM32F407IG datasheet: www.st.com/.../stm32f407ig.pdf
available from: www.st.com/.../stm32f407ig.html
The current version is Rev 8, dated 09-Sep-2016.
On page 19 of that document, in Figure 5, the ARM Cortex M4 is at top-left of the diagram - and you can see that all of the peripherals fall outside of that block.