Page 1 of 1

spi2 on stm32f103re question

Posted: Sat Oct 17, 2015 12:44 pm
by fastlink30
on stm32f103re, i need to use spi2 and i want ask if i must initialize the associated pins with spi2, or spi routines do all?

actually i do:

Code: Select all

   palSetPadMode(TOUCH_IRQ_PORT, TOUCH_IRQ_PIN, PAL_MODE_INPUT_PULLUP);//t-irq
   palSetPadMode(TOUCH_IRQ_PORT, TOUCH_SEL, PAL_MODE_OUTPUT_PUSHPULL);//sel
   palSetPadMode(TOUCH_IRQ_PORT, 13, PAL_MODE_OUTPUT_PUSHPULL);//clk
   palSetPadMode(TOUCH_IRQ_PORT, 14, PAL_MODE_INPUT_PULLUP);//miso
   palSetPadMode(TOUCH_IRQ_PORT, 15, PAL_MODE_OUTPUT_PUSHPULL);//mosi

......


i must use the PAL_MODE_STM32_ALTERNATE_PUSHPULL declaration?
normally the driver is initialized as bidirectional?

chibios 3.0.2

thanks

Re: spi2 on stm32f103re question

Posted: Sat Oct 17, 2015 1:27 pm
by Giovanni
Hi,

There is an example under /testhal

Code: Select all

  /*
   * SPI1 I/O pins setup.
   */
  palSetPadMode(GPIOA, 5, PAL_MODE_STM32_ALTERNATE_PUSHPULL);     /* SCK. */
  palSetPadMode(GPIOA, 6, PAL_MODE_STM32_ALTERNATE_PUSHPULL);     /* MISO.*/
  palSetPadMode(GPIOA, 7, PAL_MODE_STM32_ALTERNATE_PUSHPULL);     /* MOSI.*/
  palSetPadMode(GPIOA, GPIOA_SPI1NSS, PAL_MODE_OUTPUT_PUSHPULL);
  palSetPad(GPIOA, GPIOA_SPI1NSS);


For SPI 2 it is the same except pins.

Giovanni