Bedroom Control Panel ---> PICS en FILMS

Pagina: 1
Acties:
  • 1.973 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Een tijdje terug ben ik verhuist naar een ander (studenten) appartementje. Dit keer heb ik beschikking over een aparte slaapkamer. Genoeg plaats dus om ook hier wat leuke dingen in te bouwen. Ik ben dus meteen begonnen met wat schetsen en tekeningen. Het heeft voornamelijk allemaal te maken met de verlichting van de slaapkamer (en voor wie mij kent de bediening ervan :))

Wat ik heb gemaakt is een paneeltje dat op de houten ombouw van het bed zit. Hierop bevinden zich 3 knopjes en een blauw 2x16 LCD schermpje. Doormiddel van een simpel menu kun je diverse items selecteren.

De volgende “dingen” kun je ermee besturen:

- Hoofdverlichting (100W)
- Staande lamp verlichting (300W dimbaar)
- Staande lamp leeslampje (40W)
- Halogeenspots op rail (3 stuks 20W dimbaar via faseaansnijding)
- Elektronische kaarsjes (2 stuks)
- Groene LED’s (6 stuks dimbaar via PWM)
- Rode TL buis
- Luxaflex (open/dicht)
- Sterrenhemel (nog niet klaar)

Verder zitten er nog diverse functies op zoals: timers, wekker, random, extra opties voor eventuele latere uitbreidingen. Als ik ga slapen kan ik dus precies instellen hoe lang ik nog plezier wil hebben van bijvoorbeeld de kaarsjes voordat ze automatisch uit gaan. Ook kun je instellen hoeveel bepaalde lampen gedimd moeten blijven. De blauwe backlight van het LCD gaat automatisch uit als er 4 seconden niet op een toets wordt gedrukt.

De tekening waarop ik alles gebaseerd heb:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/hoofdschema%20(Medium).jpg

De 2 schema’s voor de faseaansnijding:
http://members.home.nl/at...ase_detect%20(Medium).jpg
http://members.home.nl/at...e_aanstuur%20(Medium).jpg
(deze wordt gerealiseerd doormiddel van een PIC16F628 microcontroller).

Foto van de print: (al achter de bedombouw gemonteerd)
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/print_achter_bed%20(Medium).jpg

Foto van de voeding: (ook achter het bed)
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/voeding%20(Medium).jpg

De koeling voor de faseaansnijding v/d halogeenspots:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/BT137%20koeling%20(Medium).jpg

De groene LED's in de vloer verwerkt:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/led_vloer%20(Medium).jpg
Doormiddel van 5mm LEDhouders zitten de LED's in het parket.

Het “Bedroom Control Panel” zelf:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/control_panel1%20(Medium).jpg


Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/control_panel2%20(Medium).jpg
Over 3 minuten gaan alle (dimmend) uit…


Enkele foto’s van de kamer in z’n geheel:

Bed:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/bed1%20(Medium).jpg
In het midden kun je het paneeltje zien zitten. De rest heb ik zo goed mogelijk proberen weg te werken.


Bed:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/bed2%20(Medium).jpg
De backlight van het LCD schermpje en de rode TL achter de verwarming zijn goed te zien.


Kamer:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/hoek3%20(Medium).jpg
De groene LED’s in de vloer en de dimbare halogeenspots zijn hierop te zien.


Kamer:
Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/leds%20(Medium).jpg
Nog eens de groene vloer LED's en de rode verwarming verlichting.


Nog 2 totaalshots van de slaapkamer:


Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/hoek1%20(Medium).jpg


Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/hoek2%20(Medium).jpg
Jahaaa die kleine k*t TV wordt binnenkort vervangen door een LCD HDTV (zodat ik eindelijk kan Xbox360'en vanuit bed) >:)


Het open en dicht maken van de luxaflex is nog niet helemaal geregeld. De aansturing van het geheel is wel al klaar, alleen de aandrijfmotor zit nog niet op z'n plek. Ik ga hiervoor een goedkope accu-schroevendraaier gebruiken:

Afbeeldingslocatie: http://members.home.nl/atmoz2/Bedroom%20Control%20Panel/accu_schroevendraaier_luxaflex_open_dicht%20(Medium).jpg
Deze heeft een 10mm dopje erop zitten wat precies op de bedieningstang van de luxaflex past 8)


En last but not least: 3 filmpjes van de hele zooi:

3 halogeenspots dimmen uit, verwarming verlichting uit en vloer LED's dimmen uit: KLIK
Control Panel bediening: KLIK
Luxaflex open/dicht doormiddel van accu-schroevendraaier: KLIK

What do we think of it?

Acties:
  • 0 Henk 'm!

Verwijderd

Geniaal! ik heb afgelopen week een ander idee van jou overgenomen, namelijk je voorzetwand.
nu wil ik er echter nog een groene tl buis achter hebben. maar waar o waar koop je dat?! :?

Acties:
  • 0 Henk 'm!

  • kluyze
  • Registratie: Augustus 2004
  • Niet online
Aaah de eerste schema's in klad. :p Hoe het allemaal begon. Zo heb ik hier een stapeltje van 10-20 bladen liggen van mijn huidig projectje.

Mooi, mooi, mooi. Eindelijk nog eens een echt elektronica projectje hier GOT-EL.

Goed, wat denk ik ervan:

Ten eerste een vraagje over de backlight van je control panel, gaat die altijd aan? Of zit er ook een lichtsensor bij? Zou anders misschien een leuk idee zijn. Dat die overdag niet of minder fel oplicht.

Misschien ook een leuke functie om een aantal lichten op het ritme van de muziek te laten flikkeren.

Over die luxaflex, die motor die je wilt gebruiken klinkt nogal luid, misschien een andere motor of deze via pwm of zo wat langzamer te laten draaien. Langzamer geeft ook betere controle bij de eindstand van de luxaflex.

Voor de rest niet zo direct een opmerking, alleen nog de vraag of dat control panel niet serieus in de weg zit als je vriendin blijft ontbijten. :p
Natuurlijk niet zo zeer een vraag als in dat dat mijn zaken zijn maar een vaststelling dat dat panel nogal eens irritant kan zijn en vervelend in de weg kan zitten, bij welke handelingen dan ook. :p

En ja de gewoonlijke dingen zoals mooi gedaan, fantastisch, geweldig enz...

