Forum: Mikrocontroller und Digitale Elektronik Tiny2313 - Port B tot?


von Kiaa (Gast)


Lesenswert?

Hallo!
Ich versuche mit folgendem einfachen Programm Port B meines Tiny2313 auf 
High zu bekommen:

int main( void )
{
  DDRB = 255;
  PORTB = 255;
}

Leider bleibt die Ausgangsspannung auf 0V. Mit Port D funktioniert das 
ganze hingegen wunderbar.
Auch ein anderer Tiny den ich angeschlossen habe hat das gleiche Problem 
:-(

Die Pins sind übrigens nicht von außen beschaltet!

Woran könnte das liegen?

von Kiaa (Gast)


Lesenswert?

Mh, ich habe an allen Pins des Port B gemessen. Alle 0V...

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


Lesenswert?

Passt die Include-Datei des Controllers?

von Kiaa (Gast)


Lesenswert?

So sieht der Code mit include aus:

#include <avr/io.h>
int main( void )
{
  DDRB = 255;
  PORTB = 255;
}

In den AVRStudio-Einstellungen habe ich Tiny2313 als device ausgewählt. 
Sollte passen, oder?

von Karl H. (kbuchegg)


Lesenswert?

Kiaa schrieb:
> So sieht der Code mit include aus:
>
> #include <avr/io.h>
> int main( void )
> {
>   DDRB = 255;
>   PORTB = 255;
> }
>
> In den AVRStudio-Einstellungen habe ich Tiny2313 als device ausgewählt.
> Sollte passen, oder?

grundsätzlich ja.

Lass den mal nicht aus der main raus.
1
#include <avr/io.h>
2
int main( void )
3
{
4
  DDRB = 255;
5
  PORTB = 255;
6
7
  while( 1 )
8
    ;
9
}

von Kiaa (Gast)


Lesenswert?

Also ich hab die Schaltung jetzt noch mal auf einem Breadboard 
aufgebaut:

Fabrikneuer Tiny2313, VCC und GND. Dann ein Widerstand um Reset 
hochzuziehen.
Sonst nix.

Auch hier den Code von oben aufgespielt (mit while). Es kommt NIX an :-(
Port B bleibt tot....

Das kann doch nicht wahr sein!?!??!?!

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


Lesenswert?

Poste bitte Deinen kompletten Code oder das gebrannte .hex-File.

von Coda (Gast)


Lesenswert?

Quellcode ist der oben gepostete:
1
#include <avr/io.h>
2
int main( void )
3
{
4
  DDRB = 255;
5
  PORTB = 255;
6
7
  while( 1 )
8
    ;
9
}

von Karl H. (kbuchegg)


Lesenswert?

Ich kann mir nur noch vorstellen, dass beim Brennen in den Tiny 
irgendwas schief geht.

Den Prozess nochmal gründlich untersuchen.
* Brennst du auch wirklich das richtige Hex-File
* den µC auslesen und nachsehen was da eigentlich drinnen steht


Oder der Tiny hat einen Schlag weg. Aber davon würde ich erst mal nicht 
ausgehen. Kommt zwar vor, aber meistens sitzt das Problem dann doch vor 
dem Monitor.

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


Lesenswert?

Ich denke auch, dass irgendeine Einstellung nicht stimmt. Kann man aber 
nur raten, da sich der Input seitens des OP in Grenzen hält.

von Wichtige Regeln - erst lesen, dann posten! (Gast)


Lesenswert?

Ein kurzgeschlossener Pin am selben oder anderen Port kann auch für 
dasselbe Ergebnis sorgen.

von Kiaa (Gast)


Angehängte Dateien:

Lesenswert?

So, hier dann mal ein paar mehr Infos :-)

Ein Bild der Schaltung, der Fuses, des Codes und das Hex-File habe ich 
angehängt.
Ich hab's mit mehreren (neuen!) 2313s ausprobiert, kein Erfolg :-(

Ich verzweifele hier!!!

von Malte M. (maltem)


Lesenswert?

Karl heinz Buchegger schrieb:
> Brennst du auch wirklich das richtige Hex-File

Das ist denke ich die entscheidende Frage. Das AVR-Studio wählt im 
Regelfall nicht automatisch die passende Datei. Schau mal im 
"Program"-reiter, was da steht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.