Bewegingssensor werkt niet met pennen # 2 en # 3?

Wanneer ik de OUT-kabel van mijn bewegingssensor aansluit op GPIO2 of GPIO3, leest deze altijd als HOOG, maar wanneer ik deze aansluit op een andere GPIO-pen, wordt deze op de juiste manier geïdentificeerd wanneer beweging wordt gedetecteerd. Omdat het werkt op andere GPIO-pinnen, weet ik dat mijn code en bewegingssensor beide werken, ik ben benieuwd of er speciale eigenschappen van GPIO2 en GPIO3 zijn die dit niet toestaan, of dat ik iets verkeerd doe .

Raspberry Pi 2

Bewerken: nog een potentieel kritisch stukje informatie: voordat ik gespreksdraden kreeg, wikkelde ik blote draden rond de GPIO-pinnen en wist ik het zeker eens wanneer ik twee GPIO's aan elkaar verbond, er was een kleine vonk, dus ik weet dat deze verbonden is (mogelijk GPIO2 en GPIO3?). Zou dit deze gebroken hebben? Zo ja, is er een manier om dit te repareren naast het kopen van een nieuw pi-board?

0
Probeer te vermijden "Ik weet dat mijn code werkt omdat ..." als excuus om de code niet op te nemen. Het lijkt misschien een redelijke gevolgtrekking, maar in dit (zoals vaak het geval is) is het een beetje waar op een voor de hand liggende manier, maar onjuist op een misschien minder voor de hand liggende, maar duidelijk meer letterlijke manier.
toegevoegd de auteur David Harris, de bron
Een deel van mijn punt was dat als je code had gepost, iemand je had kunnen vertellen wat je eraan moest toevoegen, want we weten niet eens welke taal je gebruikt. Ik geloof dat je de ALT-functie op de pinnen moet veranderen, wat vrij eenvoudig zou moeten zijn met een van de pi-specifieke GPIO-libs; het kan ook niet via sysfs worden gedaan. Maar ik heb dit niet echt gedaan.
toegevoegd de auteur David Harris, de bron
Als we je code hebben gezien, kunnen we ook meer vertrouwen hebben dat je GPIO 2/3 gebruikt (pinnen 3/5 op recente Pis). bedradingPi heeft een pintest utilty, mijn pigpio heeft een gpio testscript. Beide zullen een GPIO-vertrouwens test doen.
toegevoegd de auteur joan, de bron
Absoluut. Ik ben nu aan het werk, maar zal mijn code posten wanneer ik thuiskom. Ik ben benieuwd wat ik kan doen met mijn code/bedrading om GPIO2 en GPIO3 aan het werk te krijgen. Verder zal ik, telkens als ik op deze RPi Stack Exchange post, proberen mijn code te plaatsen, ongeacht hoe zelfverzekerd ik denk dat ik ben.
toegevoegd de auteur Kudos2u2, de bron

1 antwoord

Those two pins are the I2C interface on the B+ and 2 Models, by default they will have real, physical 1.8 KΩ pull-ups {R1 & R2} to 3.3 Volts, which might be confusing things depending on the nature of the output from your motion sensor - what is it by the way?

Bewerken: update zodra ik heb vastgesteld welke vorm de pull-ups hebben aangenomen.

3
toegevoegd
"Pull-ups" betekent dat ze zijn vastgemaakt aan een + die hen hoog drijft, tenzij een grond is bevestigd om de pull-up kort te maken (en daarom hebben ze weerstanden). U kunt dit configureren, maar tenzij er een echte behoefte is, kunt u ze net zo goed vermijden, de SPI en de UART-pinnen voor gebruik als GPIO's.
toegevoegd de auteur David Harris, de bron
Dat is een behoorlijke afzonderlijke vraag ("Moet ik iets speciaals doen om de UART-pinnen als GPIO's te gebruiken?"). Ik ben ook niet zeker van SPI, dus je zou kunnen gaan met "UART of SPI". Ik ga veronderstellen dat het antwoord nee is voor de eerste en ja voor de laatste, maar dat is gewoon de top van mijn hoofd.
toegevoegd de auteur David Harris, de bron
Ik veronderstelde dat ze met de functie konden worden in- of uitgeschakeld (ik heb dat gebruikt om I2C op de P5-header in te schakelen), maar als je zegt dat ze verbonden zijn met een pull-up buiten de IC, dan zal ik er je woord voor nemen ( maar kon de pull-up nog steeds niet worden uitgeschakeld?). Eigenlijk ben ik nu in de war over de vraag, aangezien ze naar de grond trekken ze nog steeds laag zou moeten zetten (ze zijn nutteloos voor alles als ze dat niet kunnen, toch?) En je zou denken dat de bewegingssensor dat zou doen. Als je de weerstanden niet kunt omzeilen, moeten ze dan niet gemakkelijker worden om als GPIO-pinnen te gebruiken, omdat ze geen zwevende status kunnen hebben?
toegevoegd de auteur David Harris, de bron
@goldilocks Eigenlijk voor deze twee pinnen kun je dit niet "configureren" voor pull-ups - het zijn echte weerstanden op de PWB (R1 en R2), dus vertel de Pi om te trekken ze naar beneden met (veel hogere) weerstanden in het IC zullen geen effect hebben!
toegevoegd de auteur SlySven, de bron
Je zou interne pull-ups via de software kunnen in- of uitschakelen, maar wanneer er een aanzienlijk kleinere externe weerstand is (1,8 KΩ vergeleken met wat ik begrijp is ongeveer 50 KΩ) tot 3,3 Volt is het effect verwaarloosbaar. Het effect op de bewegingssensor hangt af van de aard van de uitgangscircuits - maar het klinkt alsof het geen vrij sterke pull-up verwacht. Het OP zou eigenlijk wat informatie over de bewegingsdetector moeten bieden!
toegevoegd de auteur SlySven, de bron
Ik zag de I ^ 2C-aanduiding voor deze pinnen, maar kon hier geen informatie over vinden. Kun je verduidelijken wat je bedoelt met pull-ups en of ik zelfs moeite zou moeten doen om met deze pinnen te proberen of ze gewoon in de toekomst te negeren? Ik heb net een PIR ontvangen van Amazon, hier is de link: amazon .com/gp/product/& hellip;
toegevoegd de auteur Kudos2u2, de bron
Moet ik vanuit mijn newbie-perspectief gewoon de I ^ 2C- en SPI/UART-pinnen verwijderen of hebben de SPI/UART-pinnen geen extra configuratie nodig, zoals de reguliere GPIO-pinnen?
toegevoegd de auteur Kudos2u2, de bron