Forum: Mikrocontroller und Digitale Elektronik Probleme beim Einstieg in die wunderbare Welt der Microcontroller


von Matthias K. (Gast)


Lesenswert?

Guten Tag alle Zusammen

Ich lerne seit ein paar Wochen mit Hilfe des Internets wie man einen 
Mikrocontroller Programmiert.

Zu meiner Ausrüstung.
Ich benutze ein Pollin Board als Oberfläche und habe mir einen Atmega 8 
gekauft.
Programmieren kann ich ihn über die smartusb (my AVR) Anbindung. (ISP 
Schnittstelle)

Ich programmiere in Basic mit Basecom.


Sooooooooooo ich hänge leider bei der Inbetriebnahme fest^^
Mein plan war es alle möglichen Ausgänge vom Atmega 8 auf High zu 
setzten.

Programm:

$regfile = "m8def.dat"
$crystal = 1000000

Config Portb.0 = Output
Config Portb.1 = Output
Config Portb.2 = Output
Config Portb.3 = Output
Config Portb.4 = Output
Config Portb.5 = Output
Config Portb.6 = Output
Config Portb.7 = Output

Config Portc.0 = Output
Config Portc.1 = Output
Config Portc.2 = Output
Config Portc.3 = Output
Config Portc.4 = Output
Config Portc.5 = Output
Config Portc.6 = Output
Config Portc.7 = Output

Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Config Portd.4 = Output
Config Portd.5 = Output
Config Portd.6 = Output
Config Portd.7 = Output


Dim Speed As Integer
Speed = 1000


Do

   Portb.0 = 1
   Portb.1 = 1
   Portb.2 = 1
   Portb.3 = 1
   Portb.4 = 1
   Portb.5 = 1
   Portb.6 = 1
   Portb.7 = 1

   Portc.0 = 1
   Portc.1 = 1
   Portc.2 = 1
   Portc.3 = 1
   Portc.4 = 1
   Portc.5 = 1
   Portc.6 = 1
   Portc.7 = 1

   Portd.0 = 1
   Portd.1 = 1
   Portd.2 = 1
   Portd.3 = 1
   Portd.4 = 1
   Portd.5 = 1
   Portd.6 = 1
   Portd.7 = 1
Loop

End


Nun das Problem:
Ich messe bei der Hälfte der Ports 5,1V - 5,3V
und bei den anderen so 4,6V - 4,7V

Und bei einen Port messe ich 2,7 V

Ist der Atmega vielleicht kaputt??

Danke im Voraus =)

von spess53 (Gast)


Lesenswert?

Hi

>Ist der Atmega vielleicht kaputt??

Und welcher ist es?

MfG Spess

von spess53 (Gast)


Lesenswert?

HI

Kommando zurück. Hatte es überlesen.

MfG spess

von Jonny O. (-geo-)


Lesenswert?

> Und bei einen Port messe ich 2,7 V

den Pin "AVCC" auch an 5V gelegt?

von Matthias K. (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe das Board mit meinem Netzteil verbunden.

von M. K. (avr-frickler) Benutzerseite


Lesenswert?

Matthias K. schrieb:
> Und bei einen Port messe ich 2,7 V

Das dürfte die JTAG_Schnittstelle sein, kann per FUSE deaktiviert 
werden.
Die Pins wo du nur 4,6V bis 4,7V könnten evtl. die ADC-Ports sein.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

PC6 kann beim Mega8 nur benutzt werden, wenn man auf die normale 
Funktion des Pins (/Reset) verzichtet. PC7 ist nicht vorhanden. Genauso 
können PB6 und PB7 nur benutzt werden, wenn kein externer Quarz (beide 
Pins belegt) oder ein externer Oszillator (PB6 belegt) benutzt wird.
Es ist also sinnlos (und normalerweise empfiehlt Atmel das auch nicht) 
diese Ports zu programmieren. Im Datenblatt steht da meistens 'reserved' 
- write to zero.

von Matthias K (Gast)


Lesenswert?

> PC6 kann beim Mega8 nur benutzt werden, wenn man auf die normale
Funktion des Pins (/Reset) verzichtet. PC7 ist nicht vorhanden. Genauso
können PB6 und PB7 nur benutzt werden, wenn kein externer Quarz (beide
Pins belegt) oder ein externer Oszillator (PB6 belegt) benutzt wird.
Es ist also sinnlos (und normalerweise empfiehlt Atmel das auch nicht)
diese Ports zu programmieren.

Morgen.
Danke erst mal für die schnelle Hilfe =)

Da haste recht und ich habe mir das Datenblatt mal angeguckt und stimmt 
die PC 6,7 und PB 6,7 sind mit meinem Board so nicht benutzbar..

Ich muss sagen ich habe bei dem Programm zum überspielen noch nichts mit 
den FUse bits gemacht. Meint ihr da Konnte das Problem auch liegen ?

von Matthias K (Gast)


Lesenswert?

Aber hier arbeiten doch bestimmt Leuite mit dem Atmega 8 oder ^^ habt 
ihr es geschaft an allen möglichen Ports 5 V zu bekommen ??

Danke schon mal =)

