Picaxe code testen

#8049702
Lesenswert?

[code] ' ===================================================== ' DISCO LICHT fuer PICAXE 20M2 ' 8 LEDs an B.0 bis B.7 ' ' LEDs gegen PLUS geschaltet ' ' LOW = LED EIN ' HIGH = LED AUS ' ' Anschluss: ' ' +5V ' | ' 330R ' | ' LED ' | ' PICAXE Ausgang B.x ' ' =====================================================

;#picaxe 20m2

' ----------------------------------------------------- ' PICAXE schneller laufen lassen ' -----------------------------------------------------

setfreq m8

' ----------------------------------------------------- ' Alle Pins von Port B als Ausgang ' -----------------------------------------------------

dirsB = %11111111

' ----------------------------------------------------- ' Alle LEDs AUS ' Bei gemeinsamer Anode bedeutet: ' ' HIGH = AUS ' LOW = EIN ' -----------------------------------------------------

pinsB = %11111111

' ===================================================== ' HAUPTSCHLEIFE ' =====================================================

do

' ===================================================== ' 1. Lauflicht nach links ' =====================================================

low B.0 pause 70 high B.0

low B.1 pause 70 high B.1

low B.2 pause 70 high B.2

low B.3 pause 70 high B.3

low B.4 pause 70 high B.4

low B.5 pause 70 high B.5

low B.6 pause 70 high B.6

low B.7 pause 70 high B.7

' ===================================================== ' 2. Lauflicht nach rechts ' =====================================================

low B.7 pause 70 high B.7

low B.6 pause 70 high B.6

low B.5 pause 70 high B.5

low B.4 pause 70 high B.4

low B.3 pause 70 high B.3

low B.2 pause 70 high B.2

low B.1 pause 70 high B.1

low B.0 pause 70 high B.0

' ===================================================== ' 3. Alle LEDs EIN ' =====================================================

pinsB = %00000000 pause 300

' ===================================================== ' 4. Alle LEDs AUS ' =====================================================

pinsB = %11111111 pause 300

' ===================================================== ' 5. Wechselblinken ' =====================================================

' Muster 10101010 ' einige LEDs EIN ' andere AUS

pinsB = %10101010 pause 250

' Muster 01010101 ' umgekehrt

pinsB = %01010101 pause 250

' ===================================================== ' 6. Schnelles Blitzen ' =====================================================

for b0 = 1 to 12

1
pinsB = %00000000
2
pause 40
3

4
pinsB = %11111111
5
pause 40

next b0

' ===================================================== ' 7. Von außen nach innen ' =====================================================

low B.0 low B.7 pause 100 high B.0 high B.7

low B.1 low B.6 pause 100 high B.1 high B.6

low B.2 low B.5 pause 100 high B.2 high B.5

low B.3 low B.4 pause 100 high B.3 high B.4

' ===================================================== ' 8. Von innen nach außen ' =====================================================

low B.3 low B.4 pause 100 high B.3 high B.4

low B.2 low B.5 pause 100 high B.2 high B.5

low B.1 low B.6 pause 100 high B.1 high B.6

low B.0 low B.7 pause 100 high B.0 high B.7

' ===================================================== ' 9. Zufallsähnliches Muster ' =====================================================

pinsB = %11001100 pause 180

pinsB = %00110011 pause 180

pinsB = %11110000 pause 180

pinsB = %00001111 pause 180

pinsB = %10011001 pause 180

pinsB = %01100110 pause 180

' ===================================================== ' Ende der Hauptschleife ' Alles beginnt wieder von vorne ' =====================================================

loop /[code]

#8049707
Lesenswert?

1
' =====================================================
2
'   DISCO LICHT fuer PICAXE 20M2
3
'   8 LEDs an B.0 bis B.7
4
'
5
'   LEDs gegen PLUS geschaltet
6
'
7
'   LOW  = LED EIN
8
'   HIGH = LED AUS
9
'
10
'   Anschluss:
11
'
12
'   +5V
13
'    |
14
'   330R
15
'    |
16
'   LED
17
'    |
18
'   PICAXE Ausgang B.x
19
'
20
' =====================================================
21

22
;#picaxe 20m2
23

24
' -----------------------------------------------------
25
' PICAXE schneller laufen lassen
26
' -----------------------------------------------------
27

28
setfreq m8
29

30
' -----------------------------------------------------
31
' Alle Pins von Port B als Ausgang
32
' -----------------------------------------------------
33

34
dirsB = %11111111
35

