Hallo zusammen, ich benutze den MFRC523 (NXP) in Verbindung mit dem C8051F120 von Silabs. Der Chip ist an der SPI angebunden und ich kann mit ihm auch soweit kommunizieren. Der integrierte Selbsttest funktioniert auch, d.h. im FIFO des MFRC523 stehen genau die Bytes wie im Handbuch beschrieben. Ich versuche gerade eine Verbindung mit dem NTAG203F (NXP) herzustellen. Eine Antwort (0x44 0x00) auf das Kommando 0x26 (REQA) bekomme ich auch wie im Datenblatt beschrieben. Nun habe ich versucht die Anticollision durchzuführen, aber dabei erhalte ich nie eine Antwort, der FIFO ist immer leer, auch wenn ich etwas länger auf eine Antwort warte. Kennt sich jemand von euch damit aus und kann mir eventuell einen Tip geben, was ich falsch mache? MfG, Daniel
Gast
#3316686
> Kennt sich jemand von euch damit aus und kann mir eventuell einen Tip > geben, was ich falsch mache? Der erste Tip wäre, wenn du einen Bezug auf ein Datenblatt machst, dieses auch geschickterweise zu verlinken :) Der zweite wäre, deinen Code zu posten. Und der dritte: eine Beschreibung dessen, was bereits funktioniert (z.B. UID lesen, etc.), und worauf der bestehende Code aufbaut. Hast du bei NxP bzw. auf deren Mifare-Seite schon geschaut, ob es einen (mehr oder weniger) fertigen Stack oder zumindest ne API gibt? Ralf
Hallo Ralf, vielen Dank für deine Antwort. Die Datenblattverweise habe ich total vergessen, also hier zur Ergänzung noch die Verweise. NXP MFRC523 - http://www.nxp.com/documents/data_sheet/MFRC523.pdf NTAG203F - http://www.nxp.com/documents/data_sheet/NTAG203F.pdf Nach einer API habe ich auch geschaut und habe auch eine gefunden (http://www.nxp.com/documents/software/200312.zip), nur ist mir bisher noch nicht klar, wie ich diese einbinden soll, da ich nicht den vollen Funktionsumfang benötige. Mein bisheriger Code kann nur wie oben schon beschrieben Mittels REQA Kommando den Tag erkennen. Das sehe ich am Inhalt des FIFO's nach absenden des Kommandos. Da stehen dann genau die beiden Bytes 0x44 & 0x00 wie im Datenblatt vom Tag beschrieben. Das Problem was ich eigentlich nun habe ist, dass nachdiesem REQA Kommando laut Datenblatt der Tag in den Ready 1 state (S.7 Fig.5) gehen sollte und man von dort aus entweder mit der Anticollision oder dem direktem Select fortfahren kann. Nun hatte ich versucht die Anticollision durchzuführen, habe dabei aber keine Antwort vom Tag mehr erhalten und ich weis nicht warum. Nur zur Information, das Tag wurde nicht bewegt. Hier mein bisheriger Code (ist nur ein Ausschnitt):
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 | |
MfG, Daniel
Hast du ein Oszi zur Verfügung? Wenn ja, schau doch einfach was a, Feld passiert!
Gast
#3317813
Ich sehe nirgends wo du denn das SEL/SELECT Kommando (9x + nvb + uidPattern) in den FIFO schreibst. Der Code ist ledier etwas unübersichtlich dass ich das aber auch übersehen habe. Funktionen für SendRequest(..) und ReadResponse(..) wären ganz nett.
Maxx schrieb: > Ich sehe nirgends wo du denn das SEL/SELECT Kommando (9x + nvb + > uidPattern) in den FIFO schreibst. > > Der Code ist ledier etwas unübersichtlich dass ich das aber auch > übersehen habe. Funktionen für SendRequest(..) und ReadResponse(..) > wären ganz nett. Hallo Maxx, das SELECT habe ich im Code nicht mehr gemacht, aber ich habe anstelle von SELECT jetzt direkt ein READ versucht, weil das ja die 2. Option sein soll, die laut Datenblatt (S. 7 Fig. 5) möglich ist. Das READ Kommando findest du im unteren Drittel des Codes direkt nach folgendem Kommentar:
1 | |
2 | |
3 | |
4 | |
Der Effekt ist bei SELECT wie auch bei READ der gleiche, ich erhalte einfach keine Antwort vom Tag. @Robert S. : Ich habe ein Oszi zur verfügung, ich werde es mir mal Ansehen. MfG, Daniel
Hier ist der Code noch mal hoffentlich etwas verständlicher:
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 | |
MfG, Daniel
Gast
#3324022
Hi Daniel, > Nach einer API habe ich auch geschaut und habe auch eine gefunden, > nur ist mir bisher noch nicht klar, wie ich diese einbinden soll, da ich > nicht den vollen Funktionsumfang benötige. Du musst sie ja nicht unbedingt einbinden, es reicht ja auch einfach, wenn du darin schaust, wie etwas gelöst ist :) Bisweilen ist ja auch gleich Beispielcode mit dabei. Ansonsten gibt's glaub ich auch noch diverse PC-Software von NxP, mit der ein MFRC523 direkt angesprochen werden kann, inklusive Ausgabe der jeweiligen Kommandos, d.h. da kannst du auch "spicken". Ralf
Ich weiss nicht ob es einen unterschied zwischen mfrc523 und 522 gibt, aber sonst nutze ich den rc522 source code der durch web fliegt. Nach meiner modifizierung laeuft der auch mit 7byte-uids. Iso 14443-4 kommunikation fehlt allerdings noch: https://github.com/rena2019/myarduino/blob/master/RC522DumpMifare.ino
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.