LusoRobótica - Robótica em Português

Sistemas específicos => Picaxe => Tópico iniciado por: andre_f_carvalho em 13 de Junho de 2010, 16:47

Título: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 13 de Junho de 2010, 16:47
boas, alguem ja experimentou esta interface com o picaxe?

andei a procura e cheguei a montar, mas n me esta a funcionar, eu tirei ideias deste site http://www.picaxeforum.co.uk/showthread.php?t=11865 (http://www.picaxeforum.co.uk/showthread.php?t=11865)

abaixo o codigo que ando a tentar por  a funcionar xD
Código: [Seleccione]
i2cslave $A4, i2cfast, i2cbyte

 

i2cwrite ($40,$00)

pause 10

 

lp:

writei2c (0)

pause 10



readi2c (b1,b2,b3,b4,b5,b0)



b13 = b0

b0 = b13 Xor 0x17 + 0x17



'X joy

b13 = b1

b1 = b13 Xor 0x17 + 0x17

poke $50,  b1



'Y joy

b13 = b2

b2 = b13 Xor 0x17 + 0x17

poke $51,  b2



'X acc


b13 = b3

b3 = b13 Xor 0x17 + 0x17

poke $52, b3



'Y acc


b13 = b4

b4 = b13 Xor 0x17 + 0x17

poke $54, b4



'Z acc


b13 = b5

b5 = b13 Xor 0x17 + 0x17

poke $56, b5



'buttons

poke $58, bit0

poke $59, bit1



'X joy

peek $50, b0

'Y joy

peek $51, b1

'X acc

peek $52, b2

'Y acc

peek $54, b3

'Z acc

peek $56, b4

'buttons

peek $58, b5

peek $59, b6



if b2 < 100 then

high 0

else

low 0

endif



if b2 > 140 then

high 2

else

low 2

endif



if b3 < 100 then

high 3

else

low 3

endif



if b3 > 140 then

high 5

else

low 5

endif



pause 10

'debug

goto lp


caso alguem tenha uma ideia de por isto a funcionar agradecia...


cump
Título: Re: picaxe + wii nunchuk
Enviado por: amando96 em 13 de Junho de 2010, 17:05
Como ligaste o nunchuck ao picaxe?
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 13 de Junho de 2010, 19:43
usei o picaxe 18x com ligação serie, so que n me esta a funcionar :S
Título: Re: picaxe + wii nunchuk
Enviado por: amando96 em 13 de Junho de 2010, 19:53
Sim, mas seguiste qual pinout do nunchuck?

eu tive uns dias a tentar por a funcionar, e dps desisti, depois de umas semanas voltei a tentar e vi que estava mal ligado...
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 13 de Junho de 2010, 20:08
usei uns pinouts que encontrei na net, img em anexo

o tua pinagem é assim?

e ja agora como fizeste?
Título: Re: picaxe + wii nunchuk
Enviado por: amando96 em 13 de Junho de 2010, 20:15
Sim, é igual...

O teu é "genuino" da nintendo, ou um barato do ebay? Eles precisam de ser iniciados de maneira diferente, está aqui este tópico:
http://lusorobotica.com/index.php?topic=1964.msg22636#msg22636 (http://lusorobotica.com/index.php?topic=1964.msg22636#msg22636)
Mas para arduino, nem sei onde começar para por em picaxe...
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 13 de Junho de 2010, 21:02
comprei um nunchuk sem fios  (n é da nintendo) e esta a dar-me problemas, experimente com um da nintendo com fio e n da na mesma,


sendo, que a imagem da pinagem daquele é do comando principal certo se for acho que tenho bem as ligações,

ja agora achas qu este esquema funciona?
Título: Re: picaxe + wii nunchuk
Enviado por: amando96 em 13 de Junho de 2010, 21:47
Penso que os diodos estão ali a mais, pelo menos não usei, nem vi nunguem usar.

Estás a dar-lhe 5v, ou 3.3v? se deres 5v não uses muito tempo, ele depois estraga-se.
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 13 de Junho de 2010, 21:55
o que é que se estraga? o picaxe ou o nunchuk?

eu no nunchuk estou a usar 3.3v com um regulador de tensão como esta no esquema,

ja agora como é que fizeste o teu esquema?
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 16 de Maio de 2011, 23:27
Boas,

