Amtel Evaluationboard V2.01 - WINAVR programmieren

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 29 11 2024  05:42:32      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
Amtel Evaluationboard V2.01 - WINAVR programmieren

    







BID = 656453

Finnchi89

Gerade angekommen


Beiträge: 3
Wohnort: Neu-Anspach
 

  


Hallo,

ich möchte mit meinem Amtel Evaluationboard V2.01 den µC ATMEGA32 so
programmieren, dass die beiden LEDs mit dem Taster 1 eingeschaltet und
dann blinken und mit dem Taster 2 wieder ausgeschaltet werden sollen.

Jedoch kenn ich mich mit dem Programm WINAVR nicht aus um bräuchte mal
Tipps, bzw. ne Beispieldatei, wie ich das kann.
Bis jetzt habe ich eine Makefile-Datei angelegt und weiß jetzt nicht was
ich genau einstellen, programmieren etc. muss.

BID = 656600

Jornbyte

Moderator



Beiträge: 7178

 

  

Toll, was ist das: Amtel Evaluationboard V2.01 ?

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.

BID = 656603

Kleinspannung

Urgestein



Beiträge: 13360
Wohnort: Tal der Ahnungslosen


Zitat :
Jornbyte hat am 19 Dez 2009 23:58 geschrieben :

Toll, was ist das:

Das Ding von Pollin wenn man nicht schreiben kann...

_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)

BID = 656604

Jornbyte

Moderator



Beiträge: 7178

Was es nicht alles gibt...

@Finnchi89
Lese mal was über ANSI-C, das sollte für den Anfang helfen.

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.

BID = 656632

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

BID = 656800

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Moin Finnchi89,

Wenn man eine neue Arbeitsumgebung hat, in deinem Fall das AVR-Studio inkl. WinAVR, dann muss man sich den Umgang damit schon selbst beibringen.
Helfen können wir hier gerne, aber alles von vorn durchkauen sparen wir uns, warum sollte man hier Wissen wiederholen, was auf Dutzenden von Internetseiten schon steht. Diese Informationen kann man z.B. mit Google suchen und finden.

Wenn du dann konkrete Fragen hast, gerne, aber so nicht.


In diesem Sinne,
fröhliche Weihnachten!

_________________

BID = 656903

Martin Wagner

Schriftsteller

Beiträge: 768
Wohnort: Unterfranken
Zur Homepage von Martin Wagner

Guck mal auf die Pollin Homepage. Die haben dort eine Anleitung, wie du dein Programm auf den Controller bringst.

Gruß Martin

BID = 656921

Finnchi89

Gerade angekommen


Beiträge: 3
Wohnort: Neu-Anspach

so hab es soweit geschafft, dass ich kein problem mehr mit dem makefile
habe und habe mir gestern eine .c-datei ausm internet rausgesucht um
einen einfachen wechsel mal zu testen. ich hab meinen programmablauf so
weit weitergeschrieben:


#include <stdlib.h>
#include <avr/io.h>
#include "avr/delay.h"

// delay a little bit more then _delay_ms does
// time = 1/10 s
void delay_10th_s(uint16_t time);

void delay_10th_s(uint16_t time)
{
uint16_t i;
uint16_t delay_time;
delay_time = time / 100;
for(i = 0; i < 100; i++)
{
_delay_ms(delay_time);
}
}


int main(void)
{
DDRD |= _BV(PD2);
DDRD |= _BV(PD3);
DDRD |= _BV(PD5);
DDRD |= _BV(PD6);
DDRD |= _BV(PD7);

if ( DDRD = (1 << PD2))
{
PORTD ^= _BV(PD5);
delay_10th_s(100);
PORTD ^= _BV(PD6);
delay_10th_s(100);
PORTD ^= _BV(PD7);
delay_10th_s(100);
PORTD ^= _BV(PD5);
delay_10th_s(100);
PORTD ^= _BV(PD6);
delay_10th_s(100);
PORTD ^= _BV(PD7);
delay_10th_s(100);
}

else
{
while(1)
{
PORTD ^= _BV(PD5);
PORTD ^= _BV(PD6);
PORTD ^= _BV(PD7);
delay_10th_s(100);
PORTD ^= _BV(PD5);
PORTD ^= _BV(PD6);
PORTD ^= _BV(PD7);
delay_10th_s(100);
}
return (0);
}
}



nur habe ich probleme mit den eingängen also hauptsächlich PD2. das
programm springt sofort in den else teil, aber sobald ich PD2 drücke
springt dieser nicht in den if teil. woran liegt es???

BID = 656958

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Mahlzeit!


Zitat :


nur habe ich probleme mit den eingängen also hauptsächlich PD2. das
programm springt sofort in den else teil, aber sobald ich PD2 drücke
springt dieser nicht in den if teil. woran liegt es???


Du fragst schlicht und ergreifend das falsche Register ab. Das Eingangsregister heißt nämlich DDRB, allgemein DDRX mit X = {A,B,C,...}.

Außerdem scheint die Quelle, wo du abgeschrieben hast, grottenschlecht zu sein.
Allein die ersten paar Zeilen sind eine Qual für das Auge eines jeden C-Programmierers...
Die Logik hinter deinen Zeilen habe ich jetzt übrigens nicht beachtet, dass musst du selbst machen, so schwer ist das nicht; du wirst halt nicht drumrumkommen, C zu lernen. Einfach abschreiben klappt irgendwann nicht mehr.
Das Datenblatt ist übrigens ebenso hilfreich, hilfreicher als manche Internetquellen, deren Verfasser teilweise nicht einmal verstehen, wovon sie da gerade schreiben (wir hatten hier kürzlich so einen Fall).


Also, das packst du schon!


Offtopic :

Ich möchte dich noch darauf hinweisen, dass wir hier Wert auf korrekte Rechtschreibung legen. Hinter den Usernamen stecken nämlich, oh Wunder, reale Personen, die in der Regel schwer beschäftigt sind, und hier nebenbei helfen. Diese Personen lesen und antworten in den meisten Fällen nur (auf) Beiträge, die man auf Anhieb versteht und die nicht einfach lieblos in den Rechner geklatscht wurden.
Es sollte also schon von Fragesteller-Seite klar sein, dass er wirkliches Interesse am Thema und am Problem bzw. dessen Lösung hat. Dies ist oft dadurch ersichtlich, dass er sich ein wenig Mühe beim Verfassen gibt.
Diesen Eindruck erweckt dein letzer Beitrag leider nicht!

[ot]


_________________

BID = 656979

Finnchi89

Gerade angekommen


Beiträge: 3
Wohnort: Neu-Anspach

Also ich habe in der beschreibung des pollin amtel evaluationboards nachgeschaut und dort liegt der taster 1 auf pd2

BID = 656991

Kleinspannung

Urgestein



Beiträge: 13360
Wohnort: Tal der Ahnungslosen


Zitat :
Finnchi89 hat am 21 Dez 2009 18:43 geschrieben :

des pollin amtel evaluationboards

Bist du sicher,das wir von der selben Sache reden?
Pollin hat nämlich nur ein Atmel Evaluations-Board
Und wenn du so schlampig programmierst wie du schreibst,wird das nie was.

_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)

BID = 656999

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Und dicht!

1. Habe ich dir geantwortet und dir gezeigt, wo dein Fehler war - es folgte keine Reaktion.

2. habe ich dich sehr freundlich auf die Benimmregeln hingewiesen. Du hast es völlig ignoriert. Aus diesem Grunde ist jetzt Schluss!
Wenn du ernsthaft an der Lösung des Problems interessiert bist, erstelle einen neuen Thred und strenge dich an.

_________________


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 19 Beiträge im Durchschnitt pro Tag       heute wurden bisher 3 Beiträge verfasst
© x sparkkelsputz        Besucher : 182421500   Heute : 539    Gestern : 5459    Online : 263        29.11.2024    5:42
0 Besucher in den letzten 60 Sekunden         ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.082456111908