
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> Hallo, > > Ich möchte vier Hallogenlampen je 12V ansteuern um eine Lichtsteuerung für die Sauna zu bauen. > > Das würde mit zwei Lampen wunderbar gehen, wenn ich die PWM Signale des CControl benutze. > Ich benötige aber zwei weitere PWM Ausgänge für mein Projekt. Da das Softwaretechnisch nicht funktionieren wird,und ich schon gerne die CControl benutzen würde dachte ich man könnte mittels einer externen Schaltung vielleicht für zwei Digital Ports so eine PWM nachbauen. Hat da jemand ne Idee? > > Oder hat jemand eine andere Idee, wie man das machen könnte. > Ich hab auch schon mal daran gedacht viel normale Glühbirnen zu dimmen aber ich hab nur deisen Dimmer für die Station bei Conrad gefunden. Das als Eigenbau würde mich aber reizen, obwohl ich gestehen muss, dass ich die Schaltung noch nicht so ganz durchblickt habe :-( > > Danke und Gruß > Hallo... Das geht auch ohne Hardware mit einem kleinen Trick. Ich habe dir eine kleine Demo für das Application-Board geschrieben. Ich hoffe das hilft dir. ciao.. ----------------------------------------------------------------------------------------------------------------------------------- '-------------------------------------------------------------------- ' Beispiel zum BASIC-COMPUTER mit dem Programmer/Application-Board '-------------------------------------------------------------------- ' ANWENDUNG: Weitere PLM-Ausgänge ' '-------------------------------------------------------------------- ' Das Beispiel zeigt, wie man mit einem Trick weitere PLM-Ausgänge ' Erzeugen kann. ' Es wird der reguläre DA-Ausgang benutzt um einen IRQ zu erzeugen ' (DA-Ausgang mit IRQ verbinden) ' Der Interrupt findet alle 500us statt und wird in der Interrupt ' Routine zu einer Pulsbreitenmodulation verarbeitet. ' ' In diesem Beispiel werden die Ports 1 und 16 (LCD Beleuchtung) ' angesteuert. Der Wert für den PLM-Ausgang wird in der Variablen ' PLM3 bzw. PLM 4 festgelegt. Die PLM-Frequenz ist etwa 25ms, was ' für die Dimmung von Lampen ausreichen sollte. ' ' Das Beispiel fährt im Hauptprogramm den Wert der Variablen PLM3 ' durch den Bereich 0 bis 255. Sie sehen wie der zugehörige Ausgang ' Port 16 die Helligkeit der LCD-Beleuchtung am Application-Board ' langsam dimmt. ' Der gerade aktuelle Wert für PLM3 wird am LCD angezeigt. '--------------------------------------------------------------------- ' Achtung: ' Während einer Pause wird der IRQ nicht bearbeitet, Sie dürfen ' im Hauptprogramm also keinen PAUSE-Befehl verwenden. ' Nehmen Sie eine DELAY-Schleife um Pausen zu erzeugen. '--------------------------------------------------------------------- '-------------------------- '------ I/O PORTS --------- '-------------------------- define PWMOUT3 port[16] define PWMOUT4 port[1] define PWMOUT2 da[2] define PWMOUT1 da[1] '-------------------------- '---- SYSTEM MEMORY ------- '-------------------------- define COUNTER byte[1] define DELAY byte[2] define PLM3 byte[3] define PLM4 byte[4] define ICNT byte[5] '---------------------------------------------------------------------- INTERRUPT ISERVICE print"#ON_LCD#"; print"#INIT#"; '---------------------------------------------------------------------- #MAIN_PROGRAM for DELAY=0 to 255 next COUNTER=COUNTER+1 PLM3=COUNTER print"#L101#";COUNTER;" "; goto MAIN_PROGRAM '---------------------------------------------------------------------- '--- PLM INTERRUPT SERVICE ---- '---------------------------------------------------------------------- ' IRQ CONNECTED TO DA1 OR DA2 - INTERRUPTRATE 500us #ISERVICE ICNT=ICNT+5 if ICNT<=PLM3 then PWMOUT3=on else PWMOUT3=off if ICNT<=PLM4 then PWMOUT4=on else PWMOUT4=off return interrupt |
| Antwort schreiben |