36
' -----------------------------------------------------
37
' Alle LEDs AUS
38
' Bei gemeinsamer Anode bedeutet:
39
'
40
' HIGH = AUS
41
' LOW  = EIN
42
' -----------------------------------------------------
43

44
pinsB = %11111111
45

46
' =====================================================
47
' HAUPTSCHLEIFE
48
' =====================================================
49

50
do
51

52
' =====================================================
53
' 1. Lauflicht nach links
54
' =====================================================
55

56
  low B.0
57
  pause 70
58
  high B.0
59

60
  low B.1
61
  pause 70
62
  high B.1
63

64
  low B.2
65
  pause 70
66
  high B.2
67

68
  low B.3
69
  pause 70
70
  high B.3
71

72
  low B.4
73
  pause 70
74
  high B.4
75

76
  low B.5
77
  pause 70
78
  high B.5
79

80
  low B.6
81
  pause 70
82
  high B.6
83

84
  low B.7
85
  pause 70
86
  high B.7
87

88
' =====================================================
89
' 2. Lauflicht nach rechts
90
' =====================================================
91

92
  low B.7
93
  pause 70
94
  high B.7
95

96
  low B.6
97
  pause 70
98
  high B.6
99

100
  low B.5
101
  pause 70
102
  high B.5
103

104
  low B.4
105
  pause 70
106
  high B.4
107

108
  low B.3
109
  pause 70
110
  high B.3
111

112
  low B.2
113
  pause 70
114
  high B.2
115

116
  low B.1
117
  pause 70
118
  high B.1
119

120
  low B.0
121
  pause 70
122
  high B.0
123

124
' =====================================================
125
' 3. Alle LEDs EIN
126
' =====================================================
127

128
  pinsB = %00000000
129
  pause 300
130
' =====================================================
131
' 4. Alle LEDs AUS
132
' =====================================================
133

134
  pinsB = %11111111
135
  pause 300
136

137
' =====================================================
138
' 5. Wechselblinken
139
' =====================================================
140

141
' Muster 10101010
142
' einige LEDs EIN
143
' andere AUS
144

145
  pinsB = %10101010
146
  pause 250
147

148

149
' Muster 01010101
150
' umgekehrt
151

152
  pinsB = %01010101
153
  pause 250
154

155
' =====================================================
156
' 6. Schnelles Blitzen
157
' =====================================================
158

159
  for b0 = 1 to 12
160

161
    pinsB = %00000000
162
    pause 40
163

164
    pinsB = %11111111
165
    pause 40
166

167
  next b0
168

169
' =====================================================
170
' 7. Von außen nach innen
171
' =====================================================
172

173
  low B.0
174
  low B.7
175
  pause 100
176
  high B.0
177
  high B.7
178

179
  low B.1
180
  low B.6
181
  pause 100
182
  high B.1
183
  high B.6
184

185
  low B.2
186
  low B.5
187
  pause 100
188
  high B.2
189
  high B.5
190

191
  low B.3
192
  low B.4
193
  pause 100
194
  high B.3
195
  high B.4
196

197
' =====================================================
198
' 8. Von innen nach außen
199
' =====================================================
200

201
  low B.3
202
  low B.4
203
  pause 100
204
  high B.3
205
  high B.4
206

207
  low B.2
208
  low B.5
209
  pause 100
210
  high B.2
211
  high B.5
212

213
  low B.1
214
  low B.6
215
  pause 100
216
  high B.1
217
  high B.6
218

219
  low B.0
220
  low B.7
221
  pause 100
222
  high B.0
223
  high B.7
224

225
' =====================================================
226
' 9. Zufallsähnliches Muster
227
' =====================================================
228

229
  pinsB = %11001100
230
  pause 180
231

232
  pinsB = %00110011
233
  pause 180
234

235
  pinsB = %11110000
236
  pause 180
237

238
  pinsB = %00001111
239
  pause 180
240

241
  pinsB = %10011001
242
  pause 180
243

244
  pinsB = %01100110
245
  pause 180
246

247
' =====================================================
248
' Ende der Hauptschleife
249
' Alles beginnt wieder von vorne
250
' =====================================================
251

252
loop
#8049709
Lesenswert?

1
' =====================================================
2
'   DISCO LICHT fuer PICAXE 20M2
3
'   8 LEDs an B.0 bis B.7
4
'
5
'   LEDs gegen PLUS geschaltet
6
'
7
'   LOW  = LED EIN
8
'   HIGH = LED AUS
9
'
10
'   Anschluss:
11
'
12
'   +5V
13
'    |
14
'   330R
15
'    |
16
'   LED
17
'    |
18
'   PICAXE Ausgang B.x
19
'
20
' =====================================================
21

