Maak een schets van de Arduino kleinere (2 / 3 stap)

Stap 2: Trim neer de bibliotheken


Een meer extreme en brute force methode voor het verkleinen van het programma is een kopie van elke grote complexe bibliotheken maken en verwijderen van elke code die je niet gaan gebruiken.  Een van de bibliotheken die ik gebruik is de UTFT LCD-bibliotheek.  Het ondersteunt verschillende LCD's en heeft een heleboel functies tekening.  Hierdoor vereist een heleboel code lezen en tracering om te bepalen wat u echt moet houden en wat trial and error te krijgen alle om te compileren en uit te werken.  Zelfs daarna het gebruiken van UTFT van memorysaver.h was ik kundig voor uitgezonderd van meer dan 5K van extra ruimte door het verwijderen van alle code ter ondersteuning van meerdere LCD's en doordat klassenleden die ik niet ben gaan gebruiken.  Ik zal proberen uitleggen hoe ik ging hierover zodat u het op elke bibliotheek toepassen kunt.

Eerst af, ik ging naar de arduino/bibliotheekmap en gemaakt van een kopie van de map UTFT en noemde het "myUTFT", dan UTFT.h en UTFT.cpp hernoemd naar myUTFT.h en myUTFT.cpp.
Vervolgens, ik myUTFT.h en myUTFT.cpp in een teksteditor geopend en alle UTFTs vervangen door myUTFT.  Dit raakt me een totaal nieuwe bibliotheek en de klasse die zal niet ooit een conflict in de Arduino omgeving veroorzaken.

Nu het harde deel, verwijderen code!  Ik begon met myUTFT.h en begon aan de top, het lezen van de code.  Eerst zag ik er is een lijst van definieert voor alle verschillende LCD's en chips ondersteund.  Ik verwijderde alles behalve degene die ik gebruik.  Daarnaast zijn er enkele "#if gedefinieerd" ' regels voor de verschillende micro-controllers ondersteund.  Ik kon hebben verlaten deze als-is, maar besloot te wreedaard-krijgsmacht alles en verwijderd alle, maar de AVR degenen voor de Arduino.  Tot slot, er is een lijst van de methoden van de klasse, en verwijderde ik degene die ik niet gebruik.  UTFT heeft een opmerking over enkele niet-gedocumenteerde methoden, en deze lijken te intern worden gebruikt, dus ik hen liet.

Nu voor myUTFT.cpp.  Ik gaf dit dezelfde behandeling als de .h bestand, UTFT hernoemen naar myUTFT en het verwijderen van overbodige definieert en functioneert.  Ik heb ook verwijderd sommige overbelaste functies.  Ik ben alleen van plan over het instellen van kleuren door het "woord" benoemde constanten en niet door de RGB-bytes, dus ik verwijderd "setColor (byte r, byte g, byte b)" en "setBackColor (byte r, byte g, byte b)" functies.  Ik lees dan elke functie en keek voor code die ik niet nodig, bijvoorbeeld de LCD ik gebruik heeft een include-bestanden waarin "display_transfer_mode = 8", dus ik hoef geen code die gebruikmaakt van alle andere display_transfer_mode waarden, dus ik verwijderd die blokken van code.  Ik verwijderde ook methoden voor functies biedt geen ondersteuning voor mijn lcd, net als de op/af en contrast methoden.

Hierna sloeg ik elk bestand opgenomen onder de map myUTFT geopend en gaf hen alle dezelfde behandeling.

Nu in uw tekening door de include en klasse namen overeenkomen met uw nieuwe bibliotheek en doen een controleren te wijzigen.  Mijn eerste poging kreeg ik een heleboel compile errors omdat ik te veel code, verwijderd of verwijderd van een variabele definitie en miste de code waar die variabele werd gebruikt.  De fouten zal u vertellen welke bestanden en lijnen te kijken, ze volgen en op te lossen om het even wat dat het klaagt over.  Dit is het voordeel van het maken van een kopie van de bibliotheek, kan ik verwijzen naar het origineel om te zien wat ik nodig om toe te voegen terug.  Zodra het heeft geverifieerd, de nieuwe afbeelding uploaden en zien of het nog werkt.

Gerelateerde Artikelen

Uitzetten van een schets van de Arduino met behulp van de schakelaar Pololu

Uitzetten van een schets van de Arduino met behulp van de schakelaar Pololu

moet u een Arduino om af te sluiten uit binnen uw schets, dit is de oplossing.Bedrading van de Pololu drukknop / uit-schakelaar, programmeren van de Arduino om en alleen de macht, en maken de eenheid "macht op" uitgeschakeld, zullen we ontdekken
Maak een hooggelegen ballon Tracker (Arduino)

Maak een hooggelegen ballon Tracker (Arduino)

Een van de coolste projecten die ik zo ver heb gedaan met mijn kinderen is een ballon "in de buurt van-ruimte". Dat is niet vrij in de ruimte zelf (100 Km +) maar zo hoog dat de hemel zwart kijkt, en u beginnen kunt te zien van de kromming van d
Maak een Mirror van de geheugen gevonden voorwerpen (en maak uw ongewenste lade)

