Bonjour,
J'essaye, par curiosité, d'allumer 12 diodes individuellement avec un 08M2, avec ce schéma:

En alimentant directement en 5V chaque paire de C.x, on allume bien les 12 leds individuellement
Je pensais donc qu'il suffisait de déclarer successivement chaque paire en sortie et les autres broches en entrées (haute impédance) pour reproduire ces alimentations avec ce code:
Et bien non, les leds s'allument bien, mais la led 3 allume la 2, la 4 allume la 8, etc comme indiqué dans le code.
Je ne comprends pas pourquoi une broche déclarée en entrée peut alimenter une led...
J'ai du rater quelque chose.
Une idée?
Merci
MM
J'essaye, par curiosité, d'allumer 12 diodes individuellement avec un 08M2, avec ce schéma:

En alimentant directement en 5V chaque paire de C.x, on allume bien les 12 leds individuellement
Je pensais donc qu'il suffisait de déclarer successivement chaque paire en sortie et les autres broches en entrées (haute impédance) pour reproduire ces alimentations avec ce code:
Code:
;charlieplexing 12 leds
;6 combinaisons et 2 sens =>12
#picaxe 08M2
#no_data
symbol tempo=4000
do
;leds 1 et 2 entre C.0 et C.1
dirsc=%00011
pinsC=%00001 ;1
pause tempo
pinsC=%00010 ;2
pause tempo
;leds 3 et 4 entre C.1 et C.2
dirsC=%00110
pinsC=%00010 ;3 => 2
pause tempo
pinsC=%00100 ;4 => 8
pause tempo
;leds 5 et 6 entre C.2 et C.4
dirsC=%10100
pinsC=%00100 ;5 => 8
pause tempo
pinsC=%10000 ;6 => 12
pause tempo
;leds 7 et 8 entre C.0 et C.2
dirsC=%00101
pinsC=%00001 ;7
pause tempo
pinsC=%00100 ;8
pause tempo
;leds 9 et 10 entre C.1 et C.4
dirsC=%10010
pinsC=%00010 ;9 => 2
pause tempo
pinsC=%10000 ;10 => 12
pause tempo
;leds 11 et 12 entre C.0 et C.4
dirsC=%10001
pinsC=%00001 ;11
pause tempo
pinsC=%10000 ;12
pause tempo
loop
Et bien non, les leds s'allument bien, mais la led 3 allume la 2, la 4 allume la 8, etc comme indiqué dans le code.
Je ne comprends pas pourquoi une broche déclarée en entrée peut alimenter une led...
J'ai du rater quelque chose.
Une idée?
Merci
MM