Teet
hoeba hoeba
Hoi mensen,
Ik ben (nog) niet zo'n electronica held maar ben een lampje in elkaar aan het zetten en wil kijken of het te doen is om de 24 LED's die het lampje telt, een paar knipper-programma's te kunnen laten aannemen.
Heb een aantal sites bekeken (conrad, microchip, en nog een paar) en begin door de bomen toch het bos langzaam te zien maar waarschijnlijk zit hier heel wat logische kennis die mij kan vertellen of ik op de goeie weg ben.
Wat is een makkelijke programmeertaal / computerprogramma'tje voor deze mijns inziens eenvoudige toepassing?
Moet ik hiervoor een PICSTART PLUS set a 166 euro bij Microchip kopen of kan het goedkoper? Of past bij dat super eenvoudige grafische programma'tje beter een andere set?
Kan ik daarmee (ook) de juiste chip (bijv. eprom met zo'n 20 pootjes) programmeren?
Als iemand mij enigszins verder kan helpen, graag!
Ik lees op deze site dat het inderdaad goedkoper kan. Alleen ik ga wel voor de snelle optie dat het geheel al in elkaar zit. Makkelijke (grafische) software is voor mij belangrijker dan de prijs.
Er is wat programmers betreft veel mogelijk. Van no-budget tot prijzig. uiteraard hebben die dingen ook de zg. prijs-prestatie verhouding. het is dus maar net hoe handig je bent en hoeveel tijd je erin kan steken.
Verder is het moelijk om je een advies te geven over welke uC je zou moeten nemen. Persoonlijk ben ik nogal gecharmeerd van de AVRs van Atmel, maar er lopen hier ook zat (misschien wel meer) mensen rond die zweren bij de PICs van MicroChip. Basic stamp kom je ook nog wel eens tegen.
Naar mijn idee is het handigste voor jou om eens te kijken welke kennis in jouw omgeving beschikbaar is. Als je eenmaal een paar uC (in assembly) geprogrammeerd hebt, is overstappen naar wat anders niet zo spannend meer.
Neem vooral ook de PICAXE processoren in overweging (PICs met BASIC interpreter en loader, vooral zeer geschikt voor mensen die zich willen concenrteren op het bouwen van systemeb. Geen dure programmer nodig. Zie
http://www.circuitsonline.net/forum/view/27155
De fabrikant (www.picaxe.co.uk) levert naast bouwpaketten ook complete modules
Groet,
Jurjen
Teet
hoeba hoeba
Op 24 november 2005 16:10:24 schreef kranenborg:
Neem vooral ook de PICAXE processoren in overweging (PICs met BASIC interpreter en loader, vooral zeer geschikt voor mensen die zich willen concenrteren op het bouwen van systemeb. Geen dure programmer nodig. ZieGroet,
Jurjen
Cool. Beiden dank!
Die PICAXE (v.a. 13 pond voor de hele set zag ik op de site) klinkt goed. Moet je normaal dus meer code in een chip stoppen? (ik bedoel: de picaxe bevat al wat voorgeprogrammeerde taal)
En is dat moeilijk? (zelf die basistaal toevoegen nog voor je ook maar één lampje hebt aan of uit gezet)
Of gaat het net als HTML door knippen en plakken? En zijn er grafische programma's (zoals bij HTML) voor die dat knip en plakwerk voor je doen?
Groet,
Titus
Nou... HTML is niet te vergelijken met uC. Laten we het zo zeggen... HTML is een blokkendoos voor een peuter waar een uC de meest geavanceerde meccano doos is. Zoiets dus...
Teet
hoeba hoeba
Op 24 november 2005 16:28:58 schreef Marco69:
Nou... HTML is niet te vergelijken met uC. Laten we het zo zeggen... HTML is een blokkendoos voor een peuter waar een uC de meest geavanceerde meccano doos is. Zoiets dus...
Dat neem ik graag van je aan - hoewel ik HTML al knap lastig vind. Er wordt dus niet geknipt en geplakt? Is het echt zoals het (oude) basic ging? (grijs verleden wat mee gedaan) Dus met regels die doorlopen worden en loops?
En met uC kan ik dus meteen alles aansturen wat ik maar kan bedenken?
Bij die PICAXE dingen hebben ze ook een leuk programmeerpakket erbij waarmee je met flowchartjes kunt proggen, dus met knippen en plakken en slepen enzo. En die basic is ook super makkelijk.
Kijk maar eens op die site van ze. Een PICAXE is in principe een PIC waar ze in de flash een basic-interpreter hebben gebouwd, en een serieel-module die basic-programmatjes leest in in de EEPROM zet, en die dan kan uitvoeren. Het is speciaal bedoeld voor beginners en scholieren enzo.
Kijk maar eens op de site van ze, moet makkelijk te vinden zijn. Daar staan hele programmeer voorbeelden en alles.
Overigens kun je met een uC niet meteen alles aansturen wat je kunt bedenken. Als het teveel stroom vraagt, of teveel spanning, dan moet je er nog wat onderdeeltjes bij stoppen die dat wel aankunnen. Er zijn kant-en-klare picaxe-bordjes waar die onderdelen ook al bij zitten, daar kun je dan motortjes en 12V-lampjes en dergelijke mee aansturen.
[Bericht gewijzigd door reynaert op ]
chipje
Why do people spend money they don't have, to buy things they don't need, to impress people they don't like...? .-.-.-.-. Wie zich gelukkig voelt met het geluk van anderen, bezit een rijkdom zonder grenzen.
Dus toch weer een blokkendoos 
Reynaert, je hebt er blijkbaar meer ervaring mee... Een interpreter... Performt dat nog een beetje? Software PWM in assembly lukt doorgaans nog wel (neem aan dat die LEDs ook gedimd enzo moeten kunnen worden). Maar in interpreted met sleur-en-pleur in elkaar gefrut basic???
Teet
hoeba hoeba
Ja ik wil ze wel dimmen, dus een bepaalde frequentie kunnen laten knipperen en dan de uit-tijd steeds iets langer zeg maar.
Zou dat met dit PICAXE setje niet gaan? Neem aan dat een frequentie van 100 Hz genoeg is om het menselijk oog voor de gek te houden?
De PICs van Picaxe-08M, 18X 28X en 40X hebben een (soms meer) 10-bit pwm-modules die in BASIC met het commando PWMOUT gezet kunnen worden, met freq. bereik grofweg tussen 1KHz (prescaler) tot meer dan 100KHz. De modules werken in background, dwz. het programma kan gewoon verdergaan terwijl de PWM module draait. Kijk even goed naar de documentatie om te zien welke chip het meest geschikt is. De X versies ondersteuenen ook i2c vanuit BASIC, dus kun je zelf geschikte PWM modules aanhangen als je wilt.
Groet,
Jurjen
Eh.. ja.. Maar dat is maar 1 channel. Misschien wel 2. Die hardware PWM is heel mooi, maar doorgaans toch niet echt bruikbaar voor meerdere uitgangen...
Teet
hoeba hoeba
Ik las elders ook dat met mijn geplande 24 LEDs ik misschien wel eens stroomproblemen krijg als ik alles tegelijk door een zo'n chip wil jagen...
En bedoel je met 1 channel het zelfde of gaat dat weer over iets anders, nl de snelheid waar het daarvoor over ging?
[Bericht gewijzigd door Teet op ]
Uit de probleembeschrijving heb ik opgemaakt dat de lamp uit 24 identieke leds bestaat, dus nam ik aan dat de dimmer-functie voor alle leds gelijktijdig zou moeten werken. In dat geval is 1 PWM stuursignaal (i.e. "channel" ) voldoende.
Inderdaad zijn voor 24 leds drivers nodig (onafhankelijk van welke controller je gebruikt), aangezien het geschatte stroomverbruik per led ca. 20ma maximaal is, en je dus op 24 * 20 ma is 480mA uitkomt, dus een halve Ampere!
Ik heb geen uitgebreide ervaring met drivers, maar er zullen er ongetwijfeld vele op de markt zijn. Kijk dan misscshien naar drivers die een aparte "enable" pin hebben, daarop kan je dan het PWM signaal aansluiten.
Als je alleen AAN of UIT wilt doen (en gedimd daartussenin) of knipperen is het PWM signaal alleen voldoende, want (tenminste op de genoemde PICAXE versies) de duty cycle (i.e. de periode "aan" / periode "aan" + "uit" ) kan varieren tussen 0 en 100%.
Als je de helderheid van de leds elk apart wil kunnen regelen wordt de zaak wat ingewikkelder, en is PWM niet de voor de hand liggende methode. Echter ook dan zijn er weer goede oplossingen via i2c beschikbaar; een picaxe-18X en een MAX6956 (heeft LED brighness control) zijn dan denk ik een perfecte combinatie
Er zijn dus vele mogelijkheden beschikbaar
Jurjen
Op 25 november 2005 10:10:27 schreef kranenborg:
Uit de probleembeschrijving heb ik opgemaakt dat de lamp uit 24 identieke leds bestaat, dus nam ik aan dat de dimmer-functie voor alle leds gelijktijdig zou moeten werken. In dat geval is 1 PWM stuursignaal (i.e. "channel" ) voldoende.Inderdaad zijn voor 24 leds drivers nodig (onafhankelijk van welke controller je gebruikt), aangezien het geschatte stroomverbruik per led ca. 20ma maximaal is, en je dus op 24 * 20 ma is 480mA uitkomt, dus een halve Ampere!
Je zet dan dus wat bij elkaar horende LEDs in serie. Zo houd je je stroom en daarmee je dissipatie laag.
Ik heb geen uitgebreide ervaring met drivers, maar er zullen er ongetwijfeld vele op de markt zijn. Kijk dan misscshien naar drivers die een aparte "enable" pin hebben, daarop kan je dan het PWM signaal aansluiten.
Zodat je alles tegelijk 'dimt' Spannend lichteffect
Als je alleen AAN of UIT wilt doen (en gedimd daartussenin) of knipperen is het PWM signaal alleen voldoende, want (tenminste op de genoemde PICAXE versies) de duty cycle (i.e. de periode "aan" / periode "aan" + "uit" ) kan varieren tussen 0 en 100%.
Als je de helderheid van de leds elk apart wil kunnen regelen wordt de zaak wat ingewikkelder, en is PWM niet de voor de hand liggende methode.
Stierepoep. 16 channels software PWM is a piece-of-cake in assembly.
Echter ook dan zijn er weer goede oplossingen via i2c beschikbaar; een picaxe-18X en een MAX6956 (heeft LED brighness control) zijn dan denk ik een perfecte combinatie
Er zijn dus vele mogelijkheden beschikbaar
Jurjen
Ik begrijp dat je erg gecharmeerd bent van die basic dingen. Voor de OP is het wellicht nog een redelijke keus om mee te beginnen. Voor dit project is het dat absoluut niet. Weet niet waar de prioriteit van de OP ligt.
Teet
hoeba hoeba
Uit de probleembeschrijving heb ik opgemaakt dat de lamp uit 24 identieke leds bestaat, dus nam ik aan dat de dimmer-functie voor alle leds gelijktijdig zou moeten werken. In dat geval is 1 PWM stuursignaal (i.e. "channel" ) voldoende.
Ja, TE GEK!
Inderdaad zijn voor 24 leds drivers nodig (onafhankelijk van welke controller
Eh... drivers? help.
je gebruikt), aangezien het geschatte stroomverbruik per led ca. 20ma maximaal is, en je dus op 24 * 20 ma is 480mA uitkomt, dus een halve Ampere!
Is dat te veel voor de chip of juist nog wel OK? [hoop, hoop]
Ik heb geen uitgebreide ervaring met drivers, maar er zullen er ongetwijfeld vele op de markt zijn. Kijk dan misscshien naar drivers die een aparte "enable" pin hebben, daarop kan je dan het PWM signaal aansluiten.
Is een driver hier dus iets fysieks, nog een chipje? Dit vanwege het feit dat een halve ampere niet door de hoofdchip kan? (sorry voor al deze vragen, ik luister als een spons!)
Als je alleen AAN of UIT wilt doen (en gedimd daartussenin) of knipperen is het PWM signaal alleen voldoende, want (tenminste op de genoemde PICAXE versies) de duty cycle (i.e. de periode "aan" / periode "aan" + "uit" ) kan varieren tussen 0 en 100%.
Goed! Ik dacht alle leds samen gedimd zouden moeten kunnen worden. Het afzonderlijk knipperen (disco modus zeg maar) zou daar los van staan. Dat zou dus kunnen worden opgelost door hetzij het dimmen VOOR de hoofdchip te laten gebeuren door een aparte chip, hetzij dat de chip dit ook bevat, maar VOOR de programmakeuze plaatst zodat no-matter-what-programma, de LEDS in de gewenste dimstand staan.
Groet,
Titus
Heb zo'n PICAXE thuis liggen. Wilde softwarematige PWM doen en tegelijkertijd ingang pollen, maar daarvoor is de interpreter toch te langzaam. Verder liep ik tegen het probleem aan dat je maar 16 gosub statements kon gebruiken, alhoewel dat bij de nieuwere types is uitgebreid tot 256.
Ben nu maar met gewone PICs begonnen.
Inderdaad ben ik een fan van de PICAXEs juist omdat ik geen assembly wil ( ik ben projectjes aan het doen met mijn 11-jarige zoon, hij was 10 toen we zijn begonnen, en krijgt nu binnen 10-15 minuten een werkend systeem voor elkaar). In dat geval is hun prijs/prestatie-verhouding onovertroffen, vooral omdat je kan werken zonder dat een programmer of een BASIC licentie (die allebei zo hun prijskaartje hebben, toch elk minstens 100 Euro). Niet voor niets zijn ze voor de educatieve markt gecreeerd. Ik ben het echter ook met marco69 eens dat als assembly language geen bezwaar is, er soms andere en efficientere oplossingen mogelijk zijn.
Je moet dus kijken naar wat je wil , zowel nu als met name in de toekomst. Nu de "hobbel" van assembly nemen kan dan een zeer nuttige investering blijken, en is noodzakelijk voor toekomstige professie. Blijft echter dat de ontwikkeltijd voor de PICAXEs 1) extreem kort is, 2) de prijs extreem laag, 3) zeer recente PICs worden gebruikt en hun modules door picaxe-basic worden ondersteund, en dus snel resultaat kan worden behaald, ook voor complexere systemen, zoals bijvoorbeeld
http://home.btconnect.com/PicAxe_Projects/Home.htm
Naar mijn mening is - voor met name veel 'hobby' projecten voor beginners waarbij het bouwen van systemen/apparaten vooropstaat - het gebruik van assembly pure 'overkill' en verkwisting van veel tijd en geld, en veel postings op dit forum zijn daar voorbeelden van.
PS: Als je de PICAXEs in een gewone PIC programmer gooit, tover je ze om tot een gewone PIC (de BASIC interpreter en program loader worden dan gewist), en kun je daarna gewoon verder in assemby of andere taal. Dus geen weggegooid geld
PS2: Neem inderdaad de nieuwere (08M, 18X, 28X, 40X), want deze ondersteunen de diverse functionele modules (PWM, ADC , I2C, etc. etc.) van de recente PICs.
Groet,Jurjen
Teet
hoeba hoeba
PS2: Neem inderdaad de nieuwere (08M, 18X, 28X, 40X), want deze ondersteunen de diverse functionele modules (PWM, ADC , I2C, etc. etc.) van de recente PICs.
Darn. Toch te zuinig aan gedaan. Heb de standaard 18 genomen. Vond ze overigens niet heel goedkoop (2 tot 3 pond per stuk) maar dat is nog altijd een prima prijs.
Eh.. Nou... Voor de kosten / verkwisting en overkill ben ik het niet met je eens. Mijn AVR programmer is een nabouw ding. Kost vast wel 2 euro. Ofja.. Dan komt er nog een kabel bij. GNU C voor AVR is gratis. Iets in assembly in elkaar zetten gaat echt niet trager dan in basic, alhoewel je er gelijk in hebt dat de 'inleertijd' iets langer is. Voor een basic interpreter heb je een 'dikkere' uC nodig, dus als er ergens sprake is van overkill dan is het daar. Een uC kost bijna niets meer, dus financieel merk je er niet zoveel van.
Basic is naar mijn mening een leuke leer-taal maar ten ene male ongeschikt voor serieus gebruik (heb er nog jaaren last van gehad dat ik er zelf in begonnen ben
). Zeker voor uCs vind ik assembly het meest passend, zeker daar de C variant grotendeels assembly met wat andere namen / instructies is.
Je ziet hoe keihard je nu al klem loopt met iets simpels als een paar kanaaltjes PWM; dat geldt voor alles wat 'snel' moet zijn.
Afijn... Voor de OP schiet dit dus niet op. Ik blijf bij mijn eerste advies: kijk eens wat er om je heen te krijgen is aan kennis. Zeker als je nieuw bent in programmeren en in electronica (niets ten nadele, maar die indruk wek je), is het wellicht wat heftig om met zoiets te beginnen.
Wellicht een idee om met zo'n ding als kranenborg bedoelt te beginnen, daar eens wat ervaring mee op te doen (al doe je dan maar 1 channel PWM en schakel je de rest) en zo je kennis / ervaring uit te bouwen. Het zou jammer zijn als je door teveel hooi op je vork nemen je interesse in electronica zou verliezen.
[edit]@Teet: 2 tot 3 pond vind ik niet zo'n verkeerde prijs als je ziet wat je meer krijgt dan alleen een uC. Weet niet of je ervaring hebt met online bestellen; vaak ga je bij kleine orders nat op order / verzendkosten.
Teet
hoeba hoeba
Valt mee in verhouding: Was alles bij elkaar 40 pond kwijt, daarvan slechts 6 verzendkosten.
[Edit] En ja, ik ben ook echt een beginneling in IC land! Feit.
Erge zin om met de set te beginnen. Ik zal hier wel even de ervaringen melden! (en er borrelen vast ook nog vragen op)
Groet,
Titus
[Bericht gewijzigd door Teet op ]
Hi
@marco69 Het 'leertraject' dat jij voorstelt is inderdaad precies wat ik bedoel. Op deze manier kun je ook met belangrijke protocollen zoals i2c kennismaken en chips toevoegen en laten communiceren, later kun je dan de protocollen implementeren in assembly . Bovendien is een Dallas 1-wire protocol verre van eenvoudig in assembly ...
@teet: bel ze meteen even op, waarschijnlijk kan je de bestelling nog aanpassen (18 -> 18X ), want de laatste heeft echt veel meer mogelijkheden (vooral i2c maakt de mogelijkheden bijna onbeperkt).
PS: kijk vooral op het picaxe forum (link op http://www.rev-ed.co.uk/picaxe/techsupport.htm ; heel veel informatie, zowel voor beginners als voor gevorderden, en veel hulp ..
Jurjen
[Bericht gewijzigd door kranenborg op ]