Maak een Mirror van de geheugen gevonden voorwerpen (en maak uw ongewenste lade)

Ik heb verzamelen/opgehoopt kleine 'stukjes' voor ongeveer vijftig jaar--weet je alle onhandig bits zweven rond het huis. Die kleine speelgoed die u stap op, de dingen die in uw ongewenste lade voor jaren, en alle kleine stukjes u zijn vinden tijdens
Hoe lees ik een kaart van de arduino met LabVIEW

Hoe lees ik een kaart van de arduino met LabVIEW

Deze video laat zien hoe om te lezen van een kaart van de Arduino met LabVIEW. LabVIEW heeft een groot gebruikersinterface dat het gemakkelijk maakt om gegevens van een Arduino-kaart worden opgeslagen. Een van de grootste uitdagingen bij het gebruik
Hoe maak en gebruik van de arduino als een Internet-provider voor een ATtiny 45/85

Hoe maak en gebruik van de arduino als een Internet-provider voor een ATtiny 45/85

In dit instructable ik zal u tonen hoe kunt u uw eigen Atting programmering shield voor de arduino en gebruikt u vervolgens de arduino als een programmeur.Meestal hebt u niet een schild kan je een breadboard versie om te programmeren van de ATtiny. (
Een reis van Palm Arduino Kit

Een reis van Palm Arduino Kit

ik dit instructable verschuldigd aan mijn Palm Arduino Kit-fan!Ik heb vermeld in mijn vorige instructable "Palm Arduino Kit" dat ik de kit bouwde om samen met mij, terwijl ik het reizen.En een echte reis van mijn Palm Arduino-Kit deed is gebeurd
Android App om te controleren via Bluetooth een beheersing van de Arduino maken uw huis via RF, allemaal met AppInventor

Android App om te controleren via Bluetooth een beheersing van de Arduino maken uw huis via RF, allemaal met AppInventor

Ik weet dat de titel nogal een mondvol is, maar het is precies wat het is.Enige tijd geleden, maakte ik een instructable beschrijven een circuit rondom een atmega328 (of een 'Arduino'), dat moest schrikken inbrekers door te simuleren me thuis.Geleide
Maak een loco van ongewenste

Maak een loco van ongewenste

toen ik een kind was, en later als een volwassen omhoog ik wilde een treinset. Niet een van die kleintjes (die zijn erg leuk dat ik ben er zeker), maar een echt groot met fijn gedetailleerde motoren en rijtuigen. Ze kosten duizenden en ik zie manier
Maak een mini speelgoedauto met Arduino

Maak een mini speelgoedauto met Arduino

Elke jongen hebben de droom om een auto te maken. Dagen geleden maakte ik een nooit val kever, het is erg grappig en zo veel mensen zei dergelijke het. Hier zal het een ander speelgoedauto, die veel kleiner is en het is programmeerbaar.Ik ga niet sch
Bouw een Robot van de Arduino Gripper met een DynamixShield.

Bouw een Robot van de Arduino Gripper met een DynamixShield.

In dit instructable ik zal u tonen hoe te snel en gemakkelijk bouwen de grijper van een afstandsbediening met behulp van de robot en Arduino nul en een DynamixShield. De DynamixShield is een nieuwe add-on voor de Arduino Due, nul of Mega die ik ben b
Maak een map van de school uit een cereal doos

Maak een map van de school uit een cereal doos

hoe "hergebruiken" een graansoort vak in een map van de school.Mijn dochter is behoorlijk gepassioneerd over de behandeling van onze planeet meer verantwoord. Als een manier om hergebruik wat materiaal van onze recycle-bin, kregen we het idee om
Maak een kanon van BB van een zaklamp! (700fps!)

Maak een kanon van BB van een zaklamp! (700fps!)

In dit instructable ik zal laten zien en beschrijven hoe het bouwen van uw eigen 700fps BB gun binnen een metalen zaklamp. Dit zijn relatief eenvoudig en goedkoop te maken en basishulpmiddelen en een beetje kennis vereist. Deze BB guns zijn niet bedo
Maak een Skateboard van een 2 x 4 - een uiterst pret (en enigszins schetsmatig) Project

Maak een Skateboard van een 2 x 4 - een uiterst pret (en enigszins schetsmatig) Project

Hey iedereen! Het spijt me dat ik nog niet iets hebt gepost voor een tijdje. Ik heb net mijn eerste term Universiteit; het was behoorlijk hectisch! Ik heb dit idee schoppen rond in mijn achterhoofd, voor een tijdje en ik eindelijk besloten om het te
Maak een Skateboard van een Snowboard

Maak een Skateboard van een Snowboard

Kinda maakte ik dit project enkel voor heck van het (en omdat ik dacht dat het misschien wel cool). Ik had opgepikt op een oude snowboard kostenloos van de kant van de weg en was benieuwd wat mee te maken wanneer dit idee popped in mijn hoofd. Ik dac