depois de tanto tempo sem mexer nesta parte la venho com umas duvidas, tenho um codigo, onde uso o acelarometro e o joystic para controlar dois servos mas algures no codigo, está sempre a misturar-se os valores do acelarometro com o do joystic, nem tenho nenhum video, mas amanha em principio estara aqui um

aqui fica o codigo:
Código: [Seleccione]
init:

setfreq m16                        ;set frequencey to 16Mhz. this works on 18M2
i2cslave $A4, i2cslow, i2cbyte        'picaxesters code used i2cfast and 8Mhz i have changed to i2cslow and 16Mhz and works a treat

i2cwrite ($40,$00)
pause 10

servo b.2,75 ; initialise servo
servo b.3,75 ; initialise servo

symbol Xpos = b7
symbol Ypos = b8
symbol Xjoy = b0
symbol Yjoy = b1
symbol xacc = b2
symbol yacc = b3
symbol Zbut = b5
symbol Cbut = b6
symbol DualRate = b9
symbol servox = B.3
symbol servoY = B.2


lp:
writei2c (0)
pause 10



readi2c (b1,b2,b3,b4,b5,b0)



b13 = b0
b0 = b13 Xor 0x17 + 0x17



'X joy

b13 = b1
b1 = b13 Xor 0x17 + 0x17
poke $50,  b1



'Y joy

b13 = b2
b2 = b13 Xor 0x17 + 0x17

poke $51,  b2



'X acc

b13 = b3
b3 = b13 Xor 0x17 + 0x17
poke $52, b3



'Y acc

b13 = b4
b4 = b13 Xor 0x17 + 0x17
poke $54, b4



'Z acc

b13 = b5
b5 = b13 Xor 0x17 + 0x17
poke $56, b5



'buttons

poke $58, bit0
poke $59, bit1



'X joy
peek $50, b0

'Y joy
peek $51, b1

'X acc
peek $52, b2

'Y acc
peek $54, b3

'Z acc
peek $56, b4

'buttons
peek $58, b5
peek $59, b6





let DualRate = 15                        ' set dual rate to normal
if Cbut = 0 then gosub dual                ' If C butten is pressed change to half rates
if Zbut = 0 then acc                     ' if Z button is pressed use accelerometer
goto joy                            ' else goto joy not needed but safe
   
joy:
let Xpos = Xjoy*10/DualRate+75            'Xpos equals Xjoy (0-255) x 10 (0-2550) / 15 (0-170) +75 (75-245)
let Ypos = Yjoy*10/DualRate+75            'As above, servo range needs to be converted from 0-255 to 75-255

debug
servopos servoX, xpos                    'servo position= servo selection, X position
pause 10
servopos servoY, ypos                   
goto lp


acc:
let Xpos = Xacc*10/DualRate+75
let Ypos = yacc*10/DualRate+75
debug
servopos servoX, xpos                   
pause 10
servopos servoY, ypos                   
goto lp


dual:
let DualRate = 30        ' this didnt work quite right. the idea was to double 15 (30) and therefor have half rates. it was late and my maths brain still isnt working.
return



Título: Re: picaxe + wii nunchuk
Enviado por: maurosmartins em 16 de Maio de 2011, 23:35
Olá pessoal,

para ligar e interpretar os dados do nunchuck podem dar uma vista de olhos na minha pagina.

Tenho as informações e um pequeno codigo de exemplo http://msm.no.sapo.pt/nunchuck/index.html (http://msm.no.sapo.pt/nunchuck/index.html)

espero que ajude.

Cumprimentos, Mauro.
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 17 de Maio de 2011, 00:20
Olá pessoal,

para ligar e interpretar os dados do nunchuck podem dar uma vista de olhos na minha pagina.

Tenho as informações e um pequeno codigo de exemplo http://msm.no.sapo.pt/nunchuck/index.html (http://msm.no.sapo.pt/nunchuck/index.html)

espero que ajude.

Cumprimentos, Mauro.

a duvida esta na programação por estar a misturar o acelarometro com o joystic, mas no teu site usas pic e eu neste uso picaxe com ling. basic
Título: Re: picaxe + wii nunchuk
Enviado por: andre_f_carvalho em 24 de Agosto de 2011, 23:40
boas,

depois de tanto tempo sem mexer nisto, lá fiz um video dos servos a mexerem com o nunchuck, espero que gostem xD

Nunchuck + picaxe 18m2 - pan&tilt test (http://www.youtube.com/watch?v=SP2iN3AyhLQ#ws)