Arduino lookup table

Arduino specifieke Software
Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Arduino lookup table

Berichtdoor Gij Kieken » 27 Feb 2020, 13:33

Beste forum leden,
Wie heeft er een link naar of een titel van een boek voor beginners waar i.v.m. lookup tabel
- wat is het
- het aanmaken
- de werking
- het gebruik
- voorbeelden
uitgelegd wordt.
Op het net vindt je natuurlijk voorbeelden maar al heel vlug wordt er met structs en pointers gegoocheld
en zie je het bos door de bomen niet meer.
Een verklarend woordje uitleg erbij vindt je dan terug niet.

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Arduino lookup table

Berichtdoor Koepel » 27 Feb 2020, 20:30

Weet je nog dat er vroeger telefoonboeken waren, van die papieren dingen met bladzijden :lol:
Als je een telefoonnummer wilde weten dan ging je dat opzoeken. Dat is een lookup table.

Een lookup table is een algemene term, het is niet specifiek iets met pointers en structs (maar dat is het vaak wel).
Het een "opzoek lijst", een array met gegevens.
In de code kan vervolgens binnen die tabel gezocht worden.
Noem het een "tabel", een "array" of een "lijst", het is allemaal hetzelfde.

Bijvoorbeeld een temperatuursensor, die gemeten is bij -10, 25, 80 en 100 graden, en toen is de weerstand gemeten.
Dan krijg je bijvoorbeeld dit:

cpp code
const int temperatuur_tabel[] = 
{
-10, 12000, // temperatuur, weerstand
25, 10000,
80, 4000,
100, 3000,
};


Dan kun je in de code gaan opzoeken tussen welke waarden de temperatuur zit en dan gaan interpoleren.

Het bovenstaande kan beter door de temperatuur en weerstand samen te nemen (dat zijn twee integers). Dan krijg je dit:
cpp code
const int temperatuur_tabel[][2] = 
{
{ -10, 12000 }, // temperatuur, weerstand
{ 25, 10000 },
{ 80, 4000 },
{ 100, 3000 },
};


Maar stel dat je dit wilt:
cpp code
const temperature_STRUCT temperatureTable[] = 
{
{ -10, 12000, "Koud", 3.234 }, // temperatuur, weerstand, naam, nog iets
{ 25, 10000, "Kamertemperatuur", 1.53 },
{ 80, 4000, "Warm", 9.343 },
{ 100, 3000, "Koken", 4.342 },
};


Dat kan alleen als "temperatureTable" een struct is. Een struct is een combinatie van meerdere variabelen.
Hierboven moet natuurlijk nog wel 'temperature_STRUCT' gedefinieerd worden.

Klinkt het logisch tot nu toe ?
Meer is het niet.

Je zou bijvoorbeeld de barometerwaarde van een sensor kunnen koppelen aan de oudewetse namen: "Bestendig", "Veranderlijk", enzovoorts.

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: Arduino lookup table

Berichtdoor Gij Kieken » 27 Feb 2020, 22:57

Bedankt Koepel ,dit wordt duidelijk.
Alleen vind ik het jammer geen dergelijk duidelijk antwoord te vinden op het net.
Ofwel zocht ik verkeerd of nog niet genoeg? in alle geval bedankt.

Berichten: 4064
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Arduino lookup table

Berichtdoor shooter » 28 Feb 2020, 11:04

@Koepel
Je bent weer heel erg goed in het uitleggen!!
paul deelen
shooter@home.nl

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: Arduino lookup table

Berichtdoor Gij Kieken » 28 Feb 2020, 12:58

Ik stel soms van die op het eerste zicht eenvoudige vragen ,maar waar achteraf blijkt dat er op het net niet veel duidelijks te vinden is.
Tweede gedachte is ,als het inderdaad blijkt eenvoudig te zijn waarom antwoorden er dan niet meer forum leden?
Hier op het forum zijn er zo van de die vaste waarden die de kunst van converseren bezitten ( Koepel,Nico, jij zelf om er maar een paar te noemen)
vooropgesteld dat je inderdaad eerst de moeite doet om zelf iets op te zoeken.
Waarvoor dank dus!

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino lookup table

