Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
LiFePO4 Speicher Test

Allgemein

In diesem Artikel geht es um die Programmierung des Wild Thumpers bzw. seines Controllers WTR-CK1.

Zu den Grundlagen des Wild Thumpers gibt es eine eigene Seite.

RobotLoader

Der RobotLoader ist die Weiterentwicklung des RP6Loaders.

Loader Versionen

Hier eine Tabelle der (mir) bekannten RobotLoader Versionen für den Wild Thumper Controller:

ZIP-Datum Version Bemerkungen Examples
16.06.2011 1.6b Version auf der AREXX Wild Thumper CD-ROM! ab Juli 2011

Hinweise: Neuere Versionen des RobotLoaders ab Version 2.0 findet ihr hier.

Projekte

Siehe hier!

Dokumentation

Wild Thumper Maße 1
Wild Thumper Maße 2


Manuals

Die "Anleitung" zum WTR gibt es hier.

Die Anleitung zum WTR-CK1 könnt ihr hier herunterladen.


Schematics

Einen Schaltplan zum WTR gibt es nicht. Die Stromkabel der rechten und linken Motoren sind bei Auslieferung jeweils an einer Lüsterklemmen-Leiste parallel geschaltet, siehe die Abb. "Lüsterklemmen-Leiste" in diesem Abschnitt!. Am Ende dieses Abschnitts zeigt die Abb. "Encoderstecker" die Belegung der Encoderstecker. Die Schaltung der Encoder-Motoren des WTR könnt ihr hier herunterladen.

Die Schaltpläne zum WTR-CK1 sind in der Anleitung von Seite 63 bis 67 einzusehen.


Datasheets

Das Datenblatt der WTR Motoren könnt ihr hier herunterladen.

Die Datenblätter relevanter Bauteile des WTR-CK1 sind im Ordner \Datasheets der CD-ROM zum Controller enthalten. Sie sind darüber hinaus problemlos kostenfrei im Internet erhältlich.




Demo-Programme

AVR-GCC

Windows Application

Library

Die Libraries für den WTR-CK1 bestehen aus folgenden 14 Dateien:

Library Datei Funktion
Main WT_Config_Main.h Main Konfiguration
Main WildThumperLib_Main.h Main Library Header
Main WildThumperLib_Main.c Main Library Source
Main UART WT_UART.h Main UART Funktionen Header
Main UART WT_UART.c Main UART Funktionen Source
Motor WT_Config_Motor.h Motor Konfiguration
Motor WildThumperLib_Motor.h Motor Library Header
Motor WildThumperLib_Motor.c Motor Library Source
Motor UART WT_UART.h Motor UART Funktionen Header
Motor UART WT_UART.c Motor UART Funktionen Source
I2C Master WT_I2Cmaster.h I2C Master Funktionen Header
I2C Master WT_I2Cmaster.c I2C Master Funktionen Source
I2C Slave WT_I2Cslave.h I2C Slave Funktionen Header
I2C Slave WT_I2Cslave.c I2C Slave Funktionen Source

Versionen

Hier eine Tabelle der (mir) bekannten Library Versionen des WTR-CK1:

Version Config Main Main Main UART Config Motor Motor Motor UART I2C Master I2C Slave
1.0 * 13.07.2011 11.07./18.07.2011 08.07.2011 30.06.2011 18.07.2011 28.06.2011 01.12./16.12.2010 25.11./01.12.2010

Zu *: Auf der Wild Thumper Controller CD-ROM!

Main

Die Wild Thumper Main Library besteht aus der Main und der Main UART Library.

WildThumperLib_Main

Bug-Report
Konfiguration
Port-Verwendung

Die Verwendung der Ports des WTR-CK1 Main Microcontrollers wird festgelegt in der Header-Datei "WT_Config_Main.h". In dieser Datei wird auch noch Folgendes aufgeführt:

  • Quarzfrequenz (F_CPU)
  • True/false Definition
  • Definitionen für das APC-220 Funkmodul

Hier eine Tabelle mit den Port-Definitionen für den Main Microcontroller des WTR-CK1:

Erklärung der Spalten:
Port        -> Atmel Portpin Bezeichnung
Name        -> Atmel Funktionsbezeichnung
In/Out      -> Eingang (In) oder Ausgang (Out)
Pullup      -> Falls Eingang: Pullup ein- (1) oder ausgeschaltet (0)
Wert        -> Falls Ausgang: Logikpegel high (1) oder low (0)
Funktion    -> Schnittstellenfunktion
Bezeichnung -> Portpin Bezeichnung der Library
Stecker     -> Portpin verfügbar an STECKER: Pin
Anmerkungen -> Kommentare (ADC_xx: ADC-Kanal Bezeichnung)
Port Name In/Out Pullup Wert Funktion Bezeichnung Stecker Anmerkungen
PA0 ADC0/PCINT0 In 0 BAT_VOLTAGE HDR4: 8 ADC_BAT_VOLTAGE
PA1 ADC1/PCINT1 In 0 LDR1 HDR4: 7; HDR5: 8 ADC_LDR1 (links)
PA2 ADC2/PCINT2 In 0 LDR2 HDR4: 6; HDR5: 10 ADC_LDR2 (rechts)
PA3 ADC3/PCINT3 In 0 TEMPERATURE HDR4: 5 ADC_TEMPERATURE
PA4 ADC4/PCINT4 In 0 X_ACC HDR4: 4 ADC_X_ACC *
PA5 ADC5/PCINT5 In 0 Y_ACC HDR4: 3 ADC_Y_ACC *
PA6 ADC6/PCINT6 In 0 Z_ACC HDR4: 2 ADC_Z_ACC *
PA7 ADC7/PCINT7 In 0 BUTTON HDR4: 1 ADC_BUTTON (Taster S2)
PB0 T0/XCK/PCINT8 Out 1 BUMPER1 HDR6: 8; HDR5: 12 Bumper rechts
PB1 T1/CLKO/PCINT9 Out 1 BUMPER2 HDR6: 7; HDR5: 11 Bumper links
PB2 AIN0/INT2/PCINT10 In 0 IR_RECEIVER HDR6: 6 IR Empfänger (TSOP)
PB3 AIN1/OC0A/PCINT11 Out 1 IR_H HDR6: 5; HDR5: 6 ACS Sendedioden HiPwr
PB4 SS/OC0B/PCINT12 Out 1 IR_L HDR6: 4; HDR5: 4 ACS Sendedioden LoPwr
PB5 MOSI/ICP3/PCINT13 Out 0 ISP MOSI HDR6: 3; HDR11: 4 ISP MOSI
PB6 MISO/OC3A/PCINT14 In 0 ISP MISO HDR6: 2; HDR11: 1 ISP MISO
PB7 SCK/OC3B/PCINT15 Out 0 ISP SCK HDR6: 1; HDR11: 3 ISP SCK
PC0 SCL/PCINT16 In 0 I2C-Bus SCL_PC HDR7: 8; HDR12: 7, 8 I2C SCL
PC1 SDA/PCINT17 In 0 I2C-Bus SDA_PC HDR7: 7; HDR12: 5, 6 I2C SDA
PC2 TCK/PCINT18 In 1 JTAG TCK HDR7: 6; HDR13: 1 **
PC3 TMS/PCINT19 In 1 JTAG TMS HDR7: 5; HDR13: 5 **
PC4 TDO/PCINT20 In 1 JTAG TDO HDR7: 4; HDR13: 3 **
PC5 TDI/PCINT21 In 1 JTAG TDI HDR7: 3; HDR13: 9 **
PC6 TOSC1/PCINT22 Out 1 ACS__LF HDR7: 2; HDR5: 7 ACS Sendediode vorn links
PC7 TOSC2/PCINT23 Out 1 ACS__L HDR7: 1; HDR5: 9 ACS Sendediode links
PD0 RXD0/PCINT24 In 1 UART0 RX_MAIN HDR8: 8; HDR14: 2 UART0 RX
PD1 TXD0/PCINT25 Out 0 UART0 TX_MAIN HDR8: 7; HDR14: 3 UART0 TX
PD2 RXD1/INT0/PCINT26 In 0 UART1 RX_APC HDR8: 6; APC: 4 UART1 RX
PD3 TXD1/INT1/PCINT27 Out 0 UART1 TX_APC HDR8: 5; APC: 5 UART1 TX
PD4 XCK1/OC1B/PCINT28 Out 1 SET_APC HDR8: 4; APC: 7 APC-220 SET
PD5 OC1A/PCINT29 Out 1 ACS__RF HDR8: 3; HDR5: 5 ACS Sendediode vorn rechts
PD6 ICP/OC2B/PCINT30 Out 1 ACS__R HDR8: 2; HDR5: 3 ACS Sendediode rechts
PD7 OC2A/PCINT31 In 0 I2C_INT HDR8: 1; HDR12: 9, 10 I2C Interrupt
Zeichen:
*    Frei, da U13 (Accelerometer) nicht bestückt ist!
**   Frei, wenn JTAG deaktiviert wird!

Abkürzungen der IO-Stecker (Spalte Stecker):
HDR11    ISP-2X3HDR
HDR12    I2C-2X5HDR
HDR13    JTAG-2X5HDR
HDR14    UART-2X5HDR
APC      APC-220 Sockel
Timer-Nutzung

WT_UART

Motor

Die Wild Thumper Motor Library besteht aus der Motor und der Motor UART Library.

WildThumperLib_Motor

Bug-Report
Konfiguration
Port-Verwendung

Die Verwendung der Ports des WTR-CK1 Motor Microcontrollers wird festgelegt in der Header-Datei "WT_Config_Motor.h". In dieser Datei wird auch noch Folgendes aufgeführt:

  • Quarzfrequenz (F_CPU)
  • True/false Definition
  • Definitionen für das APC-220 Funkmodul (?)