22
;#picaxe 20m2
23

24
' -----------------------------------------------------
25
' PICAXE schneller laufen lassen
26
' -----------------------------------------------------
27

28
setfreq m8
29

30

31
' -----------------------------------------------------
32
' Alle Pins von Port B als Ausgang
33
' -----------------------------------------------------
34

35
dirsB = %11111111
36

37

38
' -----------------------------------------------------
39
' Alle LEDs AUS
40
' Bei gemeinsamer Anode bedeutet:
41
'
42
' HIGH = AUS
43
' LOW  = EIN
44
' -----------------------------------------------------
45

46
pinsB = %11111111
47

48

49
' =====================================================
50
' HAUPTSCHLEIFE
51
' =====================================================
52

53
do
54

55

56
' =====================================================
57
' 1. Lauflicht nach links
58
' =====================================================
59

60
  low B.0
61
  pause 70
62
  high B.0
63

64
  low B.1
65
  pause 70
66
  high B.1
67

68
  low B.2
69
  pause 70
70
  high B.2
71

72
  low B.3
73
  pause 70
74
  high B.3
75

76
  low B.4
77
  pause 70
78
  high B.4
79

80
  low B.5
81
  pause 70
82
  high B.5
83

84
  low B.6
85
  pause 70
86
  high B.6
87

88
  low B.7
89
  pause 70
90
  high B.7
91

92

93

94
' =====================================================
95
' 2. Lauflicht nach rechts
96
' =====================================================
97

98
  low B.7
99
  pause 70
100
  high B.7
101

102
  low B.6
103
  pause 70
104
  high B.6
105

106
  low B.5
107
  pause 70
108
  high B.5
109

110
  low B.4
111
  pause 70
112
  high B.4
113

114
  low B.3
115
  pause 70
116
  high B.3
117

118
  low B.2
119
  pause 70
120
  high B.2
121

122
  low B.1
123
  pause 70
124
  high B.1
125

126
  low B.0
127
  pause 70
128
  high B.0
129

130

131

132
' =====================================================
133
' 3. Alle LEDs EIN
134
' =====================================================
135

136
  pinsB = %00000000
137
  pause 300
138

139

140
' =====================================================
141
' 4. Alle LEDs AUS
142
' =====================================================
143

144
  pinsB = %11111111
145
  pause 300
146

147

148

149
' =====================================================
150
' 5. Wechselblinken
151
' =====================================================
152

153
' Muster 10101010
154
' einige LEDs EIN
155
' andere AUS
156

157
  pinsB = %10101010
158
  pause 250
159

160

161
' Muster 01010101
162
' umgekehrt
163

164
  pinsB = %01010101
165
  pause 250
166

167

168

169
' =====================================================
170
' 6. Schnelles Blitzen
171
' =====================================================
172

173
  for b0 = 1 to 12
174

175
    pinsB = %00000000
176
    pause 40
177

178
    pinsB = %11111111
179
    pause 40
180

181
  next b0
182

183

184

185
' =====================================================
186
' 7. Von außen nach innen
187
' =====================================================
188

189
  low B.0
190
  low B.7
191
  pause 100
192
  high B.0
193
  high B.7
194

195
  low B.1
196
  low B.6
197
  pause 100
198
  high B.1
199
  high B.6
200

201
  low B.2
202
  low B.5
203
  pause 100
204
  high B.2
205
  high B.5
206

207
  low B.3
208
  low B.4
209
  pause 100
210
  high B.3
211
  high B.4
212

213

214

215
' =====================================================
216
' 8. Von innen nach außen
217
' =====================================================
218

219
  low B.3
220
  low B.4
221
  pause 100
222
  high B.3
223
  high B.4
224

225
  low B.2
226
  low B.5
227
  pause 100
228
  high B.2
229
  high B.5
230

231
  low B.1
232
  low B.6
233
  pause 100
234
  high B.1
235
  high B.6
236

237
  low B.0
238
  low B.7
239
  pause 100
240
  high B.0
241
  high B.7
242

243

244

245
' =====================================================
246
' 9. Zufallsähnliches Muster
247
' =====================================================
248

249
  pinsB = %11001100
250
  pause 180
251

252
  pinsB = %00110011
253
  pause 180
254

255
  pinsB = %11110000
256
  pause 180
257

258
  pinsB = %00001111
259
  pause 180
260

261
  pinsB = %10011001
262
  pause 180
263

264
  pinsB = %01100110
265
  pause 180
266

267

268

269
' =====================================================
270
' Ende der Hauptschleife
271
' Alles beginnt wieder von vorne
272
' =====================================================
273

274
loop
#8049717
Lesenswert?

Dies ist das Testforum, Joachim. Hier ist es vollkommen okay – hier /sollen/ solche Dinge probiert werden.

Wenn er die überflüssigen Leerzeilen entsorgen würde, würd’s auch in ’nem regulären Beitrag nicht zu negativ auffallen, btw.

: Bearbeitet durch User
#8049773
Lesenswert?

Joachim B. schrieb:

Nein!

Woraus leitest du es ab? Es ist ja nicht so, dass es hier irgendjemanden stören sollte, weil es per Definition keinen Threadverlauf gibt, den es stören könnte.

Stattdessen lese ich, dass dieses Subforum zum Testen von Forenfunktionen gedacht ist und ab und zu geleert würde. Code-Tags sind eine Forenfunktion, und wenn jemand es nach fast zehn Jahren im Forum noch nicht bedienen kann, dann ist es doch eher löblich, dass er es hier versucht?

So sehr mir das in ’nem regulären Subforum missfallen würde: Ihm hier damit ans Bein pinkeln zu wollen, ist schon ziemlich deutsch.

#8049930
Lesenswert?

Joachim B. schrieb:

Nein weil du mitspielst, ebenfalls mit langen Text beim Zitieren!

Ich wollte lediglich zeigen, wie es aussehen würde. Im Nachhinein betrachtet hätte ich ein paar mehr Leerzeilen rauslöschen sollen, damit’s besser sichtbar wird, ja.

Aber erlaube mir die Frage: Inwiefern berührt dich dieses aus deiner Sicht offensichtlich untragbare Verhalten in einem Thread im Test-Subforum? Was macht das mit dir?

#8051668
Lesenswert?

' ===================================================== ' 5. Wechselblinken ' =====================================================

' Muster 10101010 ' einige LEDs EIN ' andere AUS

pinsB = %10101010 pause 250

' Muster 01010101 ' umgekehrt

pinsB = %01010101 pause 250

' ===================================================== ' 6. Schnelles Blitzen ' =====================================================

for b0 = 1 to 12

1
pinsB = %00000000
2
pause 40
3

4
pinsB = %11111111
5
pause 40

next b0

' ===================================================== ' 7. Von außen nach innen ' =====================================================

low B.0 low B.7 pause 100 high B.0 high B.7

low B.1 low B.6 pause 100 high B.1 high B.6

low B.2 low B.5 pause 100 high B.2 high B.5

low B.3 low B.4 pause 100 high B.3 high B.4

Beitrag #8051669 wurde von einem Moderator gelöscht.
Beitrag #8051728 wurde von einem Moderator gelöscht.
Beitrag #8054628 wurde von einem Moderator gelöscht.
#8058991
Lesenswert?

;#picaxe 20m2

setfreq m8

'---------------------------------- ' Ausgänge '----------------------------------

dirsB = %11111111

symbol TA = pinC.6

symbol PROGRAMM = b0 symbol EVENT = b1

symbol Z = b2 symbol HELL = b3

symbol EEADR = b10 ' nur intern genutzt

'================================================= ' LETZTES PROGRAMM LADEN (EEPROM) '=================================================

EEPROM 0,(0) read 0, PROGRAMM

' falls ungültig if PROGRAMM > 7 then PROGRAMM = 0 endif

' Ausgänge Startzustand high B.0 high B.1 high B.2 high B.3 high B.4 high B.5

high C.0 high C.1 high C.2 high C.3

main:

gosub Taster

select case PROGRAMM

case 0 gosub Bahnhof

case 1 gosub Lauflicht

case 2 gosub RGB

case 3 gosub Disco

case 4 gosub Blaulicht

case 5 gosub Strobe

case 6 gosub Nacht

case 7 gosub Party

endselect

goto main

'================================================= 'Taster (gegen Masse) '=================================================

Taster:

EVENT = 0

if TA = 1 then return endif

pause 30

if TA = 1 then return endif

Z = 0

do pause 10 inc Z loop while TA = 0 and Z < 100

if Z > 80 then

EVENT = 3

do loop while TA = 0

goto EventBearbeiten

endif

pause 250

if TA = 0 then

EVENT = 2

do loop while TA = 0

else

EVENT = 1

endif

EventBearbeiten:

select case EVENT

case 1

inc PROGRAMM if PROGRAMM > 7 then PROGRAMM = 0 endif

write 0, PROGRAMM ' EEPROM speichern

case 2

if PROGRAMM = 0 then PROGRAMM = 7 else dec PROGRAMM endif

write 0, PROGRAMM ' EEPROM speichern

case 3

gosub AllesAus

endselect

return

'================================================= 'Alles aus '=================================================

AllesAus:

high B.0 high B.1 high B.2 high B.3 high B.4 high B.5

high C.0 high C.1 high C.2 high C.3

do loop while TA = 1

do loop while TA = 0

return

'================================================= '0 Bahnhof '=================================================

Bahnhof:

low B.3 low B.5 pause 100

high B.3 high B.5 pause 100

return

'================================================= '1 Lauflicht '=================================================

Lauflicht:

low B.0 pause 80 high B.0

low B.1 pause 80 high B.1

low B.2 pause 80 high B.2

low B.3 pause 80 high B.3

low B.4 pause 80 high B.4

low B.5 pause 80 high B.5

return

'================================================= '2 RGB '=================================================

RGB:

low C.2 high C.1 high C.0 pause 500

high C.2 low C.1 high C.0 pause 500

high C.2 high C.1 low C.0 pause 500

return

'================================================= '3 Disco '=================================================

Disco:

random w5

if bit0=1 then low B.0 else high B.0 endif if bit1=1 then low B.1 else high B.1 endif if bit2=1 then low B.2 else high B.2 endif if bit3=1 then low B.3 else high B.3 endif if bit4=1 then low B.4 else high B.4 endif if bit5=1 then low B.5 else high B.5 endif

if bit7 = 1 then low C.1 else high C.1 endif

if bit6 = 1 then low C.0 else high C.0 endif

pause 120

return

'================================================= '4 Blaulicht '=================================================

Blaulicht:

low B.2 high C.0 pause 120

high B.2 low C.0 pause 120

return

'================================================= '5 Strobe '=================================================

Strobe:

low B.4 low B.5 low C.3 pause 40

high B.4 high B.5 high C.3 pause 40

return

'================================================= '6 Nachtbetrieb '=================================================

Nacht:

low B.3

high B.5 high B.0 high B.1 high B.2

pause 500

return

'================================================= '7 Party '=================================================

Party:

low B.4 low B.5

low C.2 pause 100 high C.2

low C.1 pause 100 high C.1

low C.0 pause 100 high C.0

return

;Bahnhofdisco mit Waggon ; +---------------------------------------------------------------------------------------------------+

; ; Hinten B.5 Pa Waggon ; Weis ; +--++--++--++----++--+++--+
; | |
; ---------+++--------+++----------+++----+ | | |
; | | R G B | |; ; Green Rot | | ; b.2 b.0 | c.2 c.1 c.0 ; | ; + +--++--++--++----++--+++--+ ; + ; c.2 rot + ; #Spot ; Disco #weis ; # B.4 ; Schein R c.0 ; Green c.1 + werfer G c.2 ; + Tanz B c.3 ; + Fläche W ;

; Blau c.0 + ; +
; +

; b.2 b.1 6 b.0 ; Blau Green Rot
; | | ; ---------+++--------++++---------++++---+ rot

; La B.3 Pa C.3 ; Green ; Weis Pa B.1

; +-------------------+
; EisWagen ;La=Strassenlampe ;Pa=Scheinwerfer für Disco Weis seri_out pin19 ;Spot Blender +-------------------+

; port b.0-------------b.7 ; +-------------------+ ; |PicAxe 20M2 |
; +-------------------+
; port c.7-----------c.0
;
; ; +-------------------------------------------------------------------------------------------------------+

;picaxe 20m2 Bahnhofdisco ; ; +---v---+
; +5V |1 20 | masse ; PD0 D1 rxd | | txd Serial out (DAC) Eiswagen
; ADC C.7 | | B.0
; jn C.6 | | B.1 pwm
; Eiswagen hpwmA C.5 | | B.2
; hpwmB C.4 | | B.3 La weis ; hpwmC/pwm C.3 | | B.4 hpwmD spot
; pwm C.2 | | B.5 i2c
; PD6 C.1 | | B.6 hserin ; hserout C.ß | | B.7 i2c
; +-------+
;

;-------------------------------------------------------------------------------------------------

#8059007
Lesenswert?

Al. K. schrieb:

warum

Weil die Zeile vor der Verschiebung zu lang ist und umgebrochen wird. Das macht die Forensoftware für die Desktopdarstellung automatisch, und für die Mobildarstellung sind ASCII-Zeichnungen ohne pre- oder code-Tag völlig ungeeignet, weil dort eine proportionale Schriftart genutzt wird, also alle Zeichen unterschiedlich breit sind.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren