Analog Pins don't correctly switch to Digital
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Ambito
- embedded-iot
Direzione di ricerca
Inizia riproducendo il programma MicroPython completo dell’issue sul BBC micro:bit, quindi traccia gli entry point write_digital e write_analog di pin12, pin8, pin16 e pin14. Confronta il comportamento di digital-high e PWM-1023; il lavoro è completato quando entrambi gli approcci arrestano i motori come previsto dopo il pilotaggio PWM iniziale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
We're using 4 pins to control 2 dc motors, 2 pins for each motor. PWM on one pin or the other depending on direction. The other pin is set to a 0 (write_digital). To coast to a stop, set both pins to 0 - this always works regardless of analog or digital. To use regenerative braking, set both pins to 1 - this goes wrong if use write_digital and only works by using write_analog with 1023 for PWM.
The following complete program "should" work I think to set both pins to high after driving the motors forward with PWM value of 600. However, instead of the motors stopping, they start moving backwards slowly. If the "write_digital(1) are replaced with "wire_analog(1023)" then it all works as it should.
from microbit import *
pin12.write_analog(600)
pin8.write_digital(0)
pin16.write_analog(600)
pin14.write_digital(0)
sleep(2000)
pin12.write_digital(1)
pin8.write_digital(1)
pin16.write_digital(1)
pin14.write_digital(1)
- Lingua principale
- C
- Stelle
- 647
- Fork
- 290
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di bbcmicrobit/micropython
-
i2c unknownAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
bbcmicrobit/micropython#809 · 1 commento ·
-
Radio frequencies unclearAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
bbcmicrobit/micropython#801 · 1 commento ·
-
add threading or _threadAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
bbcmicrobit/micropython#799 · 1 commento ·
-
add SPI disable funcionAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
bbcmicrobit/micropython#797 ·
-
Drive GPIO on nrfAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
bbcmicrobit/micropython#796 ·
Tutte le issue di bbcmicrobit/micropython
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
vercel-labs/zerolang#442 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
I maintainer di solito rispondono entro 1 giorno
-
mewencode: base256[] and base128[] are indexed out of bounds by a non-ASCII octetForse già presa @kazu-yamamoto l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
kazu-yamamoto/Mew#276 ·
I maintainer di solito rispondono entro 1 giorno
-
[iwm] transaction_get() copies the whole payload regardless of the length asked forForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 91/100
FujiNetWIFI/fujinet-firmware#2045 ·
I maintainer di solito rispondono entro 1 giorno