Berichtdoor nicoverduin » 28 Feb 2020, 21:17

Koepel was me voor en ik vind het onzinnig om een zelfde verhaal neer te zetten. Overigens kan het geen kwaad om je eens te verdiepen in pointers en structs. Dus ik snap wel dat er op het web voornamelijk gerefereerd wordt naar pointers en structs. Je kan het hun niet kwalijk nemen dat ze er vanuit gaan dat je de basiskennis beheerst. En dan nog te bedenken dat we werken met een C++ variant uit 2011. Sinds die tijd is C++ 2014 en 2017 uitgekomen en de 2020 versie zal ook niet lang op zich laten wachten (ik dacht van de zomer). Of je er wat aan hebt op de Atmel lijn processoren weet ik niet, maar op de ARM (DUE) gebruiken wij zelf hier op school al de 2017 versie en daar zitten een heleboel leuke dingen bij om code nog efficiënter te gebruiken. Maar wij gebruiken dan ook een Arduino IDE omdat die zwaar onder de maat is als je studenten echte Object Oriëntatie wil leren.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Arduino lookup table

Berichtdoor Koepel » 29 Feb 2020, 10:09

@nicoverduin: Maar wij gebruiken dan ook *geen* Arduino IDE ?

Er is een Arduino IDE Pro: https://github.com/arduino/arduino-pro-ide/releases/tag/v0.0.5-alpha.preview
Die heb ik geprobeerd. Ze hebben naar andere IDE's gekeken. Misschien hebben ze een bestaande IDE als basis, maar dat weet ik niet zeker. Helaas loopt het bij mij steeds vast. Het is me gelukt om iets te compileren voor een Arduino Uno, maar meer lukt niet. Ik probeerde versie 0.05.

Het programma kan allerlei verschillende ontwikkelomgevingen gebruiken. Dus ook andere talen is mogelijk. De IDE kan zichzelf voordoen als de gewone Arduino IDE, zonder de extra's.

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino lookup table

Berichtdoor nicoverduin » 29 Feb 2020, 11:28

Koepel schreef:@nicoverduin: Maar wij gebruiken dan ook *geen* Arduino IDE ?

Er is een Arduino IDE Pro: https://github.com/arduino/arduino-pro-ide/releases/tag/v0.0.5-alpha.preview
Die heb ik geprobeerd. Ze hebben naar andere IDE's gekeken. Misschien hebben ze een bestaande IDE als basis, maar dat weet ik niet zeker. Helaas loopt het bij mij steeds vast. Het is me gelukt om iets te compileren voor een Arduino Uno, maar meer lukt niet. Ik probeerde versie 0.05.

Het programma kan allerlei verschillende ontwikkelomgevingen gebruiken. Dus ook andere talen is mogelijk. De IDE kan zichzelf voordoen als de gewone Arduino IDE, zonder de extra's.
Ook sloeber is gewoon de C++ versie 11.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: Arduino lookup table

Berichtdoor Gij Kieken » 29 Feb 2020, 21:19

@Nico ,ik heb heb me voordien al wat ingelezen i.v.m. pointers, structs en classes.
Ik bewonder de manier van je soms gevatte opmerkingen die hier en daar nodig zijn zowel hier als op een ander forum maar ik weet ze te smaken.
Mijn vragen zijn meestal retorisch, in die zin dat een bevestigend antwoord veelal voldoende is omdat ik geen een duidend antwoord vind op het net.
Koepel doet echt wel de moeite om het vliegwiel op gang te houden.
Shooter geeft meestal direct praktische tips.
Zuid geeft ook treffende antwoorden
en zo zijn er nog een paar enkelingen,,,

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 17 gasten