hallo
ik vroeg me af wat een librarie toelaat,hoe weet je nou wat je moet programmeren.
ik heb in colorduino.h gekeken,of ik daar achter kan komen,welke codes in een sketch togelaten worden.
zoals b.v. get pixel,en colorduino_getpixel,hoe kom je er nou achter wat library's kunnen.
zijn daar tutorials voor??? ik heb me suf gezocht ,maar vind het niet.
wie weet het???
ik hoop dat ik het goed uitgelegt heb
Hoewel ik je niet wil ontmoedigen......Maar:
Een library is niet meer dan een verzameling functies die allemaal werken op de variabelen die in die library zijn opgenomen. Sommige functies zijn public en derhalve van buiten af benaderbaar. Anderen zijn private en als zodanig niet toegankelijk van buiten af.
Het is een beetje te vergelijken met bijv. een vaatwas machine.
Die zet je neer ..... Creer een library object
Die kan je bedienen ....... public functies
Van binnen gebeurt er van alles met motoren, pompen en schakelaars ...... private functies
Als je wilt weten wat een libraray aan public functies heeft moet je meestal kijken in de librarynaam.h file onder public functies.
Soms heb je mazzel en heeft de auteur ook nog een website gemaakt waarin deze functies beschreven zijn. Maar niet iedereen doet dat. Het is immers vrij of je dat wel of niet doet.
Samenvattend:
- Een library is niet meer dan een verzameling functies die een aantal variabelen bewerken. met interface functies naar buiten toe.
- Meestal is alles samengevat in een Class object.
Wil je meer over classes en libraries weten dan heeft arduin.cc een tutorial. Of ga je verdiepen in C/C++ en object oriëntatie.
ok bedankt.
ik was benieuwd of je erachter kon komen,wat je aan moet geven .
vind het maar raar ,maar ok dus de maker van library proberen te bereiken ,en vragen hoe en wat.
hoe kan je nou weten welke code namen je in moet voeren.
dus dat zou in C++ staan dan ga ik dat bekijken.
bedankt
Hoe je het went of keert.... de library is uiteindelijk niet meer dan een stukje C/C++ code. Daarin staat dus alles. Naar mijn weten worden er nog geen aparte .o bestanden verhandeld voor de Arduino waardoor je dus een library zou kunnen maken zonder de inhoud prijs te geven. Iets wat in de professionele wereld weer wel gebeurt.
ok hoor,is voor mij te moeilijk dus--)
Welke library heb je op het vizier?
onder andere colorduino.h
maar eigenlijk libraries in het algemeen
heb je een link naar die library?
vanschagen:
ok hoor,is voor mij te moeilijk dus--)
waarom is het te moeilijk? leeftijd, taal, ....?
bedenk dat een programmeurs opleiding een paar jaar duurt,
dus je mag niet verwachten dat je het in een paar weken allemaal leert
nee snap ik.
maar vooropleiding van mij ,is minimaal ,enkel lagere school.
en ja ik ben 69,dus gaat niet echt makkelijk
maar ik zet door hoor,stukje bij beetje he.
Vaak is het inderdaad het makkelijkste om stapje voor stapje te werken.
Heb je al eens rondgekeken op de tutorial section?
Daar staan veel kleine programma's die al dan niet gebruik maken van libraries ?
Trouwens bij de meeste libs zitten voorbeeld programmas hoe te gebruiken.
Dat geeft vaak een eerste sprong voorwaarts
ja ik kijk heel het internet af.
heb ook veel pdf boeken van arduino gedownload.
maar weet je wat het is???
ik wil te veel te gelijker tijd ,en dat is fout ,ik weet het.
Het tegelijkertijd willen is niet het probleem, het tegelijkertijd doen wellicht wel - bij mij althans zeker -
Maak een plan wat je will leren of bouwen en verdeel het in behapbare delen (roadmap) Hang dit op boven je buro of zo.
ga het deel voor deel afwerken waarbij je focus houdt op dat deel waar je dan mee bezig bent,
streep af wat je klaar hebt. ![]()
Hou bij wat je geleerd hebt, schrijf je eigen Arduino boek
als je namelijk kunt opschrijven wat je geleerd hebt (niet kopieren) dan begrijp je het echt.
mbt de libraries,
een goede manier om ze te begrijpen is er zelf een te maken. Dat kan een library zijn die een LED bestuurd.
De interface - led.h - kan er zo uitzien.
class LED
{
public:
LED(uint8_t pin);
void on();
void off();
void invert();
void getPin();
void getState();
private:
uint8_t _pin;
uint8_t _ state;
}
Kun jij de bijbehorende led.cpp schrijven?
En een testprogramma natturlijk waarin alle functies van de public interface wordt getest?
ik zie je doet je best maar ik weet niet eens wat een cpp inhoud.
maar ik ga wel bij het begin beginnen van een arduino boek,lijkt me makkelijker
bedankt voor je goede wil.
wat jij wilt snap ik allemaal al niet.
sorry dat ik het zo afkap
Geen probleem,
de .ino file is de sketch file
een .h file is de interface van een librarie die behoort bij een .cpp file
De .cpp file bevat de implementatie van de librarie
.cpp staat voor C++ Het is in die zin gewoon een stukje source code
Let wel - bovenstaande is erg kort door de bocht en er zijn veel variaties mogelijk maar grosso modo is dit het uitgangspunt
Lees deze tutorial door - http://arduino.cc/en/Hacking/LibraryTutorial - (Hoe is je Engels?)
Daar staat heel veel info in doe voor alle libraries gelden.
Andere tip,
je kunt ook kijken of er Arduino hobbyisten in jouw buurt zitten ,
om dan samen met iemand een avond te werken.
Zie bv ook de Thread over timelab in GENT in October, daar is veel te zien en leren!!
Finally, een eerste implementatie van de led.cpp zou er als volgt uit kunnen zien
#include "LED.h"
LED::LED(uint8_t pin)
{
_pin = pin;
pinMode(_pin, OUTPUT);
_state = digitalRead(_pin);
}
void LED::on()
{
_state = HIGH;
digitalWrite(_pin, _state);
}
void LED::off()
{
_state = LOW;
digitalWrite(_pin, _state);
}
void LED::invert()
{
_state = !_state; // invert state
digitalWrite(_pin, _state);
}
uint8_t getPin()
{
return _pin;
}
uint8_t LED::getState()
{
return _state;
}
De led.h bevatte trouwens 2 fouten, de return types van getPin en getState() moeten uint8_t zijn,
NB void is een "waardeloos" type
ja ik heb op verschillende fora al oproep gedaan ,of er mensen zijn die ook net begonnen zijn.
maar nergens een reactie.
jammer.
maar weet je wat het is??
dat arduino en rasp berry pi enzo ,vind ik zo leuk he.
maar zelf iets programmeren is te moeilijk voor me.
schema's na bouwen zoals met de ic 555 ,dat red ik prima,en blij als een kind ,als het werkend is.
Ik zou zeggen doe nogmaals een oproep hier.
En waarom zouden het geen ervaren mensen mogen zijn?
Heb vroeger een tijd bij de HCC gezeten en die hadden heel interessante bijeenkomsten!
ja HCC ben ik diverse keren geweest.
die tijd had ik uit het tijdschrift radio bulletin ,de cosmicos gebouwd
en op de HCC beurs was daar een stand voor.
dus erg mooi.
http://www.scholzijd.nl/index.php/nl/pa3fhi/projecten/22-micro-computer-cosmicos
dat was de cosmicos ,alles 0 en 1 en invoeren,inmiddels ben ik dat vergeten.
De HCC beurs in Utrecht is lang niet alles wat HCC doet (en ook allang niet meer wat het ooit geweest is).
Ze hebben in elke stad wel een afdeling, die weer is onderverdeeld in afdelingen die zich op bepaalde gebieden specialiseren.
Die RB computer is er daar 1 van, maar er zijn heel veel van die afdelingen.
Ik raad je aan de RPi nog even te laten liggen en eerst nog een beetje met de Arduino aan de gang te gaan.
Ik denk niet dat het programmeren te moeilijk voor je zal zijn, maar je moet het wel stapje voor stapje doen, en goed bijhouden wat je allemaal gedaan hebt.
Op die manier leer je er ook van.
Verder kun je een library zien als een black box; je hoeft niet te weten hoe ie precies werkt om m te kunnen gebruiken.
De truuk is natuurlijk iemand te vinden die ook met die colorduino bezig is, of is geweest.
Alleen zie ik dat het dan om veel mogelijke varianten gaat qua hardware, wellicht is het raadzaam te vertellen wat jij verder allemaal hebt of wil gebruiken.