Inhoudsopgave:
- Stap 1: 20 LED's op 5 pinnen
- Stap 2: Charlieplexen
- Stap 3: Aan het werk zetten
- Stap 4: Kleiner en veelzijdiger…
- Stap 5: Itty Bitty
- Stap 6: Software
Video: Hoe veel LED's van een paar microcontroller-pinnen te besturen. - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Door gebruik te maken van het feit dat veel microcontroller-pinnen drie toestanden hebben (+V, GND of "hoge impedantie", kunt u N*(N-1) LED's aansturen vanaf N-pinnen. Dus de kleine 8-pins microcontroller zoals een PIC12Fxxx of een ATtiny11 kan rijden 20 LED's hebben vijf beschikbare uitgangspinnen en hebben nog één pin over voor een soort invoer. Zie ook
Stap 1: 20 LED's op 5 pinnen
De huidige oogst van microcontrollers met een laag aantal pins (6 pins tot 20 pins aan)
het hele pakket) zijn aantrekkelijk geprijsd en 'schattig', maar de vraag rijst hoe je die pinnen het beste kunt gebruiken voor veelvoorkomende toepassingen zoals het aansturen van LED's. Een directe-verbindingsbenadering voor het aansturen van LED's verbruikt één pin voor elke LED. Een traditioneel multiplexschema waarbij rijen LED-anodes worden aangedreven door één set N-pinnen en de gemeenschappelijke kathode van elke rij wordt aangedreven door een andere set M-pinnen, slaagt erin om N*M-LED's met N+M-pinnen te verlichten. Op een processor met slechts 5 of minder uitgangen (zoals het geval is bij de meeste 8-pins microcontrollers), levert dit nauwelijks meer uitgangen op dan direct drive.
Stap 2: Charlieplexen
Ervan uitgaande dat de uitgangspinnen in feite in drie toestanden kunnen staan (actief hoog, actief laag en hoge impedantie (invoer)), is het ook mogelijk om de rij- en kolomstuurprogramma's te delen en N*(N-1) LED's te besturen met slechts N pinnen. Eén pin is verbonden met gemeenschappelijke kathodes van een rij LED's en wordt laag aangedreven, en de resterende N-1-pinnen zijn verbonden met de anodes en ofwel hoog aangestuurd om die kolom te verlichten, of links als ingangen om de LED uit te laten. Maxim noemt deze techniek "Charlieplexing", en beschrijft het in(1); Microchip vermeldt dit ook in hun document (2) (en implementeert dit ook op het PICKit 1-bord.)(1) "Charlieplexing - Reduced Pin-Count LED Display Multiplexing"https://www.maxim-ic.com/appnotes. cfm/appnote_number/1880(2) "Tips 'n Tricks 8-pins FLASH PIC-microcontrollers"https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) Charlieplexing-LED's- De theorie Een instructie van rgbphil
Stap 3: Aan het werk zetten
Deze stuurt 20 LED's aan uit een ATtiny11. Een eerdere versie van dit bord was:
daadwerkelijk gebouwd en verschijnt als de foto op de hoofdpagina. Ik ben bang dat de afbeelding van het schema behoorlijk hopeloos is; je hebt Eagle nodig om je te vertellen welke signalen waar zijn aangesloten.
Stap 4: Kleiner en veelzijdiger…
Omdat het grootste deel van het bord wordt ingenomen door de LED-array, kunnen we ruimte maken!
voor ofwel een Attiny-chip OF een microchip PIC12F-chip. Verklein de LED's tot 3 mm en ga naar een dubbelzijdig bord, en we krijgen iets van 27x44 mm. Helaas, dit bord is nog niet getest …
Stap 5: Itty Bitty
Microchip heeft natuurlijk hun 6-pins PIC10F-chips, die in staat zijn om een
slechts 6 LED's van de 3 uitgangspinnen. Deze is ongeveer 16 mm in doorsnee. Door naar 603 LED's te gaan, kun je een beetje kleiner worden, maar ik weet niet zeker wat het punt is.
Stap 6: Software
De software wordt om verschillende redenen een beetje rommelig:
1) voor de getoonde PCB's zijn de LED's opgesteld op een manier die geschikt is voor de PCB-lay-out, in plaats van in de "juiste" bitvolgorde. IMO, dit is de manier om dingen te doen, maar het betekent wel dat rij 1 niet noodzakelijk bit 1 betekent, of kolom 3 niet bit 3. Dit vereist een niveau van toewijzing tussen de gebruikelijke rij-/kolomadressering en de bits die moeten worden ingesteld. 2) Aangezien dezelfde bits worden gebruikt voor anodes en kathoden, kan de gemeenschappelijke (rij) verbinding voor sommige bits in het midden van aangedreven (kolom) bits zitten. Dat betekent dat u kolombits moet verschuiven, afhankelijk van of ze voor of na de rijbit voor die reeks kolommen zijn. 3) U moet uitgangswoorden afleiden voor zowel de ioport als het poortrichtingsregister. De bijgevoegde ASM-code voor ATtiny11 is een 'proof of concept'. Het is beschamend niet-geoptimaliseerd en slecht becommentarieerd, maar het is alles wat ik tot nu toe heb geschreven.
Aanbevolen:
Een GoPro Hero 4 besturen met een RC-zender: 4 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een GoPro Hero 4 besturen met een RC-zender: Het doel van dit project is om een GoPro Hero 4 op afstand te kunnen bedienen via een RC-zender. Deze methode gaat gebruik maken van de GoPro's ingebouwde Wifi & HTTP API voor het besturen van het apparaat & is geïnspireerd op PROTOTYPE: KLEINSTE EN GOEDKOOPSTE
Ik heb een oude cd-drive in een wifi-robot gemaakt met behulp van Nodemcu, L298N Motor Drive en nog veel meer: 5 stappen
Ik heb een oude cd-drive in een wifi-robot gemaakt met behulp van Nodemcu, L298N-motoraandrijving en nog veel meer .: VX Robotics & Elektronica Aanwezig
Een LED besturen met behulp van de NodeMCU WiFi-module en de Blynk-app: 7 stappen
Een LED bedienen met behulp van de NodeMCU WiFi-module en Blynk-app: deze Instructable laat u zien hoe u een LED kunt bedienen met behulp van de NodeMCU ESP8266 WiFi-module via de Blynk-smartphone-app. Als je een beginner bent, lees dan verder. Als je meer ervaring hebt, ben je misschien geïnteresseerd in het overslaan naar het einde, waar ik het heb over t
AVR Microcontroller Zekering Bits Configuratie. Het LED-knipperprogramma maken en uploaden in het flashgeheugen van de microcontroller: 5 stappen
AVR Microcontroller Zekering Bits Configuratie. Het LED-knipperprogramma maken en uploaden in het Flash-geheugen van de microcontroller. In dit geval zullen we een eenvoudig programma in C-code maken en dit in het geheugen van de microcontroller branden. We zullen ons eigen programma schrijven en het hex-bestand compileren, waarbij we de Atmel Studio als geïntegreerd ontwikkelplatform gebruiken. We zullen zekering bi
Hoe netjes te solderen (zonder veel draden!) Ontkoppelingskappen op SMT-microcontrollers. 9 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe netjes te solderen (zonder veel draden!) Ontkoppelkappen op SMT-microcontrollers.: Deze instructable is geschreven om u te leren hoe u een nette en opgeruimde methode van prototyping kunt gebruiken met SMT-microcontrollers (of andere apparaten) op een adapterkaart. Na moeite te hebben gedaan om de stroompinnen op mijn PIC18F effectief te ontkoppelen, heb ik