RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBO 2 Ein- oder Ausgänge beim NDS3

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Letzte Themen

  • •Keine Beiträge vorhanden•

Site-Statistic

  • 7473 private projects
  • 385 public projects
  • 16432895 lines compiled
  • 58475 builds
NIBO @ facebook YouTube Twitter
•Willkommen•, •Gast•
•Benutzername:• •Passwort:• •Angemeldet bleiben:•

•THEMA:• Ein- oder Ausgänge beim NDS3

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1732

  • Egon
  • •Egons Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 316
Hallo

was gibt's da nicht zu verstehen??
lokalisieren, eliminieren, Vollzug melden
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1733

  • Egon
  • •Egons Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 316
Hallo achim S.

Man kann sein Programm für den ATmega128 schreiben oder für den ATtiny => man muß beim AVRStudio doch immer angeben, für welchen Prozessor das Programm ist....

Und wenn Du DIREKT die Ports beim ATiny ansprechen willst (so wie im AVR-GCC Tutorial beschrieben), dann muß das Programm für den ATtiny gebuildet werden; wenn Du die Funktionen von workwind verwenden willst, ist der Zielprozessor der ATMega128.

Leider sind aber die von workwind zur Verfügung gestellten Funktionen mir nicht klar (ich weiß nicht, wie ich die einzelen Ports PA0-PA3, PB0, PB2 ansprechen kann - ich hab auch schon seinen Source Code durchgewühlt..), deshalb gehe ich auf die Bitebene des ATtiny...

soweit klar?

Egon
lokalisieren, eliminieren, Vollzug melden
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1734

  • achim S.
  • •achim S.s Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 441
Hallo Egon
habe es genau so gemacht. Habe alle möglichem und unmöglichen datein durchsucht, in der Hoffnung einen Anhaltspunkt zu finden. Hoffe dabei, das ich nichts übersehen habe. Da ich keinen Punkt gefunden habe, um die Sachen von Workwind anzugeben, habe ich mit dem Tutorial weiter gemacht. Habe auch die Bitebene durchsucht und dort versucht etwas wie PA0 oder anders. Da ich auf dem 128 arbeite, müssen die Daten oder Ports usw, auf dem 84 bezogen werden. Leider ist mit der Aufruf der Anweisungen vollkommen unklar. Habe in deiner Datei auch was anders gefunden. Dort sind Parameter zu den befehlen angegeben. Leider kein Hinweis wie es gehen soll. Hoffe auf Antwort von Workwind.
achim
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1735

  • Egon
  • •Egons Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 316
Hallo achim S.

Anbei mal ganz auf die Schnelle ein Stückchen Code (aus dem AVR-GCC Tutorial rauskopiert - S/17 - ist NICHT (!!) vollständig!!), aber damit kannste schon was anfangen, wenn Du die korrekten Header-Dateien mit includest (der Compiler meckert schon, wenn was fehlt und auch was fehlt) - und das Programm ist für den ATtiny!!!! => muss auch auf den ATtiny!!!
#include <avr/io.h>
#include <inttypes.h>
#ifndef F_CPU
#warning "F_CPU war noch nicht definiert, wird nun mit 3686400 definiert"
#define F_CPU 3686400UL /* Quarz mit 3.6864 Mhz */
#endif
#include <util/delay.h> /* bei alter avr-libc: #include <avr/delay.h> */

/* Einfache Funktion zum Entprellen eines Tasters */
inline uint8_t debounce(volatile uint8_t *port, uint8_t pin)
{
if ( ! (*port & (1 << pin)) )
{
/* Pin wurde auf Masse gezogen, 100ms warten */
_delay_ms(50); // max. 262.1 ms / F_CPU in MHz
_delay_ms(50);
if ( *port & (1 << pin) )
{
/* Anwender Zeit zum Loslassen des Tasters geben */
_delay_ms(50);
_delay_ms(50);
return 1;
}
}
return 0;
}

int main(void){
DDRB &= ~( 1 << PB0 ); /* PIN PB0 auf Eingang (Taster) */
PORTB |= ( 1 << PB0 ); /* Pullup-Widerstand aktivieren */
...
if (debounce(&PINB, PB0)) /* Falls Taster an PIN PB0 gedrueckt.. */
PORTB = PINB ^ ( 1 << PB2 ); /* ..LED an Port PB2 an bzw. ausschalten */
...
}

das heißt - um das Programm testen zu können muß natürlich an PB0 ein Taster und an PB2 eine LED

Egon
lokalisieren, eliminieren, Vollzug melden
•Letzte Änderung•: •11 •Jahre• 11 •Monate• her• • von • Egon.
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1736

  • achim S.
  • •achim S.s Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 441
Hallo Egon
mal ne einfache Frage.
Wie liegt uns das Prg für den Attiny vor? Als hex oder C?
Sorry, habe heute keinen Bock mehr, suche die Antwort morgen.
noch einen schönen Sa
achim
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•

Aw: Ein- oder Ausgänge beim NDS3 •11 •Jahre• 11 •Monate• her• #1737

  • Egon
  • •Egons Avatar•
  • •OFFLINE•
  • Gold Boarder
  • •Beiträge:• 316
Hallo achim S.

Ich vesteh' wieder Deine Frage nicht - welches Prg soll uns denn für den ATtiny vorliegen? Es gibt im directory "examples2" genau 3 Programme, die sich mit dem NDS3 beschäftigen, alle 3 beginnen mit "nds3_...", und alle 3 werden auf den ATMega128 geflasht.

Normalerweise ist ja zuerst das *.c-file da, das dann - nach dem kompilieren (wenn's denn erfolgreich war) uns als *.hex-file vorliegt - auf den Prozessor geflasht wird - entweder auf den ATMega128 oder den ATtiny..

Egon
lokalisieren, eliminieren, Vollzug melden
•Letzte Änderung•: •11 •Jahre• 11 •Monate• her• • von • Egon.
•Der Administrator hat öffentliche Schreibrechte deaktiviert.•
•Ladezeit der Seite: 0.102 Sekunden•

Werbung

Protected by R Antispam