mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hitze beim at90s2313


Autor: Marvin M (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
HI

ich habe gerade mit mikrocontroller angfangen.
Nun programmieren und so läuft alles wunderbar, aber ich hab jetzt ein
Programm geschrieben, bei dem über INT0 und INT1 2 Interrupts
ausgelöst werden, INT0 erhöht einen Counter um 1, dann soll wenn
INT1 ausgelöst  die LED  blinken, bis der Counter wieder bei 0 ist.
nun nichts funzt und der mc wird verdammt HEIß.
Ich habe die LED mit einem 1k Widerstand gegen VCC geschaltet. (wie im
Tutorial am PORTB) und die beiden schalter an  PortD
ok schaut euch bitte mal meinen quellcode und sagt wenn ihr was findet

schon mal danke!!!!

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein at90s2313 ist kein Pentium. Den kriegst Du also nicht mit Software
heiß.

Du hast einen Hardwarefehler.


Peter

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sieht deine Spannungsversorgung aus? Kannst Du den Strom messen?

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Ich habe die LED mit einem 1k Widerstand gegen VCC geschaltet.
(wie im Tutorial am PORTB) und die beiden schalter an  PortD
  nop
  brne zaehl2

  ldi mp,0xff
  OUT PORTB,mp"


Hallo,

Wo genau hast Du denn die LED angeschlossen? Du schaltest immer einen
ganzen Port und nicht ein einzelnes Bit ein. Wo genau die beiden
Schalter?

Außerdem:
  ldi temp,0b00000000
  out DDRD,temp  ;als eingang konfi

  ldi temp,0xFF
  ;out DDRB,temp

PortB sollte noch als Ausgang konfiguriert werden. Kommentarzeichen
weg. Zwei mal wird PortB auf FF gesetzt, aber nirgends zurück auf 00.
blinken kann es also nicht.

Autor: edi-edi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
plusaufminusundminusaufplus?!?

Autor: marvin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK LEUTE Habs hinbekommen

 so funtionierts anscheinend: hab jeweils 500 OHM zwischen schalter und
Masse gelegt(sonst wie Tutorial) . Kann ein starker Strom zw. INT1 und
INT0 fliessen??(ohne WIderstand)

im Tutorial hab die ja nur 1k Ohm widerstand zw VCC und Port
kann da nicht ein Strom fliessen ,wenn ich 2 Schalter hab die beide an
masse liegen? (von Port -->Port)

ansonsten danke erstmal für die Mühen :-)

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nö, also wenn der Port auf Eingang geschaltet ist, dann fließen da µA
oder bestenfalls mA (mit eingeschalteten internen Pullups).
Der Quellcode - naja - eigentlich läßt man keine Verzögerungsschleifen
innerhalb von Interrupts laufen.

Autor: bukongahelas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jeder taster hat doch einen eigenen pullup R ?
deswegen doch keine port-pin-verkopplungen.
so mach ichs: von vcc+5V ein R von 4k7 mit dem schalter in
reihe nach masse.der portpin an die verbindung zwischen
R und schalter (taster).(=ein spannungsteiler zw. vcc+masse,
dessen massewiderstand der schalter ist,mittelpunkt des spteilers
an portpin.)
port als input konfigurieren,interne pullups abschalten.
schalter geschlossen:null ohm nach masse="sauberes low".
schon +1V kann als high zählen!
schalter offen:der portpin "sieht" nach vcc+5V 4.7 kiloohm.
also sind i=u/r 5V/ca.5k=1mA. da kann nix anbrennen!
eleganter wärs die controller-internen pullups zu aktivieren
und die schalter einfach nach masse zu schließen.
wenn der port allerdings als out konf ist,irgendwie (ladebefehl?)
pins hi sind und dann der schalter auf geschlossen steht,
fließen mindestens 20mA oder mehr aus jedem portpin über den
geschlossenen schalter nach masse (=kurzschluß).
das kann schon etwas riechen.
allgemein:wenns bei solchen low-power logikschaltungen beim
anfassen weh tut oder es heiß riecht,sofort aus.
meistens ist dann noch nichts dauerhaft abgebrannt.
aus leidvoller erfahrung kann ich nur wärmstens empfehlen,
bei input signalen !sauber! d.h. möglichst mit null ohm
gegen masse zu schalten.schon ab ca. 2V zählt alles als hi.
und:schon ein offener eingang zählt meistens als hi,
wenn nicht als antenne...viel spaß beim fehlersuchen.
ähnlich lustig wie "vergessene" 100nF C´s an jedem IC.
naja,wenns läuft,so lassen,aber die "500 ohm zwischen masse
und schalter" fand ich seltsam,hat vielleicht einen tieferen
sinn.nundenn...

Autor: blacky black (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Passt zwar jetzt nicht wegen der Frage, aber ich hab auch gerade
angefangen mit AT90S2313 zu arbeiten, bzw. "studiere" gerade die
Datenblätter, ich möchte mir ein Car-System aufbauen und will den 2313
wie bei www.infracar.de aufbauen, leider können die mir die hex.codes
nicht geben, ist auch verständlich, deshalb will ich das halt selbst
versuchen, kann mir da jemand helfen die so zu flashen oder zu
programmieren.

Autor: marvin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok danke für die vielen hilfen
is schon dämlich, kann avrs proggen aber schalter nicht richtig
anschließen...
nun dann wieder was gelernt
nun möchte ich ein lcd ansteuern, aber mit einem 8515
mal gucken ob es klappt

bis dann

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.