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
|
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.
_________________
|