Picaxe Wii Nunchuck avec I2c
Bonsoir,
J'ai trouvé un code sur le forum Picaxe que j'ai adapté au 20x2.
La revue Electronique Pratique N°355 explique le câblage de la poignée mais n'utilise pas de Picaxe pour gérer i2c.
Ci-dessous un code qui fonctionne avec un picaxe 20x2.
#picaxe 20x2
setfreq m16
'Picaxe Wii Nunchuck avec I2c
'Picaxe 20x2
init:
setfreq m16 'frequence à 16Mhz.
i2cslave $A4, i2cslow, i2cbyte
i2cwrite ($40,$00)
pause 10
lp: 'loop
setfreq m16
'pause 100
writei2c (0)
pause 10
readi2c (b1,b2,b3,b4,b5,b0)
'X joy
b13 = b0
b0 = b13 Xor 0x17 + 0x17
'Y joy
b13 = b1
b1 = b13 Xor 0x17 + 0x17
poke $50, b1
'X acc
b13 = b2
b2 = b13 Xor 0x17 + 0x17
poke $51, b2
'Y acc
b12 = bit2 * 2 + bit3
b13 = b3
w5 = b13 Xor 0x17 + 0x17 * 2 + b12
poke $52, word w5
'Z acc
b12 = bit4 * 2 + bit5
b13 = b4
w5 = b13 Xor 0x17 + 0x17 * 2 + b12
poke $54, word w5
b12 = bit6 * 2 + bit7
b13 = b5
w5 = b13 Xor 0x17 + 0x17 * 2 + b12
poke $56, word w5
'buttons Z
bit0 = not bit0
poke $58, bit0
'buttons C
bit1 = not bit1
poke $59, bit1
'buttons Z et C
b14= bit0 xor bit1
poke $60,b14
'X joy
peek $50, b0
'Y joy
peek $51, b1
'X acc
peek $52, w1
'Y acc
peek $54, w2
'Z acc
peek $56, w3
'buttons
peek $58, b12
peek $59, b13
peek $60, b14
pause 100
serout 9,N9600_16,(#b0,"X",#b1,"Y",#w1,"x",#w2,"y",#w3,"z",#b12,"Z",#b13,"C",#b14,"ZC")
debug
goto lp
Bon courage et il y a de nombreuses informations sur le forum !