[ Voor 9% gewijzigd door kluyze op 26-09-2006 22:22 ]


Acties:
  • 0 Henk 'm!

  • _ferry_
  • Registratie: Januari 2002
  • Niet online

_ferry_

Moderator Tweaking

Nipple Tweaker

Hehe, cool dit :D
Ik heb ook nog steeds het plan om hetgeen wat ik nu met een klik-aan-klik-uit afstandsbediening doe via een stel knopjes/lcd/led's te doen, want de afstandsbediening ligt toch altijd op dezelfde plek. Maar het komt er niet van. Zo heb ik al de code gemaakt om met een paar knopjes mijn sterrenhemel in een x aantal minuten uit te laten gaan enzo. Niet met hele uigebreide programma's maar het werkt.
Verder wilde ik er nog een klokje op aansluiten, en daarop een alarm instellen, IPV piepen geeft ie dan een pulsje aan de PIC waarmee een lamp langzaam aan fade. Net als de zon.

Allemaal ideeén.... Maar jij bouwt het ook nog eens, erg leuk!

Acties:
  • 0 Henk 'm!

Verwijderd

hey, dat dekbed heb ik ook, koel!

Acties:
  • 0 Henk 'm!

  • madwizard
  • Registratie: Juli 2002
  • Laatst online: 26-10-2024

madwizard

Missionary to the word of ska

Mooi project, leuk om te zien dat het ook al werkt en ingebouwd is, dat is toch vaak een stap die mensen jaren laten liggen :). De luxaflex oplossing is ook goed bedacht, al klinkt ie wel agressief ;)

www.madwizard.org


Verwijderd

Erg stoer project, heb je voor mij toevallig de kleurcode van die groene verf die op je muur zit?

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Verwijderd schreef op dinsdag 26 september 2006 @ 21:57:
Geniaal! ik heb afgelopen week een ander idee van jou overgenomen, namelijk je voorzetwand.
nu wil ik er echter nog een groene tl buis achter hebben. maar waar o waar koop je dat?! :?
:) Haha. Stiekem ideeën van mij pikken he ;)
Nee, effe zonder flauwekul: Ik heb die (rode) TL's van de UM (Universiteit Maastricht). Gratis gekregen dus. Deze week heb ik nog gehoord van iemand dat blacklight TL's heel erg duur zijn, maar ik kan me niet voorstellen dat rode (of groene/blauwe/etc) TL's meer kosten dan 10 euro. Waarschijnlijk kun je deze kopen bij iedere doe-het-zelf-zaak.
kluyze schreef op dinsdag 26 september 2006 @ 22:20:
Aaah de eerste schema's in klad. :p Hoe het allemaal begon. Zo heb ik hier een stapeltje van 10-20 bladen liggen van mijn huidig projectje.

Mooi, mooi, mooi. Eindelijk nog eens een echt elektronica projectje hier GOT-EL.

Goed, wat denk ik ervan:

Ten eerste een vraagje over de backlight van je control panel, gaat die altijd aan? Of zit er ook een lichtsensor bij? Zou anders misschien een leuk idee zijn. Dat die overdag niet of minder fel oplicht.

Misschien ook een leuke functie om een aantal lichten op het ritme van de muziek te laten flikkeren.

Over die luxaflex, die motor die je wilt gebruiken klinkt nogal luid, misschien een andere motor of deze via pwm of zo wat langzamer te laten draaien. Langzamer geeft ook betere controle bij de eindstand van de luxaflex.

Voor de rest niet zo direct een opmerking, alleen nog de vraag of dat control panel niet serieus in de weg zit als je vriendin blijft ontbijten. :p
Natuurlijk niet zo zeer een vraag als in dat dat mijn zaken zijn maar een vaststelling dat dat panel nogal eens irritant kan zijn en vervelend in de weg kan zitten, bij welke handelingen dan ook. :p

En ja de gewoonlijke dingen zoals mooi gedaan, fantastisch, geweldig enz...
Blacklight gaat alleen aan als je aan 1 van de 3 toetsen komt. Geen lichtsensor dus. Al zou dat wel mooi zijn. (al was het voor het luxaflex open/dicht mechanisme ;)) Lichten laten flilkkeren etc ga ik al maken in de woonkamer (lees: chillroom in 't weekend). Daarmee ben ik al een tijdje bezig. Wordt echt een super project 8)

Luxaflex moter (met opzet stuk ook vibo te noemen :X ) is idd misschien wat "luid". Maar heb nog geen andere (goedkope) oplossing gevonden.

Control panel zit niet echt in de weg bij de meeste activiteiten.... Tenminste, niet als ze aan het poetsen is.... :D
_ferry_ schreef op dinsdag 26 september 2006 @ 22:21:
Hehe, cool dit :D
Ik heb ook nog steeds het plan om hetgeen wat ik nu met een klik-aan-klik-uit afstandsbediening doe via een stel knopjes/lcd/led's te doen, want de afstandsbediening ligt toch altijd op dezelfde plek. Maar het komt er niet van. Zo heb ik al de code gemaakt om met een paar knopjes mijn sterrenhemel in een x aantal minuten uit te laten gaan enzo. Niet met hele uigebreide programma's maar het werkt.
Verder wilde ik er nog een klokje op aansluiten, en daarop een alarm instellen, IPV piepen geeft ie dan een pulsje aan de PIC waarmee een lamp langzaam aan fade. Net als de zon.

Allemaal ideeén.... Maar jij bouwt het ook nog eens, erg leuk!
Ideeën? Ideeën? Begin me er a.u.b. niet over :| Ik lijk wel gefrustreerd zoals ik hierover begin. Maar dat ben ik ook.... Ik heb ideeën om dingen te maken dat wil je niet weten. Heerlijk om iedere dag weer nieuwe dingen erbij te bedenken en te fantaseren.... Maar helaas komt het er 9/10 keer niet van. Als ik alles had gemaakt wat ik had bedacht of wilde maken, dan...ja dan...pfff Had ik maar tijd en soms geld om dingen te maken wat ik wilde...
madwizard schreef op dinsdag 26 september 2006 @ 23:55:
Mooi project, leuk om te zien dat het ook al werkt en ingebouwd is, dat is toch vaak een stap die mensen jaren laten liggen :). De luxaflex oplossing is ook goed bedacht, al klinkt ie wel agressief ;)
Dat wil ik net zeggen: "dat is toch vaak een stap die mensen jaren laten liggen".
Ik wilde dat ik eens dingen niet zo lang liet liggen. Dan had ik in ieder geval wat meer "rust" in m'n leven (denk ik). Wilde er ook eigenlijk een topic over maken in "SG". Ik ontplof eigenlijk van de ideeën. Overal waar ik kom zie ik nieuwe dingen die ik dan graag wil inplanteren in m'n eigen projecten, maar daar is helaas de tijd en het geld niet voor. Dat is tevens meteen m'n grootste probleem. Dingen die ik wil testen, maken, proberen, bouwen, etc die ik niet kan doen... Beetje gek dat ik hierover begin in dit topic, maar jullie begonnen erover :)

