www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik Problem mit PD0 - ATMega128

Autor: Florian Koch (fkoch)
Datum: 14.05.2008 22:42

Hallo allerseits,
leider habe ich unter den vielen Beiträgen keine Lösung zu meinem
Problem gefunden, deshalb schildere ich nun mal die
folgende Situation:

Ein ATMega128 treibt bei mir über 2 MC1413 insgesamt 12 12V-Relais.
Die Steuerpins sind Layoutbedingt auf verschiedene Ports verteilt, nur
einer davon liegt auf Port D, nämlich PD0. Alle anderen Pins an diesem
Port sind als Eingänge geschaltet. Steuere ich die Relais nun an, so
funktioniert alles blendend, nur PD0 hat im High-Zustand anstelle der 5
nur ~1V zu bieten (Strom nur einige µA), dementsprechend wird das
zugehörige Relais nicht angesteuert. Unterbreche ich nun die Leiterbahn
von PD0 zum 1413, so scheint alles in Ordnung zu sein, es liegen im
High-Zustand 5V an, verbinde ich sie wieder habe ich das gleiche Problem
wie vorher. Die Leiterbahnverbindung hat einen Widerstand von <0,3 Ohm,
daran kann es also nicht liegen (gemessen zwischen Pin AtmegA / Pin
MC1413). Zu den benachbarten Pins, Vcc und GND hat PD0 keine
niederohmige Verbindung. Verbinde ich den Eingangspin des MC1413 mit
einem anderen PortD-Portpin und steuere diesen als Ausgang an, so
funktioniert dies einwandfrei. Ist PD0 defekt, oder habe ich einfach
etwas übersehen?

Quellcode (Auszug)
...
void init_ports(void)
{
   ...
   DDRD |= (1<<DDD0);
   PORTD &= ~(1<<PD0);
   ...
}

...

int main(void)
{
   init_ports();

   PORTD |= (1<<PD0);

   while(1);


   return 0;
}


Florian
Autor: Joan P. (joan)
Datum: 15.05.2008 01:46

Hast du mal nen anderen mega128 probiert? Manchmal hat man die ja
mehrfach rumliegen, falls man mal einen zerschießt..

Sonst scheint dort nur noch SPI-Clock oder INT0 zu sein.. nutzt du davon
etwas zufällig und hast es nur übersehen?

Viel Erfolg!
Autor: Manuel -- (ploana)
Datum: 15.05.2008 12:04
Dateianhang: TEST_mit_AVRstudio4.GIF (52,9 KB, 11 Downloads)
preview image for TEST_mit_AVRstudio4.GIF

Hallo

Mit welcher entwicklungsumgebung und Programmer arbeitest du??

Ein ganz einfacher Test, wenn du mit AVR studio debuggen kannst
( Ich arbeite mit dem AVR Studio4 und einem JTAGICE mkII)

siehe Bild im Datenanhang:
So kannst du den Pin per Hand setzen, oder löschen ...
und du kannst shen ob im DDR auch wirklich das richtige steht!


MfG
manuel

Antwort schreiben

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

Wichtige Regeln - erst lesen, dann posten!

  • Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
  • Aussagekräftigen Betreff wählen
  • Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
  • JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
  • Schaltpläne, Screenshots usw. als PNG oder GIF anhängen

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel






webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net