2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Haai almal, As u Arduino -projekte uitgegroeide knipperende LED's het, benodig u moontlik ekstra penne.
Ek sal u 'n truuk wys wat u kan gebruik om verskeie knoppies te hê, almal gekoppel aan dieselfde analoog pen.
Stap 1: materiaal
Die kring is baie eenvoudig en dit benodig net 'n 1kOhm -weerstand vir elke skakelaar. Eintlik bou ons 'n spanningsverdeler, waar ons deur 'n druk op elk van die knoppies 'n verskillende weerstand te koppel aan die analoog ingang op die Arduino.
Stap 2: Skematiese
Begin deur een van die weerstande aan die 5V -uitgang en aan die een kant van die eerste skakelaar te koppel. Die ander kant van die skakelaar moet dan aan die aarde gekoppel word. Elke bykomende knoppie word met sy eie weerstand in serie met die eerste gekoppel en aan die ander kant gemaal.
Die analoog invoerpen is tussen die eerste weerstand en die eerste ingangsknoppie verbind.
Die volledige skema in EasyEda is hier beskikbaar:
Stap 3: Kodeer
Die kode is baie eenvoudig, waar ons in die eerste reël van die lusfunksie die waarde van die analoog invoer lees en dit dan vergelyk met 'n sekere drempel om te bepaal watter knoppie gedruk word. Om die regte waardes te identifiseer, het ek eers slegs die waarde van die analoog pen op die seriële monitor laat druk, en ek het dit dan in die regte reeks omgeskakel.
Die volledige kode kan afgelaai word vanaf my GitHub-bladsy:
Stap 4: Verdere uitbreiding
Hierdie metode kan maklik tot baie knoppies afgeskaal word, maar hou in gedagte dat hoe meer u die kleiner toevoeg, die drempelverskil sal wees, sodat enige variasies in die ingangsspanning 'n verkeerde lesing kan veroorsaak. Vir gereelde operasies van tot 10 ~ 15 knoppies behoort dit egter nie 'n probleem te wees nie.