• Welcome to LusoRobótica - Robótica em Português.
 

Remap de pinos SPI

Started by Marvin, 20 de August de 2011, 17:57

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Marvin

Boas,

Precisava de remapear os pinos SPI da arduino, ou fazer o spi em software para usar pinos diferentes dos de hardware. Alguem sabe como fazer isto?

Estou a usar a biblioteca Spi do arduno e já tentei mudar os pinos no Spi.h mas parece-me que não funcionou.

Precisava q o clk, mosi e miso passassem para o pino 4, 2, 3 respectivamente.

Obrigado
Dronetech BlogThe Scientist and the Geek

senso

O mais facil é procurar por SPI bit-bang, o ShiftOut é basicamente um SPI bit-banged só que só serve para enviar, mas com pouco mais código fica a receber e a enviar.
A biblioteca SPI usa o spi por hardware, logo não podes mudar os pinos.
Já agora, porque é que não mudas antes o que quer que te está a ocupar os pinos SPI?
Avr fanboy

Marvin

Obrigado Senso!

O problema é um shield que adquiri que tem um motor driver e da para ligar um nrf24l01, e os gajos desenharam mal aquilo e usam os pinos de SPI para conduzir o motor... major fuck up. Eu já os avisei, a resposta dos gajos foi para usar SPI por software.

Já agora o shield é este: http://iteadstudio.com/product/ln298-h-bridge-moto-driver-shield-motomama/

Dronetech BlogThe Scientist and the Geek

senso

Mas eles no site até têm lá uma foto com um Nrf ligado..
De certeza que não dá para usar o spi nativo?
Avr fanboy

Marvin

Do datasheet:

Arduino Socket defination
Pin Description
D0 XBee_Dout/UART_Rx
D1 XBee_Din/UART_Tx
D2 nRF24L01+_MISO
D3 nRF24L01+_MOSI
D4 nRF24L01+_SCK
D5 nRF24L01+_CS
D6 nRF24L01+_CE

Do mail do support:

Hi,

The nRF24L01+ module is operated by GPIO through SPI timing sequence. Not the hardware SPI interface.


De qq forma os pinos usados para controlar o L298H são os mm que o Mosi, Miso e SCK, para mim é falhanço no design.

Ando a tentar dar a volta a isto com bitbang... mas acho q vou ter de acabar por arranjar outra solução.

Dronetech BlogThe Scientist and the Geek

senso

Tens várias bibliotecas SPI bit banged, por isso não é nada que não se arranje.
Avr fanboy

Marvin

Quote from: senso on 20 de August de 2011, 23:22
Tens várias bibliotecas SPI bit banged, por isso não é nada que não se arranje.

Exacto. Estou a tentar agora modificar a classe SPI para receber os parametros.

E ao mm tempo estou a desenhar um shield com um design melhor...
Dronetech BlogThe Scientist and the Geek

PDI

E já agora não consegues alterar as pistas da shield cortando as existentes e chantando no lugar certo.
Alfredo Garcia

Marvin

Quote from: PDI on 27 de August de 2011, 19:12
E já agora não consegues alterar as pistas da shield cortando as existentes e chantando no lugar certo.

Queria evitar danificar a board. Entretanto consegui a comunicação utilizando bit banging por software, tal como Senso tinha mencionado.

Dronetech BlogThe Scientist and the Geek

PDI

Quote from: Marvin on 27 de August de 2011, 20:16
Quote from: PDI on 27 de August de 2011, 19:12
E já agora não consegues alterar as pistas da shield cortando as existentes e chantando no lugar certo.

Queria evitar danificar a board. Entretanto consegui a comunicação utilizando bit banging por software, tal como Senso tinha mencionado.

Acho que seria mais reparar do que estragar.
Alfredo Garcia

Marvin

Quote from: PDI on 28 de August de 2011, 01:28
Quote from: Marvin on 27 de August de 2011, 20:16
Quote from: PDI on 27 de August de 2011, 19:12
E já agora não consegues alterar as pistas da shield cortando as existentes e chantando no lugar certo.

Queria evitar danificar a board. Entretanto consegui a comunicação utilizando bit banging por software, tal como Senso tinha mencionado.

Acho que seria mais reparar do que estragar.

é uma board feita profissionalmente com pelo menos 2 camadas silkscreen ,soldermask e uma data de componentes smt e smd, com as minhas "mãozinhas" era o mm q deitar fora o shield. :P
Dronetech BlogThe Scientist and the Geek

PDI

Pois então é melhor ficar assim.
Alfredo Garcia