von Andreas (Gast)


Lesenswert?

Matthias K schrieb:
> Ich muss sagen ich habe bei dem Programm zum überspielen noch nichts mit
> den FUse bits gemacht. Meint ihr da Konnte das Problem auch liegen ?

Brauchst du auch nicht unbedingt, ausgeliefert wird mit interner RC 
Oszilator 8 Mhz und der wird dann noch runtergeteilt auf 1Mhz divCLK/8.

Alle Ports auf high schalten ist doch nicht zu toll. Schließ doch mal 
LEDS an und lass die Blinken. Es gibt jede Menge Tuts dafür.

von spess53 (Gast)


Lesenswert?

Hi

>Aber hier arbeiten doch bestimmt Leuite mit dem Atmega 8 oder

Es gibt modernere.

>habt ihr es geschaft an allen möglichen Ports 5 V zu bekommen ??

Ein Microcontroller ist kein Spannungsregler. Die Spannung an den 
Ausgängen ist von verschiedenen Faktoren abhängig. Aber so lange H un L 
in den zulässigen Toleranzen liegen besteht kein Handlungsbedarf. Welche 
Spannung liegt den an VCC und AVCC deines Controllers an?

MfG Spess

von Tjaja (Gast)


Lesenswert?

Es kommt vor allem auch darauf an was an den jeweiligen Ports 
angeschlossen ist.
Evtl wird der Port auch zu sehr belastet und wird dadurch etwas in die 
Knie gezogen.
Auf einen Port mit einem Taster ein HIGH zu geben wenn er gegen LOW 
geschalten wird macht wenig Sinn...drück ein Mal auf den Taster und du 
hast nen Kurzen.

Und das nicht nur in der Hose (SCNR).

Grüße

von citb (Gast)


Lesenswert?

Matthias K. schrieb:
> Ich messe bei der Hälfte der Ports 5,1V - 5,3V

Das erscheint recht hoch, was ist denn die Betriebsspannung?

citb

von Matthias K (Gast)


Lesenswert?

Also das board hat ja nen Brückengleichrichter und nen spannungsregler 
für die 5 V .

An VCC liegen dann die 5,1V

Kann ja nicht sein das die Ports bei D alle 5V haben (im Leerlauf messe 
ich alles) und bei Port B einer 5V und die anderne liegen dann bei 4,6V

Wo kommt das nur her. Das alles habe ich ja übrigend gemerkt als ich an 
jeden Port eine Led angeschlossen hatte. und viele nicht geleuchtet 
hatten. ^^ Passt der vorwiderstand halt nicht bei 4,6V

von Jonas B. (jibi)


Lesenswert?

>und viele nicht geleuchtet
>hatten. ^^ Passt der vorwiderstand halt nicht bei 4,6V

Der Atmega kann pro Pin 20mA, aber pro Port insgesammt nur 100mA. Bei 
4,6V statt 5V leuchten die Leds halt nicht so stark.

Gruß Jonas

von Udo S. (urschmitt)


Lesenswert?

Welchen Vorwiderstand hast du denn benutzt und welche Durchlassspannung 
hatten die Leds?
Dir ist bekannt dass der µC nicht beliebig viel Strom liefern kann?
Du hast eine maximale Belastung pro Portpin, aber auch ein maximale 
Belastung des µCs die kleiner ist als die Summe aller Ports mal max. 
Strom pro Port.
Du musst dich mehr mit dem Datenblatt beschäftigen!

von Matthias K (Gast)


Lesenswert?

Aber das ich im Leerlauf an einem Pin 5 V messe und am nächsten nur 4,6 
V ?
Die Leds sind ja gar nichts so mein Problem. Hab auch mal nur einen 
dieser Pine Auf High gesetzt der hatte dann auch nur 4,6 v

von Düsendieb (Gast)


Lesenswert?

Matthias K schrieb:
> Aber das ich im Leerlauf an einem Pin 5 V messe und am nächsten nur 4,6
> V ?

kann schon sein, ist kein Problem.
Vieleicht läd sich da irgend was auf oder was auch immer.

Mach wie schon oben geschrieben die kleine Last mit 1K Widerstand und 
eine Low-Current-LED drann und messe noch mal.


Axel

von spess53 (Gast)


Lesenswert?

Hi

>An VCC liegen dann die 5,1V

>Ich messe bei der Hälfte der Ports 5,1V - 5,3V

Der AVR kann die Spannung nicht erhöhen. Das lässt Zweifel an der 
Vertrauenswürdigkeit deiner Messungen aufkommen.

>Aber das ich im Leerlauf an einem Pin 5 V messe und am nächsten nur 4,6
>V ?

Hast du im Schaltplan überprüft, ob die Pins wirklich im 'Leerlauf' 
sind?

MfG Spess

von Matthias K. (Gast)


Lesenswert?

habe noch mal geguckt und... also der Port wo ich nur ca. 3 Volt 
gemessen habe der hängt anscheinend parallel an so nem Summer der auf 
dem Test Board montiert ist.

und die ports PD5 und PD6 sind auf dem Board mit LEDS verbunden.
Die auch leuchten .

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.