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

  • 7433 private projects
  • 378 public projects
  • 16180353 lines compiled
  • 58212 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 5 Monate her #1739

  • achim S.
  • achim S.s Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 441
Morgen Egon
Im Verzeichnis Nibo/hex sind bei mir mehrere NDS3 Datein drin. Nach Lutz und meinen eigenen Erfahrungen und der Aussage von Workwind, muss auf einen leeren Attiny zuerst ein Prg drauf. Das muss über den ISP vom Attiniy kommen und hat bei mir die Endung HEX. Es ist keines mit C dabei. Das muss als erstes drauf auf den Attiny, sonst kann der nichst machen. In dem anderen Verzeichnus sind Anwendungen zum NDS3 drin. Es ist korrekt, das diese auf den 128 kommen.
Wenn ich den S3 betätige und auf dem NDS3 was leuchten soll, so werden beide Prz angesprochen. Im 128 erfolgt die Abfrage des Eingnges, Verarbeitung und Übertragung zum NDS3, dort wird der Ausgang gesetzt. Die Übertragung zwischen beiden Prz erfolgt über I2C. Vom Hersteller müssen diese für irgend etwas vorgesehen sein. Ansonsten kannman dich ja die Leiterzüge und Löcher sparen oder sogar einen kleineren Prz nehmen. In einer Datei habe ich auch wieder den Port 7 (glaube ich) gesehen, mit der Angabe Temp. Danach kann ich die Temp des Prz (ATtiny) darüber auslesen. Könnte ich, wenn es möglich währe.
Möchte nicht im Urschleim anfangen, aber ganau das steht in der Vorstellung des Nibo drin. Kann mich auch erinnern , das ich das vor längerer Zeit schon gefragt habe. Auch damals, ohne konkrete Antwort, ausser dem Hinweis von anderen, das alles vorhanden ist. Doch wo ist es vorhanden und wie mache ich es ??? !!!!!
Warum muss ich immer diese Fragen stellen?
achim
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Ein- oder Ausgänge beim NDS3 11 Jahre 5 Monate her #1740

  • achim S.
  • achim S.s Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 441
Hallo
Habe mir noch mal die Daten und Angaben gesucht (NETZ-WIKI-NIBO-NDS3). Dort steht sehr deutlich. Im Netz - im NDS3-Nibo WIKI.
Zusätzlich stellt das NDS3 vier Port-Bits zur freien Vefügung, die als digitale Ein- und Ausgänge oder als analoge Eingänge verwendet werden können.

Da der ATtiny84 über einen integrierten Temperatursensor verfügt steht auch diese über den I²C-Bus zur Verfügung.

Ein bischen weiter steht dann noch
Portfunktionen:

0x10: SetDDR (uint8_t value) -> ()

0x11: SetPort (uint8_t value) -> ()

0x12: GetPin () -> (uint8_t value)

0x13: GetAnalog (uint8_t idx) -> (uint16_t value)

Mehr habe ich nicht gefunden. Vielleicht könnte mir jemand erklären, wie ich das mache. Bin leider zu doof dazu.

Hallo Workwind
Wie ich gesehen habe, hast du das Programm NDS3 Demo nach vorn gestellt. Das ist ein Prg, wo ich seit Tagen dran bin. Habe viel getestet, doch leider ohne Erfolg. Wenn das Prg zeigen soll, wie es geht, so geht es nicht. Habe keine nutzbare Zeile für unser Problem drin gefunden.
Auch aus dem WIKI geht nichts hervor, was man machen könnte. Nach deinen eigenen Angaben ist es möglich. Bleibt wieder die Frage: wie geht das?
achim
Letzte Änderung: 11 Jahre 5 Monate her von achim S..
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Ein- oder Ausgänge beim NDS3 11 Jahre 5 Monate her #1750

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

Zum Thema "Temperaturmessung des ATtiny" - ich habe kein NDS3, deshalb kann ich's nicht ausprobieren, ob da wirklich die Temp des ATTiny gemessen wird, ich habe aber mal was ausprobiert:

- ich habe die header-datei "transaction.h" mit in mein c-file includiert (#include <nibo/transaction.h>

- ich die Datei "transaction.h" in das directory kopiert, wo alle NIBO-header Dateien sind (ins directory "include/nibo" )

- ich habe bei den Compiler-Optionen mit angegeben: -DNIBO_USE_NDS3

- ich habe angegeben im c-file: int16_t temper = global_temperature

dann hab ich's übersetzt und es kam keine Fehlermeldung - vielleicht kann man so die Temperatur auslesen...

Probiers doch mal, die Temperatur müsste dann in "temper" stehen....

Egon
lokalisieren, eliminieren, Vollzug melden
Letzte Änderung: 11 Jahre 5 Monate her von Egon. Begründung: Schreibfehler bei in16_t
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Ein- oder Ausgänge beim NDS3 11 Jahre 5 Monate her #1753

  • achim S.
  • achim S.s Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 441
Hallo Egon
danke dir für deine Hilfe.
Komme leider erst heute abend wieder an den Nibo. Bin richtig neugierig wie es geht. Komisch ist nur, das es keine Info da zu gibt. Wen wunderst.
achim
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Ein- oder Ausgänge beim NDS3 11 Jahre 5 Monate her #1754

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

Hatte vergessen zu erwähnen - das Programm muß dann auf den ATMega128 - und Du mußt auch i2C_init() mit aufrufen (ist aber klar, da per I2C die Daten vom NDS3 <-> NIBO2 übertragen werden...)

Hoffe, daß es geht

Viel Glück

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

Aw: Ein- oder Ausgänge beim NDS3 11 Jahre 5 Monate her #1755

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
Hallo,

in der Datei transaction.c sind bei den nachfolgenden Funktionen die // zu
entfernen:

static inline uint8_t do_setddr(uint8_t size) {
//CHECK_SIZE(1);
uint8_t val = comm_buf[1];
// SET_MASKED(DDRA, val, 0x0f);
val >>= 4;
// SET_MASKED(DDRB, val, 0x05);
return 0;
}

static inline uint8_t do_setport(uint8_t size) {
//CHECK_SIZE(1);
uint8_t val = comm_buf[1];
// SET_MASKED(PORTA, val, 0x0f);
val >>= 4;
// SET_MASKED(PORTB, val, 0x05);
return 0;
}


Danach ist die Datei nds3.hex neu zu erstellen und auf den NDS3 zu übertragen.

Die Ports können jetzt mit den weiter oben von Workwind genannten Funktionen vom
Atmega128 aus angesprochen werden. Bei den Registern ist folgendes zu beachten:

Bit......7.....6.....5.....4......3......2......1......0
Port...B3...B2...B1...B0...A3...A2...A1...A0

Die Temperaturmessung wird im ATtiny84 durchgeführt.
Zur Zeit ist noch keine Schnittstelle dafür zum Atmega128 vorhanden.

Georg
Letzte Änderung: 11 Jahre 5 Monate her von Georg.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Ladezeit der Seite: 0.046 Sekunden

Werbung