www.mikrocontroller.net

Forum: Compiler & IDEs Nightrider an PORTA auf AT90S8515


Autor: Horst B. (hobadberg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Tach zusammen,
hab heute meinen ersten Erfolg mit einem µc gehabt.
Da mir die vielen Fragen und Antworten von Anfängern und den Profis sehr 
weiter geholfen haben, wolte ich doch mein kleines Proggi hier 
vorstellen.

Ich bin ein absoluter Anfänger der sich jetzt bedingt durch die 
Tenikerschule mit µc beschäftigen darf und will. Z.Z. mit Keil Compiler 
und Raakers Platine. Privat dachte ich mir kann es nicht verkehrt sein 
sich mal den µc von Atmel zu widmen. Man kann zwar nicht alles 1 zu 1 
umsetzen aber wenn man sich mit der Materie beschfätig, dann klappt das 
schon.
Im Sommer fangen wir dann mit Assembler und nen PIC µc am. Bin mal 
gespannt wie das wird.
Werde sicherlich hier noch oft im Forum stöbern müssen.

Ich denke das dieses Lauflicht sicherlich auch nicht perfekt ist, aber 
zum lernen und mutivationsschub reicht es sicher allemal. (Wenn schon 
mal was an den Ports passiert, macht es auch Spaß)
Schönes Restwochende.

MfG Baddy

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Horst B.

>Ich denke das dieses Lauflicht sicherlich auch nicht perfekt ist, aber
>zum lernen und mutivationsschub reicht es sicher allemal. (Wenn schon

>       _delay_ms(20000);

Kleiner Hinweis. Deine Delays funktionieren so nicht.

http://www.mikrocontroller.net/articles/AVR-GCC-Tu...

MFG
Falk

: Bearbeitet durch Admin
Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dürfen wir rummeckern aka kommentieren? :P

"DDRA=0xFF;" kann man aus der Schleife herausnehmen.

Außerdem würde es reichen zu schreiben "PORTA = PORTA<<1". Das 
"|(PORTA>>7)" braucht man in dem Fall nicht.
Außerdem ist das Programm komisch eingerückt ;)

Gruß,
Dennis

PS: Wenn ich genug LEDs hier hätte, würd ich jetzt glatt ein Lauflicht 
mit Nachleuchten etc. basteln :\

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Dennis (Gast)

>PS: Wenn ich genug LEDs hier hätte, würd ich jetzt glatt ein Lauflicht
>mit Nachleuchten etc. basteln :\

Faule Ausrede ;-) Mit Soft-PWM kein grosses Thema.

MFG
Falk

Autor: Horst B. (hobadberg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hi dennis,

klar darf man meckern/kritik üben. Ich lerne ja noch ;-)

Werd das was du geschrieben hast gleich mal testen.

Hab so ein Testboard von der Firma Silvotronic. Ist zwar alles ein wenig 
umständlich damit, dafür muss man sich aber das was man haben möchte 
vorher immer genau zusammen stecken und das bringt ja auch ein wenig 
praxis mit. wie gesagt ich bin gerade am anfang.

danke für die hinweise.

gruß baddy

Autor: Horst B. (hobadberg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@dennis,

hab das mal getestet, was du angemerkt hast. nur dann leuchten meine 
leds nicht mehr so hell und das ganze läuft nur noch in eine richtung.

zu dem delay, hab ich auch mal gelesen und das so eingegeben aber das 
klappt dann auch nicht.

werde das nochmal in ruhe machen. muss mir jetzt auch mal nen buch 
besorgen.
hat einer da nen tip??

gruß baddy

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Probier mal das.

#define F_CPU 4000000
#include <avr/io.h>
#include <util/delay.h>

void long_delay(uint16_t ms) {
    for(; ms>0; ms--) _delay_ms(1);
}

int main(void) {

unsigned int i;

  DDRA=0xFF;

  while(1) {
    PORTA = 1;
    for(i=1; i<8; i++) {
      PORTA = (PORTA<<1);
      long_delay(20000);
    }
    PORTA = 0x80;    
    for(i=1; i<8; i++) {
      PORTA = (PORTA>>1);
      long_delay(20000);
    }
  } 
}

MfG
Falk

Autor: Horst B. (hobadberg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Falk,
ja das funktioniert. Vor allem kann man jetzt viel schöner die Zeiten 
einstellen. Das mit dem delay werd ich glauch ich nochmal in einer 
ruhigen stunde lesen müssen.
Danke für die Tips.

Gruß Baddy

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.