collapse

* Posts Recentes

Autor Tópico: STM32 bluepill pinout  (Lida 558 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline vasco

  • Mini Robot
  • *
  • Mensagens: 331
STM32 bluepill pinout
« em: 20 de Março de 2018, 23:11 »
Boa noite,

Deixem-me fazer uma pergunta estúpida, porque é que os bonecos com o pinout do Blue Pill têm o SPI-1 nos pinos PA15, PB3, PB4 e PB5 (funca) e também nos PA7, PA6, PA5 e PA4 (não funca)-  :'(

Estava a passar-me com isto, tinha conseguido ligar o Maple Mini sem problemas a uma matrix de leds, só que pelos vistos o Maple Mini não tem instalado o cristal para o RTC, portanto fui ligar um Blue Pill que tem o cristal, e não estava a conseguir por esta !"#$"#!"#$!"## a trabalhar <gritar>porque estava a ligar nos pinos que não funcam !!!!</gritar>
Só para saber, há alguma razão para isto vir assim nos bonecos ? Há alguma configuração que se faça para por o SPI-1 no segundo conjunto de pinos ? O SPI-2 não tem esta duplicação de pinos...
Stupid men are often capable of things the clever wouldn't dare to contemplate.

Offline ricardo-reis

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 1.338
Re: STM32 bluepill pinout
« Responder #1 em: 21 de Março de 2018, 00:23 »

Offline vasco

  • Mini Robot
  • *
  • Mensagens: 331
Re: STM32 bluepill pinout
« Responder #2 em: 21 de Março de 2018, 09:14 »
Nope, eu não estava a falar do SPI-1 e SPI-2, mas sim do facto de nos pinouts aparecerem 2 sets de pinos labeled como sendo do SPI-1.

É curioso que ele tenha conseguido por a trabalhar o SPI-1 em

Using the first SPI port (SPI)
SS   <-->PA4
SCK   <-->PA5
MISO   <-->PA6
MOSI   <-->PA7

Pelo menos comigo isso não funcionou, mas como eu não estou a trabalhar diretamente com o SPI estou a usar as libs md_parola e md_max72xx é possivel que os pinos do outro set estejam de algum modo hardcoded algures.
Stupid men are often capable of things the clever wouldn't dare to contemplate.

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.436
  • NERD!
Re: STM32 bluepill pinout
« Responder #3 em: 21 de Março de 2018, 11:04 »
Sem mostrares o código é difícil de saber se estás a fazer tudo bem.
Alteraste o SPI1_REMAP para mapear o SPI1 para os pinos que pretendes?


Offline vasco

  • Mini Robot
  • *
  • Mensagens: 331
Re: STM32 bluepill pinout
« Responder #4 em: 21 de Março de 2018, 14:44 »
Sem mostrares o código é difícil de saber se estás a fazer tudo bem.
Alteraste o SPI1_REMAP para mapear o SPI1 para os pinos que pretendes?

Não há código para mostrar, apenas a linha de inicialização do md_parola e o #define do CS_PIN, e, evidentemente os pinos onde liguei os fios. Se ligar nos PA7, PA6, PA5 e PA4 não funciona, se ligar nos PA15, PB3, PB4 e PB5 funciona, portanto é evidente que o SPI1_REMAP está ativo.

Se alterei o SPI1_REMAP foi por acidente, nem sei o que é... :-) Vou dar uma vista de olhos no código das libs, pode ser que seja um #define.

Essa tabela vem da datasheet do STM32F103C8 ?
Stupid men are often capable of things the clever wouldn't dare to contemplate.

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.436
  • NERD!
Re: STM32 bluepill pinout
« Responder #5 em: 21 de Março de 2018, 15:00 »
No RM0008 - Reference manual(link), página 180, secção 9.3.1

Se não o definiste, está aí o teu problema. O SPI funciona num grupo de pinos ou noutro, e em qual deles depende do estado desse bit.


Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.586
  • Helpdesk do sitio
Re: STM32 bluepill pinout
« Responder #6 em: 21 de Março de 2018, 18:35 »
Inb4 é SPI bit-banged, usar bibliotecas tão ás cegas que nem sabes que pinos elas usam :/
Avr fanboy

Offline vasco

  • Mini Robot
  • *
  • Mensagens: 331
Re: STM32 bluepill pinout
« Responder #7 em: 22 de Março de 2018, 12:17 »
Os docs da lib (md_max72xx) diz que suporta spi (hardware) onde só tens que passar o pino CS.
Dado que não tenho limitação de pinos foi isso que usei, só fui apanhado na curva por causa da história do alternate spi que deve dar jeito em certas condições mas não faço ideia porque é que estará a ser selecionado.
Curiosamente não me aconteceu com o Maple mini, mas deve ter sido uma questão de sorte, porque o boneco que eu estava a usar só identifica um conjunto de pinos para o SPI-1, entretanto já encontrei outro onde estão identificados os dois sets.

Em minha defesa tenho a dizer que normalmente abro as libs, mas é mais à procura de #defines e comentários interessantes, e não para ver como funcionam. Tenho o bichinho de saber como as coisas funcionam, mas nem sempre a capacidade de o fazer.
Stupid men are often capable of things the clever wouldn't dare to contemplate.