-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Atmega 8 mit c++ programmieren

  1. #1

    Atmega 8 mit c++ programmieren

    Anzeige

    ich hab dazu ne gute seite im internet gefunden die das ganze einfach erklärt
    jetzt möchte ich den atmega8 mit c++ programmieren. dazu find ich aber keine seite in der sowas von klein an drin steht.
    deshalb hab ich da n paar fragen
    1. kann ich das make-file vom asuro verwenden.
    2. was muss ich am anfang eines programmes schreiben. bei asuro steht ja immer #include "asuro.h"
    3. kann ich mein spi-kabel vom bascomprogrammieren verwenden wenn ich mit avr-studio arbeite
    4. gibts iregendeine seite im internet die das von klein an beschreibt. vieleicht mit kleinen programmen zum testen
    [-o<
    danke schon mal
    mfg

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    C++ ist für Mikrokontroller eher weniger geeignet. Da wird mit den heutigen Compilern noch deutlich mehr an RAM und Flash speicher geraucht als in C. Gerade ein Mega8 sollte dann zu klein sein. Mit einem Mega128 vielleicht.

  3. #3
    da hab ich aber im internet eher andere meinungen gehört.
    aber ist ja egal.
    weiss jemand wo ich so etwas lernen kann.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    20.05.2006
    Ort
    Lippe
    Alter
    48
    Beiträge
    524
    Hallo,

    für die avr's wie den Atmega8 möchtest du C lernen.
    Schau dir dieses Tutorial an.
    Wobei es um die Programmierung eines Controllers geht und nicht speziell um C.

    Gruß

    Jens

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    25.03.2006
    Ort
    Darmstadt
    Alter
    26
    Beiträge
    522
    @rocketman123
    Was genau möchtest Du lernen? C++ allgemein, C++ bezogen auf die AVRs oder was ins makefile reinkommt? Letzteres ist einfach, unter CPPSRC alle Sources eintragen und das wars.

    C++ ist für Mikrokontroller eher weniger geeignet. Da wird mit den heutigen Compilern noch deutlich mehr an RAM und Flash speicher geraucht als in C. Gerade ein Mega8 sollte dann zu klein sein. Mit einem Mega128 vielleicht.
    So allgemein gesagt ist das absoluter Quatsch. C++ __KANN__ langsam und speicherfressend sein, wenn man es falsch anwendet, da sind reines C und vor allem Bascom aber auch nicht anders. Wenn man jedoch einigermaßen weis was man tut, hat es sehr viele Vorteile.

    MfG Mark

  6. #6
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo rocketman123,

    C++ für den mega8. Dann schau dir mal Arduino an. Es gibt jede Menge Tutorials und Anwendungsbeispiele darüber. Moderne Boards verwenden zwar den mega168, aber der mega8 wird weiterhin voll unterstützt. Ein Arduino Board kann man sich auch recht einfach auf Lochraster oder Steckbrett selbst aufbauen, oder auf eine bestehende Hardware anpassen.

    Ich arbeite selbst zur Zeit an der Asurino Lib, einer Klassenbibliothek für den Asuro, basierend auf Arduino.

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.378
    kann man denn überhaupt hexfiles mit nem c++ fähigen compiler machen ?? dann bitte verratet mir WIE ich hasse es mit bitschiebereien und defines arbeiten zu müssen, am liebsten hätte ich alles schön sauber über punkktnotation ähnlich bascom

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.10.2007
    Ort
    41462 Neuss
    Alter
    49
    Beiträge
    375
    c++ verdient den namen eigentlich erst, wenn es die STL enthält. eine derart umfassende c++ implementierung dürfte den atmega8 doch überfordern.
    klassen und vererbung benötigen schon einges an speicherplatz (RAM) damit es sinn macht.

    oop ist vom konzept her etwas sehr dynamisches. deshalb werden eben viele informationen im RAM (bei µC eher mangelware) abgelegt. natürlich kann ich nen c++ compiler nehmen und so programmieren, das auch alles ins flash geht. nur wird das dann eher wenig mit c++ und oop zu tun haben.

    natürlich enthält c++ auch ne menge vorteile (hier und da verbesserte syntaktische möglichkeiten) gegenüber c die keinen erhöhten speicherbedarf bedingen. aber als richtiges c++ würd ich das dann nicht bezeichnen. eher als ein aufgemotztes c aber das kann ja auch schon ein vorteil gegenüber normalem c sein.

    das arduino board wird mit einer sprache programmiert, die auf c/c++ basiert. aber von c++ ist da kaum was drin. eigentlich ists eher reines c.

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.378
    na gut ... formulier ich meinen ansatz anders ... mir ging es dabei echt nur um die datenkapselung also OOP ohne veerbung etc. einfach nur das ich ports als Port.A.Pin1 = AN schreiben kann um mal was ganz triviales zu bringen ... kann sein das ich aufm schlauch steh was diw umsetzung in reinem C angeht, dann helft mir mal mitm schlag aufn hinterkopf aus bitte

    MfG

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Hallo,
    ich verstehe nicht so ganz, was Du möchtest.
    Du möchtest C programmieren, dann gehe ich davon aus, daß Du auch C kannst.
    Wenn das der Fall ist, weißt Du sicher auch, daß Punkt . in C für ganz andere Zwecke gedacht ist, als das was Du möchtest.

    In C gibt es halt nur die Möglichkeit mit Bitschiebereien an die einzelnen Bits dranzukommen.

    Es gibt da auch die Möglichkeit Makros zu definieren, um sich das ganze "leichter" zu machen.

    Schau Dir mal deprecated.h , die Bibliothek ist immer noch bei avrgcc drin.

    Da gibt es so Sachen, wie
    sbi(port, bit)
    cbi(port, bit)
    outb(port, val)

    vielleicht ist das eine Anregung.

    Sonst mußt Du halt zu einer anderen Sprache greifen, wo sowas schon drin ist z.B. Basic

    Gruß Sebastian
    Software is like s e x: its better when its free.
    Linus Torvald

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •