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 =)
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.
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.
> 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 ?
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.
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
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
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
>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
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!
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
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
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
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 .
Eine eigene Frage?
Dieser Thread ist über 14 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.