Inhoudsopgave:

Mash Up Arduino-codevoorbeelden: 6 stappen (met afbeeldingen)
Mash Up Arduino-codevoorbeelden: 6 stappen (met afbeeldingen)

Video: Mash Up Arduino-codevoorbeelden: 6 stappen (met afbeeldingen)

Video: Mash Up Arduino-codevoorbeelden: 6 stappen (met afbeeldingen)
Video: ESP32/ESP32-S3 and Dynamixel MKR Shield Mash-Up 2024, Juli-
Anonim
Mash Up Arduino-codevoorbeelden
Mash Up Arduino-codevoorbeelden

Deze tutorial doorloopt het proces van het combineren van Arduino-voorbeeldschetsen om een werkend projectprototype te maken. Het ontwikkelen van de code voor uw project kan het meest intimiderende deel zijn, vooral als u het nog niet duizend keer hebt gedaan.

Als je een totale Arduino-newbie bent, probeer dan mijn gratis Arduino-klasse hier op Instructables.

Om op de hoogte te blijven van waar ik aan werk, volg me op YouTube, Instagram, Twitter, Pinterest en abonneer je op mijn nieuwsbrief. Als Amazon Associate verdien ik met kwalificerende aankopen die je doet via mijn gelieerde links.

Laten we erin duiken!

Stap 1: Definieer het doel

Definieer het doel
Definieer het doel

Ten eerste, en dit lijkt misschien voor de hand liggend, maar schrijf het hoofddoel van het projectidee op. Als het meerdere functies heeft, beslis dan welke functies nodig zijn en welke functies leuk zouden zijn maar in eerste instantie niet nodig zijn. Zie ook mijn vorige tutorial over veelvoorkomende Arduino-fouten, waaronder meer afbijten dan je kunt kauwen. Houd het eerst simpel; je kunt er later altijd nog iets aan toevoegen.

Stap 2: Ingangen en uitgangen classificeren

In- en uitgangen classificeren
In- en uitgangen classificeren

Classificeer vervolgens de input en output van het project. Een weermonitor heeft mogelijk een temperatuur- en vochtigheidssensor en een soort display. Internetprojecten hebben mogelijk een cloudservice als invoer, uitvoer of beide, zoals mijn Internet Valentine-project dat ook een knopinvoer en LED- en vibrerende motoruitgangen heeft voor elk circuit. Het project dat ik vandaag aan het bouwen ben, is een prop-passkey-evaluator die gebruikmaakt van een membraantoetsenbordinvoer en -uitvoer naar een alfanumeriek display en drie indicatie-LED's.

Stap 3: Schrijf pseudocode

De volgende stap is het schrijven van pseudocode die probeert door de hoofdlus van het programma te lopen. Pseudocode is niets anders dan gewone woorden die worden gebruikt om het programma uit te leggen. Het moet niet te ingewikkeld zijn, maar moet de basisoorzaken en -effecten schetsen waarmee u in uw programma wilt omgaan.

Gele LED begint aan

Bewaak en sla invoer van membraantoetsenbord op Gebruik speciale * en # tekens om het wachtwoord in te voeren en te stoppen Als de toegangscode correct is, schakel dan de groene LED-weergave "OPEN" in op het scherm als de toegangscode onjuist is, schakel dan de rode LED-weergave in "NOPE" op het scherm

Stap 4: hardware testen

Testhardware
Testhardware
Testhardware
Testhardware
Testhardware
Testhardware
Testhardware
Testhardware

Volgende stap: selecteer en evalueer hardwarecomponenten die voor uw inputs en outputs zouden kunnen werken. Het is iets ingewikkelder dan ervoor te zorgen dat je genoeg pinnen beschikbaar hebt, maar ik bewaar mijn hardware-selectieadvies voor een andere tutorial (laat je vragen achter in de comments). Hier is een geweldige gids over het selecteren van microcontrollers.

Bouw en voer een voorbeeld uit voor elk onderdeel waarmee u werkt. Dit omvat het downloaden van alle relevante codebibliotheken en het bekijken van voorbeeldcode die test of u deze correct hebt aangesloten. Voor ingangen gebruik je de seriële monitor om feedback te krijgen. In mijn geval is dat een membraantoetsenbord dat de toetsenbordbibliotheek gebruikt.