[edit]
Verwijderd schreef op woensdag 27 september 2006 @ 00:41:
[...]


Erg stoer project, heb je voor mij toevallig de kleurcode van die groene verf die op je muur zit?
Zal ik morgen meteen even opzoeken!!

  • Ricvdp
  • Registratie: Juni 2005
  • Laatst online: 11:29
Echt netjes meneer Atmoz! Tsja, het ideeën-syndroom kennen we vast allemaal wel hier in EL, dus ik vind het echt goed dat je dit al zo gerealiseerd hebt, het ziet er heel netjes uit. :)
Maar over de technische kant, hij werkt helemal op een PIC, welke? Ik lees o.a. 16F628 maar dat kan bijna niet de enige zijn (al is het best mogelijk, maar je komt poorten tekort denk ik). En draden, voor je groenen LEDs bijvoorbeeld, heb je die gewoon onder je laminaat dorgetrokken en kom je dan niet in de problemen met verliezen etc.?

Mooi project, keep up the good work.

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Zal ik morgen meteen even opzoeken!!
MUURVERF VOOR BINNEN basis TR(1L)
GAMMA: HISTOR DCK 1080-G30Y
Ricvdp schreef op woensdag 27 september 2006 @ 07:48:
Echt netjes meneer Atmoz! Tsja, het ideeën-syndroom kennen we vast allemaal wel hier in EL, dus ik vind het echt goed dat je dit al zo gerealiseerd hebt, het ziet er heel netjes uit. :)
Maar over de technische kant, hij werkt helemal op een PIC, welke? Ik lees o.a. 16F628 maar dat kan bijna niet de enige zijn (al is het best mogelijk, maar je komt poorten tekort denk ik). En draden, voor je groenen LEDs bijvoorbeeld, heb je die gewoon onder je laminaat dorgetrokken en kom je dan niet in de problemen met verliezen etc.?

Mooi project, keep up the good work.
De "main-controller" is een PIC18F452. Een 40 pins dus. Anders zou ik inderdaad poorten tekort komen ;) Die 16F628 regelt alleen de faseaansnijding. Met de kabels was het makkelijk: toen ik hier kwam wonen (paar maandjes terug) heb ik zelf de laminaat gelegd. Maar natuurlijk eerst tig kabels getrokken (getaped op de grond) van hot naar haar. Ideaal als je later nog wat wilt maken.... In de woonkamer ligt bijvoorbeeld wel een paar honderd meter kabel :)

  • AirX
  • Registratie: Juni 2002
  • Laatst online: 08:35

AirX

Tweak Guru

Ziet er erg cool uit :)

  • bokko!
  • Registratie: Februari 2006
  • Laatst online: 09-02 10:38
Hahaha... Geweldig dit!

Ik hou je in de gaten...

  • boomr
  • Registratie: Oktober 2002
  • Laatst online: 09-10 08:46
GEWELDIG. tien punten.

https://eu.diablo3.com/en/profile/admrobo-1762/hero/79407822 - Xbox gamertag: control1983


Verwijderd

atmoz schreef op woensdag 27 september 2006 @ 09:16:
[...]


MUURVERF VOOR BINNEN basis TR(1L)
GAMMA: HISTOR DCK 1080-G30Y
dankjewel! :)

  • BJD
  • Registratie: Februari 2003
  • Laatst online: 12-10 20:22

BJD

Atmoz, kijk anders hier eens voor de luxaflex:
www.picbasic.nl -> projecten -> Luxaflex automatiseren

  • empy
  • Registratie: April 2004
  • Laatst online: 11:29

empy

Rijdt rondjes

atmoz schreef op woensdag 27 september 2006 @ 00:59:
[...]


:) Haha. Stiekem ideeën van mij pikken he ;)
Nee, effe zonder flauwekul: Ik heb die (rode) TL's van de UM (Universiteit Maastricht). Gratis gekregen dus. Deze week heb ik nog gehoord van iemand dat blacklight TL's heel erg duur zijn, maar ik kan me niet voorstellen dat rode (of groene/blauwe/etc) TL's meer kosten dan 10 euro. Waarschijnlijk kun je deze kopen bij iedere doe-het-zelf-zaak.
Je kan bij lampenzaken van die opschuifhoezen kopen voor je tl balken, die hebben ze in iedere kleur die je maar voor de geest kan halen! (In Den Haag heb je bijv. Aurora Kontakt in de Grotemarktstraat)
Blacklight tl-buizen zijn opzich wel te doen, voor 8.95 heb je een 38 watt 120cm tl-balk, en voor 27.50 heb je er eentje met armatuur (stond vandeweek bij Radio Twente in Den Haag :+ )
En kleinere zijn uiteraard nog goedkoper!

  • CRpt3r55
  • Registratie: Oktober 2002
  • Laatst online: 23-09 10:43
kan je geen dremel gebruiken voor de luxaflex? die zijn al heeeel wat stiller

Etuuuuuh!


  • Ricvdp
  • Registratie: Juni 2005
  • Laatst online: 11:29
Een dremel of cloon is
a. duur
b. maakt volgens mij best wat geluid.

Dit is helemaal geen slechte oplossing vind ik, het openen en sluiten duurt al gauw 5s dus daar heb je toch geen last van? :\

  • InjecTioN
  • Registratie: Juli 2005
  • Laatst online: 15:38

InjecTioN

¯\_(ツ)_/¯

stappenmotor :D

ziet er trouwens ZEEER strak uit daar :D

* InjecTioN heeft de zolder voor zichzelf alleen }) >:) (eens kijken wat pap en mam waarderen MWUHAHAHAhhahaha)

