Herzlich Willkommen im einzigen (deutschsprachigem) Picaxe-Forum.

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

Software

RE: Zeitproblem

 von Naubaddi , 09.02.2020 12:42

Was nützt die Logik wenn so ein PICAXE es nicht kann oder schafft?
Im Zusammenhang mit RC-Funktionen ist die Zeit sehr knapp und es kommen in diesem Fall 3 Signale zur selben Zeit, darauf soll das Programm sofort ohne etwas zu verschlucken reagieren. Irgendwo hatte ich schon mal erwähnt das pulsout das System blockiert, egal ob es in einem Multitask läuft oder nicht. Mit if... gebe ich dem System genug Zeit um den Multitask nicht zu stören, sieht vielleicht nicht schön aus arbeitet dafür sehr zuverlässig. Ist wie mit dem goto was mir nicht gefällt, wenn es so ist dann ist es halt so und ich nehme es hin.

Hatte ganz vergessen das der Blinker ja an den Lenkservo hängt und nicht auf einem extra Kanal wie bei mir, das Rundumlicht wird jetzt über einen Kanal ein/aus geschaltet.

Das noch kürzere Programm:

*edit, egal wie schnell man an den Steuerhebeln rührt, es funktioniert ohne etwas zu verschlucken oder das etwas langsamer wird!

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
 
; picaxe14m2 ;	automatische Compilerauswahl für gedit
; Dateiname: Karlsson.axe
; Funktion: Das Signal von einem RC-Empfänger auswerten für Blinker, Rundumlicht und Bremslicht
; RC-Signal 75 links, 150 Mitte, 225 rechts
; Datum: Start 08.02.2020, Stand 08.02.2020
; Von: Naubaddi foto-schubser@arcor.de
;
; PICAXE 14M2 (B.0 nur Ausgang, C.3, C.5 nur Eingang)
;
; +---v---+
; +V |1 14| 0V
; RxD /I C.5 |2 13| B.0 O /TxD/hserout/DAC
; Touch/ADC/ I/O C.4 |3 12| B.1 I/O /ADC/Touch/SRI/hserin
; I C.3 |4 11| B.2 I/O /ADC/Touch/pwm/tune/SRQ
; kb clk/hpwm A/pwm/ I/O C.2 |5 10| B.3 I/O /ADC/Touch/hi2c scl
; kb data/hpwm B/ I/O C.1 |6 9| B.4 I/O /ADC/Touch/pwm/hi2c sda
; hpwm C/pwm/Touch/ADC/ I/O C.0 |7 8| B.5 I/O /ADC/Touch/hpwm D
; +-------+
;
pause 1000 ; eine Pause für die RC-Elektrik
;
symbol Bremse = C.0 ; Ausgang für das Bremslicht
symbol links = C.1 ; Ausgang für den Blinker links
symbol rechts = C.2 ; Ausgang für den Blinker rechts
symbol RC_Blinker = C.3 ; Eingang für einen Kanal vom Empfänger (Lenkservo)
symbol RC_Bremse = C.4 ; Eingang für einen Kanal vom Empfänger (Fahrtregler)
symbol RC_Rundumlicht = B.5 ; Eingang für einen Kanal vom Empfänger (???)
symbol RC_Signal = b0 ; das Signal vom Empfänger
symbol Mitte = b1 ; die Mittelstellung
symbol SP_l = b2 ; Schaltpunkt low
symbol SP_h = b3 ; Schaltpunkt high
symbol Blinkinterval = b4 ; Blinkinterval in Milisekunden
symbol links_ein = b5 ; Blinker links ein/aus
symbol rechts_ein = b6 ; Blinker rechts ein/aus
symbol Rundumlicht = b7 ; Rundumlicht 4 LEDs
;
Blinkinterval = 99 ; Blinkinterval auf x Milisekunden setzen
links_ein = 0 ; Blinker links aus
low links ; Blinker links ausschalten
rechts_ein = 0 ; Blinker rechts aus
low rechts ; Blinker rechts ausschalten
Rundumlicht = 0 ; Rundumlicht aus
low b.1 : low b.2 : low b.3 : low b.4 ; Rundumlicht ausschalten
high Bremse ; Bremslicht einschalten
;
Mitte = 150 ; die Mittelstellung
SP_l = Mitte - 7 ; der Schaltpunkt für low
SP_h = Mitte + 7 ; der Schaltpunkt für high
;
Karlsson:
;
pulsin RC_Bremse, 1, RC_Signal ; RC-Signal vom Fahrtregler abfragen (Bremslicht)
;
if RC_Signal < SP_l or RC_Signal > SP_h then
low Bremse
else
high Bremse
endif
;
pulsin RC_Blinker, 1, RC_Signal ; RC-Signal vom Lenkservo abfragen (Blinker)
;
if RC_Signal < SP_l then
rechts_ein = 0 : links_ein = 1
else
links_ein = 0
endif
;
if RC_Signal > SP_h then
links_ein = 0 : rechts_ein = 1
else
rechts_ein = 0
endif
;
pulsin RC_Rundumlicht, 1, RC_Signal ; RC-Signal vom ??? abfragen (Rundumlicht)
;
if RC_Signal < SP_l or RC_Signal > SP_h then
Rundumlicht = 1
else
Rundumlicht = 0
endif
;
goto Karlsson
;
start1: ; Multitask für die Blinker
;
if links_ein = 1 then
high links : pause Blinkinterval
low links : pause Blinkinterval
else
low links
endif
;
if rechts_ein = 1 then
high rechts : pause Blinkinterval
low rechts : pause Blinkinterval
else
low rechts
endif
;
goto start1
;
start2: ; Multitask für das Rundumlicht
;
if Rundumlicht = 1 then
low b.4 : high b.1 : pause 99
low b.1 : high b.2 : pause 99
low b.2 : high b.3 : pause 99
low b.3 : high b.4 : pause 99
else
low b.1 : low b.2 : low b.3 : low b.4
endif
;
goto start2
;
 



Grüßle, Naubaddi


Naubaddi
Beiträge: 288
Registriert am: 29.01.2019

Themen Überblick

Betreff Absender Datum
Zeitproblem Karlsson 07.02.2020
RE: Zeitproblem Naubaddi 07.02.2020
RE: Zeitproblem BoomBoomMagic 08.02.2020
RE: Zeitproblem BoomBoomMagic 08.02.2020
RE: Zeitproblem Karlsson 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem BoomBoomMagic 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem BoomBoomMagic 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem BoomBoomMagic 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem BoomBoomMagic 09.02.2020
RE: Zeitproblem Karlsson 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem Karlsson 09.02.2020
RE: Zeitproblem Naubaddi 09.02.2020
RE: Zeitproblem BoomBoomMagic 10.02.2020
RE: Zeitproblem Karlsson 10.02.2020
RE: Zeitproblem BoomBoomMagic 10.02.2020
RE: Zeitproblem Karlsson 10.02.2020
RE: Zeitproblem BoomBoomMagic 10.02.2020
RE: Zeitproblem Karlsson 10.02.2020
RE: Zeitproblem BoomBoomMagic 10.02.2020
RE: Zeitproblem Karlsson 10.02.2020
RE: Zeitproblem BoomBoomMagic 10.02.2020
RE: Zeitproblem Karlsson 10.02.2020
RE: Zeitproblem Naubaddi 10.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem Naubaddi 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem Naubaddi 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem Naubaddi 11.02.2020
RE: Zeitproblem Naubaddi 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem Karlsson 11.02.2020
RE: Zeitproblem BoomBoomMagic 11.02.2020
RE: Zeitproblem Karlsson 11.02.2020
RE: Zeitproblem Naubaddi 12.02.2020
RE: Zeitproblem BoomBoomMagic 12.02.2020
RE: Zeitproblem Naubaddi 12.02.2020
RE: Zeitproblem Naubaddi 12.02.2020
RE: Zeitproblem Karlsson 12.02.2020
RE: Zeitproblem Karlsson 15.02.2020
 

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