www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mega8515 startet mit Signal an UART nicht


Autor: Marc L. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend,

ich habe mir den DMX (RS-485, 250kBaud) Analyzer von Henne nachgebaut.
http://hoelscher-hi.de/hendrik/light/dmxanalyzer.htm
Funktioniert soweit auch aber:
Wenn ich das Teil einschalte und bereits ein DMX Sender angeschlossen 
und aktiv ist, startet der µC nicht. Schalte ich den Sender erst an, 
nachdem der µC läuft, funktioniert es.
Der DMX Sender ist das USB Interface von Digital Enlightenment.
Wenn ich ein anderen Sender (Zero88 Sirius) anschliesse startet der µC 
auch mit anliegendem Signal. Info: Dat Zero88 sendet weniger Kanäle 
etwas längere Breaks und IBGs.

So als nächstes habe ich die Schaltung ein wenig geändert. 
Resetbeschaltung 10k gegen VCC und 100n gegen GND, 2x 100n direkt am 
7805, einen weiteren 100n am SN75176. Das half aber auch nichts.

Dann habe ich mir die Firmware vorgenommen und am Schluss ist das noch 
übrig geblieben.
#include <avr/io.h>
#include <avr/interrupt.h>

int main ( void )
{
  cli();

  DDRB |= (1<<PB0);
  PORTB |= (1<<PB0);

  DDRD |= (1<<PD1) | (1<<PD2);  // PD0 RX
                                // PD1 TX
                                // PD2 Driver Enable

  uint32_t SysCnt = 0;

  while ( 1 )
  {
    if ( ++SysCnt >= 480000 )
    {
      SysCnt = 0;
      PORTB ^= (1<<PB0);
    }
  }

  return 0;
}

Der Pin PB0 wird geschaltet wenn der µC läuft und ich dann das USB 
Interface aktiviere. Er wird nicht geschaltet, wenn das Interface 
bereits sendet und ich die Schaltung erst dann mit Strom versorge.

Ist soetwas normal? Fehler in der Hardware? Fehler in der Software?

Viele Grüße
Marc L.

Autor: Marc L. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also,
ich habe noch etwas weiter getestet. Zuerst mit galvanischer Trennung 
des SN75176, hat nichts gebracht.
Dann habe ich herausgefunden, dass das nur passiert, wenn Pin 4 vom 
SN75176 nicht auf GND liegt. Und das tut er ja beim Reset vom Mega 
nicht. Mit einem Pulldown (10k) an dem Pin funktioniert es jetzt.
Kann mir das wer erklären? Warum stört das den Mega? Habe leider auch 
kein Oszi um mal zu schauen, was da passiert.

Viele Grüße
Marc L.

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.