Hier eine Tabelle mit den Port-Definitionen für den Motor Microcontroller des WTR-CK1:

Erklärung der Spalten:
Port        -> Atmel Portpin Bezeichnung
Name        -> Atmel Funktionsbezeichnung
In/Out      -> Eingang (In) oder Ausgang (Out)
Pullup      -> Falls Eingang: Pullup ein- (1) oder ausgeschaltet (0)
Wert        -> Falls Ausgang: Logikpegel high (1) oder low (0)
Funktion    -> Schnittstellenfunktion
Bezeichnung -> Portpin Bezeichnung der Library
Stecker     -> Portpin verfügbar an STECKER: Pin
Anmerkungen -> Kommentare (ADC_xx: ADC-Kanal Bezeichnung)
Port Name In/Out Pullup Wert Funktion Bezeichnung Stecker Anmerkungen
PA0 ADC0/PCINT0 In 0 I_MOTOR6 ADC_MOTOR6
PA1 ADC1/PCINT1 In 0 I_MOTOR5 ADC_MOTOR5
PA2 ADC2/PCINT2 In 0 I_MOTOR4 ADC_MOTOR4
PA3 ADC3/PCINT3 In 0 I_MOTOR3 ADC_MOTOR3
PA4 ADC4/PCINT4 In 0 I_MOTOR2 ADC_MOTOR2
PA5 ADC5/PCINT5 In 0 I_MOTOR1 ADC_MOTOR1
PA6 ADC6/PCINT6 In 1 EF_MOTOR2 Fehler Motor 2
PA7 ADC7/PCINT7 In 1 EF_MOTOR1 Fehler Motor 1
PB0 T0/XCK/PCINT8 In 1 EF_MOTOR5 Fehler Motor 5
PB1 T1/CLKO/PCINT9 In 1 EF_MOTOR4 Fehler Motor 4
PB2 AIN0/INT2/PCINT10 In 1 EF_MOTOR3 Fehler Motor 3
PB3 AIN1/OC0A/PCINT11 Out 0 MOTOR2_PWM PWM Motor 2
PB4 SS/OC0B/PCINT12 Out 0 MOTOR1_PWM PWM Motor 1
PB5 MOSI/ICP3/PCINT13 Out 0 ISP SR_DATA HDR1: 4 ISP MOSI
PB6 MISO/OC3A/PCINT14 Out 0 ISP SR_STR HDR1: 1 ISP MISO
PB7 SCK/OC3B/PCINT15 Out 0 ISP SR_SCK HDR1: 3 ISP SCK
PC0 SCL/PCINT16 In 0 I2C-Bus I2C_SCL HDR2: 7, 8 I2C SCL
PC1 SDA/PCINT17 In 0 I2C-Bus I2C_SDA HDR2: 5, 6 I2C SDA
PC2 TCK/PCINT18 Out 0 JTAG I2C_INT HDR2: 9, 10 I2C Interrupt **
PC3 TMS/PCINT19 In 0 JTAG SIG_MOTOR4 J11: 2 Encoder Motor 4 **
PC4 TDO/PCINT20 In 0 JTAG SIG_MOTOR3 J8: 2 Encoder Motor 3 **
PC5 TDI/PCINT21 In 0 JTAG SIG_MOTOR2 J7: 2 Encoder Motor 2 **
PC6 TOSC1/PCINT22 In 0 SIG_MOTOR1 J4: 2 Encoder Motor 1
PC7 TOSC2/PCINT23 In 1 EF_MOTOR6 Fehler Motor 6
PD0 RXD0/PCINT24 In 1 UART0 RX_MOTOR HDR3: 2 UART0 RX
PD1 TXD0/PCINT25 Out 0 UART0 TX_MOTOR HDR3: 3 UART0 TX
PD2 RXD1/INT0/PCINT26 In 0 UART1 SIG_MOTOR6 J15: 2 Encoder Motor 6
PD3 TXD1/INT1/PCINT27 In 0 UART1 SIG_MOTOR5 J12: 2 Encoder Motor 5
PD4 XCK1/OC1B/PCINT28 Out 0 MOTOR6_PWM PWM Motor 6
PD5 OC1A/PCINT29 Out 0 MOTOR5_PWM PWM Motor 5
PD6 ICP/OC2B/PCINT30 Out 0 MOTOR4_PWM PWM Motor 4
PD7 OC2A/PCINT31 Out 0 MOTOR3_PWM PWM Motor 3
Zeichen:
**   JTAG muss deaktiviert werden!

Abkürzungen der IO-Stecker (Spalte Stecker):
HDR1     ISP-2X3HDR
HDR2     I2C-2X5HDR
HDR3     UART-2X5HDR
Timer-Nutzung

WT_UART

Common

WT_I2Cmaster

WT_I2Cslave



Projekte



Erfahrungsberichte



Siehe auch



Weblinks

Einzelne Projekte

Schule, Lehre und Ausbildung



Autoren

--Dirk 19:21, 28. Aug 2015 (CET)


LiFePO4 Speicher Test