1995: 486 AM5x86-p75@160 512kb L2, 64MB, S3 Stealth 64 3000 4MB VLB, AWE64 Value, 8GB CFµDrive
1998: K6-III 400MHz, 384MB, Voodoo4 AGP, AWE64 Gold!, Adaptec AHA-29160+2x 72GB 10krpm SCSI


  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
BJD schreef op woensdag 27 september 2006 @ 15:56:
Atmoz, kijk anders hier eens voor de luxaflex:
www.picbasic.nl -> projecten -> Luxaflex automatiseren
Bedankt. Die site heb ik al vaker bekeken (bookmarked :P). Echt heel mooi spul allemaal _/-\o_
Crypter schreef op donderdag 28 september 2006 @ 00:13:
kan je geen dremel gebruiken voor de luxaflex? die zijn al heeeel wat stiller
Stiller? Mijn (Velleman) dremel maakt echt meer lawaai dan dat ding. Bovendie maakt die _VET_ veel toeren, dus ik weet niet hoe snel jij de luxaflex open wilt, maar binnen 1/10 seconde vind ik wat snel ;)
InjecTioN schreef op zaterdag 30 september 2006 @ 01:30:
stappenmotor :D

ziet er trouwens ZEEER strak uit daar :D

* InjecTioN heeft de zolder voor zichzelf alleen }) >:) (eens kijken wat pap en mam waarderen MWUHAHAHAhhahaha)
Stappenmotor zou inderdaad de beste (mooiste) oplossing zijn, maarja deze accuschroever past al meteen op de aandrijfstang zoals je kunt zien ;)

  • brbr4thepc
  • Registratie: Maart 2006
  • Laatst online: 10-10 19:09
Ik vraag me af waar je dit kan leren, hebben jullie elektrotechniek of ICT gedaan?
Ik wil dit ook leren maar ik heb geen idee waar ik moet beginnen, moet ik eerst beginnen met elektronica of moet ik eerst beginnen met de programmeertaal?
(srry maar een btje off topic)

[ Voor 53% gewijzigd door brbr4thepc op 30-09-2006 17:30 . Reden: uitgebreider gemaakt ]


Acties:
  • 0 Henk 'm!

  • kluyze
  • Registratie: Augustus 2004
  • Niet online
Je kunt dit op school leren, en het helpt wel. Maar ik denk (en de meesten zullen mij daarin volgen) dat de meeste kennis opgedaan wordt daarbuiten.

Ik doe nu bv master elektronica ict in belgië (industrieel ingenieur tot voor kort) En ik heb wat kennis van school en wat van hobbyen. Mooi is als je de basis van school mee krijgt, wet van Ohm, basiscomponenten, transistoren, led's, geheugen(flipflop/latch), tellers, ...

Ik heb dan ook nog wat basiskennis µC proggen gehad, VHDL, pc systemen (bussen, cpu architectuur, binnekort de busstructuur van de ps3), besturingsystemen (linux, embedded, rtlinx), ...

Ik zou beginnen met eens rond te neuzen op CO maak daar wat basis schakelingen, bekijk de tutorials eens. Dat denk ik is een mooi begin. Staat het niet op CO vraag er achter op het forum of zoek het eens op met google.

[ Voor 17% gewijzigd door kluyze op 01-10-2006 15:48 ]


Acties:
  • 0 Henk 'm!

Verwijderd

atmoz schreef op dinsdag 26 september 2006 @ 21:50:
Luxaflex open/dicht doormiddel van accu-schroevendraaier: KLIK
geniaal!! :9

Acties:
  • 0 Henk 'm!

  • brbr4thepc
  • Registratie: Maart 2006
  • Laatst online: 10-10 19:09
Ik vind het super, ik heb al een boek (basis elektronica) besteld bij de bieb, ik ben al alle fora aan het uit pluizen, en ik kan niet wachten totdat we hoofdstuk 4 (dacht ik) van Natuurkunde hebben.
Zo, ik ga denk ik de cursus doen op picbasic.nl, is die wel goed? Onderdelen kopen en beginnen maar. En trouwens jongens? Ik kan ook nog altijd op GoT terecht voor een vraag toch?
bedankt,
ps. en Atmoz veel suc6 met je projecten, we spreken hier elkaar nog wel eens!
</Offffftopic>

Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
brbr4thepc schreef op zaterdag 30 september 2006 @ 17:14:
Ik vraag me af waar je dit kan leren, hebben jullie elektrotechniek of ICT gedaan?
Ik wil dit ook leren maar ik heb geen idee waar ik moet beginnen, moet ik eerst beginnen met elektronica of moet ik eerst beginnen met de programmeertaal?
(srry maar een btje off topic)
Toevallig heb ik vanalles gedaan in deze richtingen op school:

Electro @ MTS (MBO)
ICT @ MBO
ICT (Netwerk Infrastructuur Design) @ HBO
ICT (Applicaite Programmeur) @ HBO

Maar ik was al met deze dingen bezig voordat ik naar school ging. Ik moet eerlijk zeggen dat ik op school niet veel geleerd heb wat dit betreft. Alleen de programmeerervaring met Delphi heb ik daar op gedaan :)

Acties:
  • 0 Henk 'm!

Verwijderd

Zou je het schema (wat je er van hebt) en de code van de pic ook eens online willen zetten? :) erg leuk projectje.

EDIT:
Het lukt mij maar niet om een soort van "menu" te maken. zou je dan in ieder geval een voorlbeeltje kunnen posten? :)

[ Voor 35% gewijzigd door Verwijderd op 03-10-2006 22:00 ]


Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Verwijderd schreef op maandag 02 oktober 2006 @ 16:34:
Zou je het schema (wat je er van hebt) en de code van de pic ook eens online willen zetten? :) erg leuk projectje.

EDIT:
Het lukt mij maar niet om een soort van "menu" te maken. zou je dan in ieder geval een voorlbeeltje kunnen posten? :)
De hele code(s) online zetten heeft denk ik niet veel nut. Wat heb je bijvoorbeeld aan het menu-item "verwarming verlichting" of "sterrenhemel" niet veel mensen hebben dat toch?

Met welke software ben je bezig om te programmeren? Het lukt je niet om een "menu" te maken, wat lukt je dan wel? Ik werk met JALcc....

Acties:
  • 0 Henk 'm!

Verwijderd

atmoz schreef op donderdag 05 oktober 2006 @ 10:47:
[...]


De hele code(s) online zetten heeft denk ik niet veel nut. Wat heb je bijvoorbeeld aan het menu-item "verwarming verlichting" of "sterrenhemel" niet veel mensen hebben dat toch?

Met welke software ben je bezig om te programmeren? Het lukt je niet om een "menu" te maken, wat lukt je dan wel? Ik werk met JALcc....
Klopt. Niet iedereen heeft die benaming, maar ik denk dat er meerdere mensen zijn die (zoals ik ) graag willen weten hoe het in elkaar zit om zo ideeën op te doen voor hun eigen project.

Zelf ben ik in picbasic bezig.

Misschien is het een idee om alles in een .rar bestaand te zetten, zo hebben we geen lange code(s) op het forum ;)

Acties:
  • 0 Henk 'm!

  • Ghannes
  • Registratie: Oktober 2002
  • Laatst online: 10-10 09:23
gebruik je die 18f452 alleen omdat ie veel pins heeft? Of maak je ook nog gebruik van AD-functies, Interrupts en timers?

Ben namelijk ook op zoek naar een PIC met min 2 kByte geheugen en veel I/O, die met een frequentie van 4 kHz oid 6 AD-omzettingen kan doen.

groetjes je kleine neefje

[ Voor 6% gewijzigd door Ghannes op 05-10-2006 14:40 ]


Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Verwijderd schreef op donderdag 05 oktober 2006 @ 12:26:
[...]


Klopt. Niet iedereen heeft die benaming, maar ik denk dat er meerdere mensen zijn die (zoals ik ) graag willen weten hoe het in elkaar zit om zo ideeën op te doen voor hun eigen project.

Zelf ben ik in picbasic bezig.

Misschien is het een idee om alles in een .rar bestaand te zetten, zo hebben we geen lange code(s) op het forum ;)
De enige codes die ik kan geven zijn de *.hex file (wat regelrecht in de PIC moet) of de *.jal files. Maarja, aangezien jij een heel andere programma gebruikt weet ik niet wat je er aan hebt. Maar als ik morgen tijd heb zal ik alles eens posten...
Ghannes schreef op donderdag 05 oktober 2006 @ 14:39:
gebruik je die 18f452 alleen omdat ie veel pins heeft? Of maak je ook nog gebruik van AD-functies, Interrupts en timers?

Ben namelijk ook op zoek naar een PIC met min 2 kByte geheugen en veel I/O, die met een frequentie van 4 kHz oid 6 AD-omzettingen kan doen.

groetjes je kleine neefje
Die PIC gebruik ik omdat hij inderdaad veel IO's heeft en omdat ik er makkelijk mee kan PWM'en. Van interrups, timers en AD functies weet ik (helaas) nog niet zo veel. Voor sommige programma's zou het heel handig zijn als ik iets van interrupts af wist, maar in JALcc is dat niet zo heel makkelijk geloof ik. Ben nu bezig met BlueTooth, dus veel tijd om andere dingen uit te zoeken is er niet. Maar ik ga het zeker nog eens proberen :)

offtopic:
Wat ben je aan het maken Hans?

Acties:
  • 0 Henk 'm!

  • Ghannes
  • Registratie: Oktober 2002
  • Laatst online: 10-10 09:23
atmoz schreef op donderdag 05 oktober 2006 @ 21:43:
Die PIC gebruik ik omdat hij inderdaad veel IO's heeft en omdat ik er makkelijk mee kan PWM'en. Van interrups, timers en AD functies weet ik (helaas) nog niet zo veel. Voor sommige programma's zou het heel handig zijn als ik iets van interrupts af wist, maar in JALcc is dat niet zo heel makkelijk geloof ik. Ben nu bezig met BlueTooth, dus veel tijd om andere dingen uit te zoeken is er niet. Maar ik ga het zeker nog eens proberen :)

offtopic:
Wat ben je aan het maken Hans?
offtopic:
Ben bezig met een project over Philips Amiblight, alleen daar voor de computer/beamer ;) Als 't werkt in januari post ik hier op GoT wel wat ;)

Acties:
  • 0 Henk 'm!

Verwijderd

atmoz schreef op donderdag 05 oktober 2006 @ 21:43:
[...]


De enige codes die ik kan geven zijn de *.hex file (wat regelrecht in de PIC moet) of de *.jal files. Maarja, aangezien jij een heel andere programma gebruikt weet ik niet wat je er aan hebt. Maar als ik morgen tijd heb zal ik alles eens posten...
.hex kun je eigenlijk niets mee ;) ik ken php, volgens mijn bronnen moet jal er wel een beetje op lijken. dus heb ik ook wat om te leren ;)

Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Ghannes schreef op donderdag 05 oktober 2006 @ 23:14:
[...]


offtopic:
Ben bezig met een project over Philips Amiblight, alleen daar voor de computer/beamer ;) Als 't werkt in januari post ik hier op GoT wel wat ;)
offtopic:
Klinkt erg leuk. Laat maar weten als 't werkt ;)
Verwijderd schreef op vrijdag 06 oktober 2006 @ 09:30:
[...]


.hex kun je eigenlijk niets mee ;) ik ken php, volgens mijn bronnen moet jal er wel een beetje op lijken. dus heb ik ook wat om te leren ;)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
pragma target chip 18f452
pragma target clock 20_000_000 
pragma target osc hs
pragma target watchdog off
pragma target powerup on
pragma target protection off

include f452_serial
include jlib
include hd447804
include i2c

hd44780_instruction(0x28) 
hd44780_clear

-- *** PIN DECLARATIE *** --

pin_d7_direction = input -- druktoets
pin_d6_direction = input -- druktoets
pin_d5_direction = input -- druktoets

pin_b6_direction = output -- LCD backlight
pin_d2_direction = output -- Uitgang 1
pin_d3_direction = output -- Uitgang 2
pin_c4_direction = output -- Uitgang 3
pin_c5_direction = output -- Uitgang 4
pin_d4_direction = output -- Uitgang 5
pin_c3_direction = output -- Kaars 1
pin_d0_direction = output -- Kaars 2
pin_d1_direction = output -- Kaars 3
pin_a0_direction = output -- up/down fase aansnijding 
pin_a1_direction = output -- up/down fase aansnijding 

pin_b6 = high -- LCD backlight
pin_d2 = high -- effe high voor programmeer test (gaat zo weer uit)
pin_d3 = low
pin_c4 = high -- staande lamp
pin_c5 = high -- leeslamp
pin_d4 = low
pin_c3 = low
pin_d0 = low
pin_d1 = low
pin_a0 = low
pin_a1 = low

var bit toets_a is pin_d5
var bit toets_b is pin_d6
var bit toets_c is pin_d7

var byte a,b,tijd

-- *** EINDE PIN DECLARATIE *** --



-- define all the parameters and include the library
   const pwm_osc_frequency = 10_000   -- pwm frequency in Hz
   const pwm_osc_dutycycle = 10       -- dutycycle in percent
;;;;;  <;mac> io_pin   pwm_pin = pin_c2
var volatile bit  pwm_pin_pin       is pin_c2
var volatile byte pwm_pin_port      is portc
const             pwm_pin_nr        =  2
var volatile byte pwm_pin_buffer    is _port_c_buffer
var volatile bit  pwm_pin_direction is pin_c2_direction
;;;;;<;/mac>
   include pwm

   -- init and start the PWM
   pwm_osc_init

   -- stop the PWM
--   pwm_osc_stop

delay_1s



CCPR1L = 0
a = 18
b = 1
tijd = 0

pin_d2 = low


procedure display (byte in z) is
if z < 10 then
hd44780 = 48
hd44780 = z + 48
else
hd44780 = (z / 10) + 48
hd44780 = (z % 10) + 48
end if
end procedure


procedure reset is
b = 1
while toets_a == high & toets_b == high & toets_c == high loop
end loop
pin_b6 = high
delay_100ms(2) 
end procedure


procedure backlight_off is
delay_1ms(15)
b = b + 1
if b >= 250 then 
  pin_b6 = low 
  b = 1 
  reset
end if
end procedure






procedure ster_on is
pin_d2 = high
delay_100ms(1)
end procedure


procedure ster_off is
pin_d2 = low
delay_100ms(1)
end procedure


procedure luxa_open is

end procedure


procedure luxa_close is

end procedure


procedure verwarming_on is 
pin_d3 = high
delay_100ms(1)
end procedure 


procedure verwarming_off is
pin_d3 = low
delay_100ms(1)
end procedure


procedure lees_on is
pin_c4 = high
delay_100ms(1)
end procedure


procedure lees_off is
pin_c4 = low
delay_100ms(1)
end procedure


procedure staande_on is
pin_c5 = high
delay_100ms(1)
end procedure


procedure staande_off is
pin_c5 = low
delay_100ms(1)
end procedure


procedure kaars_on is
pin_c3 = high
delay_100ms(3)
pin_d0 = high
delay_100ms(3)
pin_d1 = high
delay_100ms(1)
end procedure


procedure kaars_off is
pin_c3 = low
pin_d0 = low
pin_d1 = low
delay_100ms(2)
end procedure


procedure green_min is
if CCPR1l >= 5 then
CCPR1L = CCPR1L - 5
end if

if CCPR1L <= 5 then
pwm_osc_stop
pwm_osc_stop
end if

delay_10ms(5)

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "["
if CCPR1L >= 10 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 20 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 30 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 40 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 50 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 60 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 70 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 80 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 90 then hd44780 = 255 else hd44780 = " " end if
hd44780 = "]"
hd44780 = " "
hd44780 = " "
hd44780 = " "
end procedure


procedure green_plus is
if CCPR1L <= 5 then
pwm_osc_start
end if


if CCPR1l <= 95 then
CCPR1L = CCPR1L + 5
end if
-- pwm_osc_init

delay_10ms(5)

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "["
if CCPR1L >= 10 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 20 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 30 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 40 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 50 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 60 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 70 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 80 then hd44780 = 255 else hd44780 = " " end if
if CCPR1L >= 90 then hd44780 = 255 else hd44780 = " " end if
hd44780 = "]"
hd44780 = " "
hd44780 = " "
hd44780 = " "
end procedure


procedure lamp_min is
if a == 18 then 

else
  a = a + 1
  pin_a1 = high 
    delay_1ms(25)
    pin_a1 = low
    delay_100ms(2)  
end if


hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "["
if a >= 18 then hd44780 = " " else hd44780 = 255 end if
if a >= 16 then hd44780 = " " else hd44780 = 255 end if
if a >= 14 then hd44780 = " " else hd44780 = 255 end if
if a >= 12 then hd44780 = " " else hd44780 = 255 end if
if a >= 10 then hd44780 = " " else hd44780 = 255 end if
if a >= 8 then hd44780 = " " else hd44780 = 255 end if
if a >= 6 then hd44780 = " " else hd44780 = 255 end if
if a >= 4 then hd44780 = " " else hd44780 = 255 end if
if a >= 2 then hd44780 = " " else hd44780 = 255 end if
hd44780 = "]"
hd44780 = " "
hd44780 = " "
hd44780 = " "
end procedure


procedure lamp_plus is
if a == 1 then

else
  a = a - 1

  pin_a0 = high 
    delay_1ms(25)
    pin_a0 = low    
    delay_100ms(2)
end if

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "["
if a >= 18 then hd44780 = " " else hd44780 = 255 end if
if a >= 16 then hd44780 = " " else hd44780 = 255 end if
if a >= 14 then hd44780 = " " else hd44780 = 255 end if
if a >= 12 then hd44780 = " " else hd44780 = 255 end if
if a >= 10 then hd44780 = " " else hd44780 = 255 end if
if a >= 8 then hd44780 = " " else hd44780 = 255 end if
if a >= 6 then hd44780 = " " else hd44780 = 255 end if
if a >= 4 then hd44780 = " " else hd44780 = 255 end if
if a >= 2 then hd44780 = " " else hd44780 = 255 end if
hd44780 = "]"
hd44780 = " "
hd44780 = " "
hd44780 = " "
end procedure



procedure timer_plus is
if tijd < 59 then
tijd = tijd + 1
end if
delay_10ms(5)

hd44780_position (64)
hd44780 = " "
hd44780 = " "
display(tijd)
hd44780 = " "
hd44780 = "m"
hd44780 = "i"
hd44780 = "n"
hd44780 = "u"
hd44780 = "t"
hd44780 = "e"
hd44780 = "n"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
end procedure




procedure timer_min is
if tijd >= 1 then
tijd = tijd - 1
end if
delay_10ms(5)


if tijd == 0 then
hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "g"
hd44780 = "e"
hd44780 = "e"
hd44780 = "n"
hd44780 = " "
hd44780 = "t"
hd44780 = "i"
hd44780 = "m"
hd44780 = "e"
hd44780 = "r"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
else 
hd44780_position (64)
hd44780 = " "
hd44780 = " "
display(tijd)
hd44780 = " "
hd44780 = "m"
hd44780 = "i"
hd44780 = "n"
hd44780 = "u"
hd44780 = "t"
hd44780 = "e"
hd44780 = "n"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
end if




end procedure




procedure spots is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "H"
hd44780 = "a"
hd44780 = "l"
hd44780 = "o"
hd44780 = "g"
hd44780 = "e"
hd44780 = "e"
hd44780 = "n"
hd44780 = "s"
hd44780 = "p"
hd44780 = "o"
hd44780 = "t"
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then lamp_min delay_100ms(1) end if
if toets_b == low then lamp_plus delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure groeneleds is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "G"
hd44780 = "r"
hd44780 = "o"
hd44780 = "e"
hd44780 = "n"
hd44780 = "e"
hd44780 = " "
hd44780 = "L"
hd44780 = "E"
hd44780 = "D"
hd44780 = "'"
hd44780 = "s"
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then green_min delay_10ms(5) end if
if toets_b == low then green_plus delay_10ms(5) end if
backlight_off
end loop

-- CCPR1L = 240 -- test even

end procedure


procedure kaarsjes is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "K"
hd44780 = "a"
hd44780 = "a"
hd44780 = "r"
hd44780 = "s"
hd44780 = "j"
hd44780 = "e"
hd44780 = "s"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then kaars_off delay_100ms(1) end if
if toets_b == low then kaars_on delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure staandelamp is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "S"
hd44780 = "t"
hd44780 = "a"
hd44780 = "a"
hd44780 = "n"
hd44780 = "d"
hd44780 = "e"
hd44780 = " "
hd44780 = "l"
hd44780 = "a"
hd44780 = "m"
hd44780 = "p"
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then staande_on delay_100ms(1) end if
if toets_b == low then staande_off delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure leeslamp is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "L"
hd44780 = "e"
hd44780 = "e"
hd44780 = "s"
hd44780 = "l"
hd44780 = "a"
hd44780 = "m"
hd44780 = "p"
hd44780 = "j"
hd44780 = "e"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then lees_on delay_100ms(1) end if
if toets_b == low then lees_off delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure verwarming is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "V"
hd44780 = "e"
hd44780 = "r"
hd44780 = "w"
hd44780 = "."
hd44780 = " "
hd44780 = "l"
hd44780 = "a"
hd44780 = "m"
hd44780 = "p"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then verwarming_off delay_100ms(1) end if
if toets_b == low then verwarming_on delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure raamverduistering is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "L"
hd44780 = "u"
hd44780 = "x"
hd44780 = "a"
hd44780 = "f"
hd44780 = "l"
hd44780 = "e"
hd44780 = "x"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then luxa_close delay_100ms(1) end if
if toets_b == low then luxa_open delay_100ms(1) end if
backlight_off
end loop
end procedure


procedure sterrenhemel is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "S"
hd44780 = "t"
hd44780 = "e"
hd44780 = "r"
hd44780 = "r"
hd44780 = "e"
hd44780 = "n"
hd44780 = "h"
hd44780 = "e"
hd44780 = "m"
hd44780 = "e"
hd44780 = "l"
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then ster_off delay_100ms(1) end if
if toets_b == low then ster_on delay_100ms(1) end if
backlight_off
end loop
end procedure



procedure timer_instel is
hd44780_clear
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "T"
hd44780 = "i"
hd44780 = "m"
hd44780 = "e"
hd44780 = "r"
hd44780 = " "
hd44780 = "c"
hd44780 = "o"
hd44780 = "n"
hd44780 = "f"
hd44780 = "i"
hd44780 = "g"
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
hd44780 = "A"
hd44780 = ")"
hd44780 = "-"
hd44780 = " "
hd44780 = "B"
hd44780 = ")"
hd44780 = "+"
hd44780 = " "
hd44780 = "C"
hd44780 = ")"
hd44780 = ">"
hd44780 = ">"
hd44780 = " "
hd44780 = " "

delay_100ms(3)
while  toets_c == high loop
if toets_a == low then timer_min delay_100ms(1) end if
if toets_b == low then timer_plus delay_100ms(1) end if
backlight_off
end loop

if tijd > 0 then
hd44780_position (0)
hd44780 = " "
hd44780 = " "
hd44780 = "T"
hd44780 = "i"
hd44780 = "m"
hd44780 = "e"
hd44780 = "r"
hd44780 = " "
hd44780 = "o"
hd44780 = "p"
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "
hd44780 = " "

hd44780_position (64)
hd44780 = " "
hd44780 = " "
display(tijd)
hd44780 = " "
hd44780 = "m"
hd44780 = "i"
hd44780 = "n"
hd44780 = "u"
hd44780 = "t"
hd44780 = "e"
hd44780 = "n"
hd44780 = "!"
hd44780 = "!"
hd44780 = " "
hd44780 = " "



for 60 loop 
delay_1s(tijd)
end loop

for 18 loop
lamp_min
end loop

tijd = 0
pin_b6 = low 
delay_100ms(5)
pin_d2 = low
delay_100ms(5)
pin_d3 = low
delay_100ms(5)
pin_c4 = high
delay_100ms(5)
pin_c5 = high
delay_100ms(5)
pin_d4 = low
delay_100ms(5)
pin_c3 = low
delay_100ms(5)
pin_d0 = low
delay_100ms(5)
pin_d1 = low
delay_100ms(5)
pin_a0 = low
delay_100ms(5)
pin_a1 = low

for 25 loop
green_min
delay_100ms
end loop

pwm_osc_stop
pwm_osc_stop


end if


end procedure




forever loop

spots
b = 1
groeneleds
b = 1
kaarsjes
b = 1
staandelamp
b = 1
leeslamp
b = 1
verwarming
b = 1
raamverduistering
b = 1
sterrenhemel
b = 1
timer_instel
b = 1

end loop








































for 1 loop

if pin_d7 == low then
CCPR1L = CCPR1L + 1
delay_1s
end if

if pin_d5 == low then
CCPR1L = CCPR1L - 1
delay_1s
end if

if pin_d6 == low then
CCPR1L = 0
delay_1s
end if

end loop


Dit is het grootste gedeelte v/d code :)

Acties:
  • 0 Henk 'm!

Verwijderd

cool, bedankt. zal eens kijken wat ik allemaal kan gebruiken :D

Acties:
  • 0 Henk 'm!

  • Cyrus The Virus
  • Registratie: Augustus 2003
  • Laatst online: 11-10 14:52
Even een simpel offtopic vraagje:

Die knopjes (pushbuttons) hang je die aan een speciale poort of check je gewoon of ze 1 zijn met een delay er tussen.

Ben bezig met een soort bedieningspaneel voor een robot met LCD en 4 knopjes of Rotary encoder.

AMD 5950x || Asus VIII Dark Hero || G.Skill Trident Z Neo 2x16GB C16-16-16-36 || EVGA FTW3 3080 Ultra || 2x WD SN850 1TB || Corsair HX850i


Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Cyrus The Virus schreef op dinsdag 10 oktober 2006 @ 16:04:
Even een simpel offtopic vraagje:

Die knopjes (pushbuttons) hang je die aan een speciale poort of check je gewoon of ze 1 zijn met een delay er tussen.

Ben bezig met een soort bedieningspaneel voor een robot met LCD en 4 knopjes of Rotary encoder.
Ze hangen gewoon aan de microcontroller met een pullup van 10Kohm.

De microcontroller kijkt gewoon (zonder delay) op welk knopje gedrukt wordt. Hoezo checken met delay ertussen? Je kunt die rotary encoder (leuk ding!!) of die 4 knopjes direct aan de microcontroller hangen.

Acties:
  • 0 Henk 'm!

  • Cyrus The Virus
  • Registratie: Augustus 2003
  • Laatst online: 11-10 14:52
atmoz schreef op dinsdag 10 oktober 2006 @ 16:49:
[...]


Ze hangen gewoon aan de microcontroller met een pullup van 10Kohm.

De microcontroller kijkt gewoon (zonder delay) op welk knopje gedrukt wordt. Hoezo checken met delay ertussen? Je kunt die rotary encoder (leuk ding!!) of die 4 knopjes direct aan de microcontroller hangen.
Ja dat snap ik, maar als je bijvoorbeelzegt:

If Push1==1;
Then:
Brightness++;
Else:
//


Als je dat doet gaat je brightness meteen naar 255 omdat je PIC zo snel is.

AMD 5950x || Asus VIII Dark Hero || G.Skill Trident Z Neo 2x16GB C16-16-16-36 || EVGA FTW3 3080 Ultra || 2x WD SN850 1TB || Corsair HX850i


Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Cyrus The Virus schreef op dinsdag 10 oktober 2006 @ 16:51:
[...]


Ja dat snap ik, maar als je bijvoorbeelzegt:

If Push1==1;
Then:
Brightness++;
Else:
//


Als je dat doet gaat je brightness meteen naar 255 omdat je PIC zo snel is.
Ah.....
Yes ik snap ;)

Dat vang ik altijd op door te zeggen:

code:
1
2
3
4
5
if button1 == low then
while button1 == low loop
end loop
delay_1ms(10)
end if

Acties:
  • 0 Henk 'm!

Verwijderd

Jezus, atmoz, jij hebt veel zin gehad om al die code te schrijven 8)7 Al je tekst in "code" vorm. Was het niet veel simpeler om gewoon een functie (procedure hier) te maken die een string/array naar het display stuurt? Dan kon je makelijk tekst naar het display sturen zonder die omslachtige schrijfwijze.

Maar goed, ik moest het niet maken, dus laat het mij eigenlijk koud hoe je het oplost :p

Verder wel een leuk projectje.

Acties:
  • 0 Henk 'm!

  • Atmoz
  • Registratie: Juli 2001
  • Laatst online: 01-10 07:55

Atmoz

Techno!!

Topicstarter
Verwijderd schreef op dinsdag 10 oktober 2006 @ 21:00:
Jezus, atmoz, jij hebt veel zin gehad om al die code te schrijven 8)7 Al je tekst in "code" vorm. Was het niet veel simpeler om gewoon een functie (procedure hier) te maken die een string/array naar het display stuurt? Dan kon je makelijk tekst naar het display sturen zonder die omslachtige schrijfwijze.

Maar goed, ik moest het niet maken, dus laat het mij eigenlijk koud hoe je het oplost :p

Verder wel een leuk projectje.
Geen idee hoe dat moet. Weet dat het beter kan, maar zou niet weten hoe. Alle voorbeelden die JALcc op internet heeft werken op deze manier. Als iemand een goed idee heeft om hiervoor een procedure/functie te schrijven... graag... :) Want dit doe ik dus altijd zo. Ook in menu's met nog veel meer teksten :O

Acties:
  • 0 Henk 'm!

  • Ghannes
  • Registratie: Oktober 2002
  • Laatst online: 10-10 09:23
atmoz schreef op dinsdag 10 oktober 2006 @ 21:09:
[...]


Geen idee hoe dat moet. Weet dat het beter kan, maar zou niet weten hoe. Alle voorbeelden die JALcc op internet heeft werken op deze manier. Als iemand een goed idee heeft om hiervoor een procedure/functie te schrijven... graag... :) Want dit doe ik dus altijd zo. Ook in menu's met nog veel meer teksten :O
functies bestaan in Jal wel, heb ik wel eens gebruikt.
Helaas kent Jal geen strucs, arrays en pointers

Acties:
  • 0 Henk 'm!

  • Ricvdp
  • Registratie: Juni 2005
  • Laatst online: 11:29
Ik vind je code erg inefficiënt, en vooral erg onoverzichtelijk. Dat zal vast komen doordat ik het gewend ben om voor de computer te programmeren, en ik dus meer netheid gewend ben, maar nogsteeds mag het wel wat netter allemaal. Ik denk ook wel dat je je menu systeem beter kan implementeren, waardoor het sneller en overzichtelijker werkt, wat helpt aan latere uitbreidingen.
Pagina: 1