Herzlich Willkommen im einzigen (deutschsprachigem) Picaxe-Forum.

Der Ursprung dieses Forum reicht bis in das Jahr 2008 zurück

Eine neue Antwort erstellen

[b][/b]
[i][/i]
[u][/u]
[code][/code]
[quote][/quote]
[spoiler][/spoiler]
[url][/url]
[img][/img]
[video][/video]
Smileys
Top
griins
idee
frage
grin
hmm
lil
denk
sadly
grööhl
cool
shocked
[mail][/mail]
[pre][/pre]
Farben
[rot][/rot]
[blau][/blau]
[gruen][/gruen]
[orange][/orange]
[lila][/lila]
[weiss][/weiss]
[schwarz][/schwarz]
[big][/big]
[line]
[small][/small]
[h4][/h4]
[style={{name}}][/style]
a1
a2
a3
a4
a5
a6
a7
a8
a9
a10
a11
a12
a13
a14
a15
a16
a18
a17
a19
a20
a21


*Zur Vermeidung von Spam



Im Beitrag anzeigen:

In Antwort auf

Soft-PWM

von BoomBoomMagic , 28.01.2020 13:38

Da man meist nur 1 oder 2 PWM-Kanäle hat , zeige ich hier mal wie man mittels Soft-PWM quasi jeden Pin oder alle als PWM nutzen kann.

PWM - was heißt das eigentlich ?

PulsWeitenModulation

Das heiß , in einem festgelegtem Takt , definiert man also die Weite des Pulses wie lang etwas an ist.

Sagen wir mal , der Takt ist 255ms lang.
Dann wird also immer von 0-255 gezählt.
Wenn denn dann die 255 erreicht sind , schalte ich einen festgelegten Pin AUS !

Jetzt stell ich z.B. meinen Pulsweitenbeginn auf 200.
Das bedeutet , wenn der Takt beim Zählen die 200 erreicht hat , schalte ich einen festgelegten Pin an.
Dieser bleibt solange an , bis der Takt zuende gezählt hat, und dann schaltet er den festgelegten Pin wieder aus.

Von 200 bis 255 ist nicht sehr viel , also wird der festgelegte Pin , in diesem Fall eine LED , nur sehr kurz aufleuchten .
Stelle ich aber meinen Pulsweitenbeginn auf 10 , dann bleibt die LED natürlich länger an bis der Takt die 255 erreicht hat.

Dazu mal der 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
 

$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 40
$framesize = 40
 
config portc = output
 
dim Takt as byte
dim Puls_weiten_anfang as byte
dim Check as byte
 
Puls_weiten_anfang=255
 
do
 
for Takt = 0 to 255
 
if Takt=Puls_weiten_anfang then
portc=31
endif
 
waitus 10
next takt
portc=0
 
if Puls_weiten_anfang>1 and check=0 then
decr Puls_weiten_anfang
else
check=1
waitms 1
endif
 
if Puls_weiten_anfang>=1 and Puls_weiten_anfang<255 and check=1 then
incr Puls_weiten_anfang
else
check=0
waitms
endif
 
loop
end
 
 



Top

Fotos hochladen

Zugriffsanfrage von


Diese Seite versucht auf deinen addPics.com Account zuzugreifen.
Aus Sicherheitsgründen, erlaubt addPics.com nur den Zugriff von autorisierten Webseiten. Wenn du dieser Webseite vertraust, kannst du mit einem Klick auf den folgenden Link, den Zugriff erlauben.

autorisieren Aktualisieren

Bitte logge dich mit deinem bereits existierenden Account auf addPics.com ein.


Jetz einloggen!
Neu laden!


Dem Beitrag angehängte Bilder


- noch keine Bilder angehängt.

oder ein bereits hochgeladenes diesem Beitrag hinzufügen.
Nach Ordner filtern: Ordner bearbeiten
  • Mit deiner Emailadresse, verwaltest du all deine Bilder auf addPics.com
  • diese Nutzung von addPics.com ist für dich kostenlos!
  • weitere Informationen findest du hier


Mit dem Upload gebe ich mein Einverständnis, dass meine E-Mail von addPics.com für werbliche Zwecke zum Erhalt von Newslettern genutzt wird. Die E-Mail wird nicht an Dritte weitergegeben und der Newsletter kann jederzeit per E-Mail an unsubscribe@addpics.com abgemeldet werden.

Mit anderen addPics.com Account anmelden
Picaxe Editor 5.5.5 Download
Update auf Picaxe Editor 5.5.6 Download
Picaxe Editor 6.x.x.x Download
Manual1.pdf        -      Grundwissen Download
Manual2.pdf        -      Befehle Download
Manual3.pdf        -      Beispiele Download


Press [Backspace] for back to Menu


Counter
Xobor Forum Software ©Xobor.de | Forum erstellen
Datenschutz