En toen voegde ik een alfanumeriek display toe met een i2c-rugzak en drie verschillende gekleurde LED's met elk hun eigen weerstand. Ik heb de voorbeeldcode voor het scherm geüpload om te controleren of het goed is aangesloten en heb vervolgens een eenvoudige knipperschets uitgevoerd om de LED's te testen. In beide gevallen vond ik bedradingsfouten die ik moest oplossen.

Het is gemakkelijker om te ontdekken dat er in dit stadium iets verkeerd is aangesloten, wanneer u werkt met code waarvan bekend is dat deze met het betreffende onderdeel werkt, in plaats van te proberen bedrading en code tegelijkertijd te debuggen.

Begin met het schrijven van opmerkingen in uw code waarin wordt uitgelegd wat elke sectie doet.

Stap 5: Maak uw nieuwe programma

Maak een nieuwe schets waarin je elementen van al je voorbeeldschetsen plakt om je programma te maken.

In de loop, als je geen goed voorbeeld hebt om te volgen of het helemaal opnieuw wilt schrijven, plak dan je pseudocode in als commentaar om te beginnen. Vervolgens ga je aan de slag met het maken van de logische algemene structuur van het programma.

Het is mogelijk dat een van uw voorbeeldschetsen het grootste deel van uw kernstructuur al doet, of dat u gemakkelijk iets online kunt vinden dat dat wel doet. Het is waarschijnlijk dat iemand eerder iets heeft gedaan dat lijkt op uw idee, zelfs als het andere hardware gebruikt. Dus ik keek online en ik vond een paar deurvergrendelingsprojecten met membraantoetsenbord, allemaal met deze wachtwoordbibliotheek. Dus ik heb de bibliotheek gedownload en de bijbehorende voorbeelden bekeken, en ik had veel geluk! Er is een voorbeeld van een wachtwoordbeoordelaar met een membraantoetsenbord dat precies doet wat ik wil. Ik hoef alleen maar mijn gewenste uitgangen in te voeren, dus code voor het display en de LED's.

Een heel goede gewoonte terwijl je dit doet, is om je programma heel vaak te compileren. Op die manier, als er een fout is, kunt u deze isoleren tot precies de tijd dat u over dit-en-dat kopieerde.

Hier is het van cruciaal belang dat u aandacht besteedt aan bijpassende accolades, ontbrekende puntkomma's en andere typefouten waardoor uw programma moeilijk te debuggen zou zijn.

Stap 6: Incrementele verbeteringen aanbrengen

Afbeelding
Afbeelding

Maar alleen omdat je programma compileert, wil nog niet zeggen dat het precies doet wat je wilt. Ik had bijvoorbeeld mijn rode en groene LED's door elkaar gehaald toen ik dit project voor het eerst maakte.

Er zullen ongetwijfeld onverwachte problemen optreden als je eenmaal alle elementen bij elkaar hebt gebracht, en je daadwerkelijk ziet hoe het werkt, zou je kunnen veranderen wat je wilt dat je programma doet. Dit is de aard van coderen. U wilt uw verschillende iteraties bijhouden, dus wees slim over hoe u uw bestanden een naam geeft. Ik raad aan om versienummers te gebruiken. Wanneer u een mijlpaal bereikt, noem deze dan versie 2, sla dan versie 3 op en begin met het aanbrengen van nieuwe wijzigingen.

Nadat je basisproject werkt, is het cool om door te gaan en andere functies toe te voegen van je "leuk om te hebben" -lijst of andere die je tijdens de build hebt gebrainstormd.

Bedankt voor het lezen. Misschien vind je mijn gids voor 3 beginners Arduino-fouten misschien ook leuk. Vergeet niet om ook mijn gratis Instructables Arduino Class, IoT Class en mijn andere projecten te bekijken. Ik kijk ernaar uit om je feedback in de comments te lezen!

Volg mij op YouTube, Instagram, Twitter en Pinterest om op de hoogte te blijven van waar ik mee bezig ben.

Aanbevolen: