Forum: Projekte & Code Debug-Anwendung für Gabotronics XMINILAB v2.3


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,

zum schnellen Debuggen von Controllerprojekten habe ich auf o.g. 
Entwicklungsbrett vor einiger Zeit mal eine Anwendung programmiert, um 
über ein serielles Protokoll (1 Leitung und Masse) verschiedenste Daten 
sichtbar machen zu können. Hierbei können kleinste Controller (Tiny13, 
Tiny10...) ohne viel Aufwand an jedem I/O-Pin Daten senden und das 
XMINILAB macht diese auf senem OLED sichtbar. Die Routinen zur Ausgabe 
sind beispielsweise in diesem Projekt enthalten:

Beitrag "Motorola T81 Ladegerät: Tuning"

Infos über das XMINILAB gibt es hier:

http://www.gabotronics.com/development-boards/xmega-xminilab.htm

Die Einspeisung des Signal findet an Pin "EXT" statt, der gegenüber 
Masse positiv sein muss.

Auf dem Foto ist eine Beispielausgabe zu sehen. Die Datenübergabe kann 
HEX, DEZIMAL uns ASCII sein, außerdem kann man auf die UART des XMINILAB 
routen und den Bargraf am rechten Rand mit 8 Bit füllen, um schnelle 
Signale eines einzelnen Bytes zu sehen. Vielleicht hat jemand Lust, sich 
das Ganze auf sein angestaubtes XMINILAB zu spielen... ;-)

Ich benutze den Sniffer so gut wie jeden Tag, beruflich und auch privat.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Und hier noch schnell eine Spezifikation zur Pulsgenerierung:
1
1. Displaypin Spezifikation:
2
3
- 0->1->0->1 - Pulsbreite: jeweils >=1µs bis maximal 30µs, symmetrisch!
4
- Startbit: 3 Flankenwechsel -> Pause
5
- Logisch 1: 2 Flankenwechsel -> Pause
6
- Logisch 0: 1 Flankenwechsel -> Pause
7
8
Pause zwischen Bits: >=5µs, jedoch mindestens 2,5-fache Pulsbreite
9
Pause zwischen Bytes: >=30µs
10
11
Die Pulse eines Bits dürfen nicht wesentlich jittern.
12
Pausen zwischen den Bits sind unkritisch und können vom Sender gestreckt werden.
13
Gleiches gilt für Pausen zwischen Bytes.
14
15
Laufzeit für ein komplettes Zeichen inklusive Header und Adresse bei Minimal-Timing: ~180µs
16
17
Die Polarität der Daten ist irrelevant.
18
Der Pegel bleibt auf dem letzten Pegel eines Datenframes stehen, bis ein neuer Frame kommt.
19
Man kann hier wunderbar die Pin-Toggle-Funktion nutzen, die viele Controller von Haus aus bieten.
20
21
22
2. Datenformat:   
23
24
2.1. Header
25
26
  0000  LCD, HEX Daten
27
  0001  LCD, DEZ Daten
28
  0010  LCD, ASC Daten
29
  0011  reserviert
30
31
  0100  LED
32
  0101  reserviert
33
  0110  reserviert
34
  0111  reserviert
35
36
  1000  RS232, HEX Daten
37
  1001  RS232, DEZ Daten
38
  1010  RS232, ASC Daten
39
  1011  reserviert
40
41
  1100  reserviert
42
  1101  reserviert
43
  1110  reserviert
44
  1111  reserviert
45
46
47
2.2. Adresse
48
49
  xxxx xxxx  absolute Position auf dem LCD oder in der UART-Zeile
50
51
52
2.3. Datenbyte
53
  
54
  xxxx xxxx  Nutzdaten, die dargestellt werden sollen
55
56
57
2.4. Aufbau Datenframe
58
59
  LCD:  Startbit, Header (4Bit), Adresse (8Bit, 0x00-0xFF), Datenbyte (8Bit)  
60
  RS232:  Startbit, Header (4Bit), Adresse (8Bit, 0x00-0x27), Datenbyte (8Bit)
61
  LED:  Startbit, Header (4Bit), Adresse (8Bit, 0x00), DatenByte (8Bit, LLLLLLLL, 1 Bit pro LED)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.