Hallo zusammen, ich habe folgendes Problem. Ich habe einen Atmega328p. An diesem möchte ich die Ausgänge PB0 und PB1 auf HIGH legen (siehe Schaltung). Versorgt wird der Controller mit 2.7V. Die Programmierung hat funktioniert ohne Errors. Aber an PB0 und PB1 bekomme ich kein HIGH Signal. Die Beschaltung habe ich überprüft diese ist wie im Schaltplan. Hat jemand eine Idee wo das Problem sein könnte? P.S.: Am Resetpin habe ich 2.7V Anhang: Schaltung, Programmcode, Fuseseinstellungen
Du solltest die Ausgänge auch richtig definieren, was du brauchst ist folgendes:
1 | DDRB |= ((1<<DDB0) | (1<<DDB1)); |
Außerdem solltest du auch den Haken bei CHKDIv8 rausnehmen, sonst läuft der uC nur mit 1MHz
Ich habe BOD und CHKDIv8 rausgemacht. DDRB habe ich nach "DDRB |= ((1<<DDB0) | (1<<DDB1));" umgeschrieben. Leider ohne Erfolg. Ich habe an PB0 und PB1 immer noch kein HIGH.
Ich benutze den internen Oszillator. Kann es sein das es Probleme damit gibt. Muss ich im Code überhaupt -> #ifndef F_CPU #define F_CPU 8000000UL #endif definieren? Oder nur wenn man eine externen Quarz verwendet?
Marco G. schrieb: > Du solltest die Ausgänge auch richtig definieren, was du brauchst ist > folgendes:DDRB |= ((1<<DDB0) | (1<<DDB1)); Das ist Unfug. Denn hinter den Defines für DDB0 und PB0 steht jeweils das gleiche. batmobil schrieb: > Ich benutze den internen Oszillator. Kann es sein das es Probleme damit > gibt. > Muss ich im Code überhaupt -> > > #ifndef F_CPU > #define F_CPU 8000000UL > #endif > > definieren? Oder nur wenn man eine externen Quarz verwendet? Der Oszillator spielt keine Rolle in deinem Fall. Du hast irgendein anderes Problem. Versorgungsspannungen liegen alle auch wirklich an? Massen angeschlossen (physikalisch). Dein Code ist erstmal richtig
>> >> definieren? Oder nur wenn man eine externen Quarz verwendet? > Der Oszillator spielt keine Rolle in deinem Fall. Du hast irgendein > anderes Problem. Versorgungsspannungen liegen alle auch wirklich an? > Massen angeschlossen (physikalisch). > > Dein Code ist erstmal richtig Die Versorgungsspannungen liegen alle an. An VCC_2, VCC und AVCC = 2,7V. An AREF = 2,7V, an RESET = 2,7V
batmobil schrieb: > Die Versorgungsspannungen liegen alle an. An VCC_2, VCC und AVCC = 2,7V. > An AREF = 2,7V, an RESET = 2,7V Solange nicht klar ist, ob es an der Versorgungsspannung, einem defekten Bauteil oder sonst einem Ungemach liegt, könnte man zumindest die Versorgungsspannungen mal auf 5V anheben und damit einen kritischen Punkt aus der Fehlersuche ausklammern.
batmobil schrieb: > Hat jemand eine Idee wo das Problem sein könnte? Welches Gehäuse hast du denn verwendet? PB0 und PB1 liegen beim TQFP schon auf Pin 12 und 13, beim DIL jedoch auf den Pins 14 und 15.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.