Author Topic: Teensy 3.x  (Read 12978 times)

House

  • freakyfriday
  • Jr. Member
  • *
  • Posts: 95
  • Karma: +1/-0
    • Hausammann-Dekor
Teensy 3.x
« on: September 04, 2014, 02:40:55 PM »
Hallo erstmal...

Ich widme mich hier ein wenig dem Teensy 3.x. Zuerst einmal die wichtigsten Eckdaten vorab:

    -size of 3.6cm x 1.8cm
    -weight 2,79g (without Pins)
    -32 bit ARM Cortex-M4 72 MHz CPU (M4 = DSP extensions)
    -256K Flash Memory, 64K RAM, 2K EEPROM
    -21 High Resolution Analog Inputs (13 bits usable, 16 bit hardware)
    -34 Digital I/O Pins (5V tolerance on Digital Inputs)
    -12 PWM outputs
    -7 Timers for intervals/delays, separate from PWM
    -USB with dedicated DMA memory transfers
    -3 UARTs (serial ports)
    -SPI, I2C, I2S,(CAN Bus), IR modulator
    -I2S (for high quality audio interface)
    -Real Time Clock (with user-added 32.768 crystal and battery)
   - 4 general purpose DMA channels (separate from USB)
    -Touch Sensor Inputs
   

Ich finde das Teensy 3.1 ist ein durch und durch gelungener MCU. Angefangen bei der wirklich kleinen Dimensionierung und dem super Gewicht-/Grösse-/Leistungs-Verhältnis ist vorallem im Modellbau und bei MC-Projekten mit geringen Platzverhältnissen ideal. Als Editor und Terminal kann die mit den nötigen Treibern upgedatede Arduino IDE verwendet werden. Servo Signale lassen sich wunderbar ohne Interruptlösungen(bei mehr als 3 Channeln beim Arduino notwendig) auslesen, aufzeichnen oder weiterleiten und auch die Ausgabe von Signalen an Servos oder Esc's funktioniert tiptop.
 
Aufgepasst: Alle Pins müssen nach eigenen Bedürfnissen montiert/ angelötet werden, also Header-Pins bei der Bestellung des Teensy3.1 nicht vergessen! Selbstverständlich ist eine Direktmontage von Kabeln auch möglich, ich rate jedoch davon ab, da der Umgang mit dem MC mit Header-Pins und "jumper wires" bedeutend angenehmer ist.

Mit 2,79 Gram und den Dimensionen von 3,6cm x 1,8 cm, gepaart mit dem 72 MHz ARM Prozessor, den 256K Flash Memory, den 64K RAM, sowie 2K EEPROM, zudem 34 Digital I/O Pins welche über 5 Volt Toleranz verfügen schlägt dieser MC nicht nur preislich den Arduino. Nicht fallsch verstehen, ich mag den Arduino und auch den Freaduino immer noch,  auch wenn diese MC's mit 16 MHz bedeutendlangsamer sind als das Teensy 3. Jedoch ist die Handhabung vorallem beim Freaduino nicht ganz so filligran  wie beim Teensy und es sind hier auch viel mehr Stromanschlüsse vorhanden. Arduinos und deren Derivate sind immernoch super für klein bzw. schnell Versuche.  Mit 12 PWM-Pins, 21 Analog-Pins(Achtung: nicht 5 Volt tolerant), 3 UART's, der SPI, sowie I2C, I2S und CAN Bus runden das ganze zu einem wirklich gelungenen MC ab. Mit den Touch Sensor Inputs und der Real Time Clock mit 32.768 Quarz, habe ich noch keine Erfahrungen gesammelt, vorallem konnte ich mir noch keinen passenden Quarz besorgen.

Grüsse und bis demnächst...

House
« Last Edit: January 19, 2015, 12:14:25 PM by House »

House

  • freakyfriday
  • Jr. Member
  • *
  • Posts: 95
  • Karma: +1/-0
    • Hausammann-Dekor
Re: Nachtrag zum Teensy 3.x betr. CAN-Bus
« Reply #1 on: January 19, 2015, 12:13:14 PM »
Ich hab mich nun ein wenig in das Thema Teensy 3.1 un CAN-Bus eingelesen und habe dabei bemerkt, dass das Teensy 3.1 nicht wie angeschrieben(auch auf dem Board) über einen dirkten CAN-Bus verfügt, d.h. es handelt sich "nur" um gewöhnliche RX/TX Pins, die identische Eigenschaften, wie die Pin 3 und 4 vom Arduino UNO aufweisen.  Dies bedeutet, man muss um mit einem CAN-Bus zu kommunizieren einen CAN-Transceiver zwischen das Teensy und den CAN-Bus hängen. Zudem wird beschrieben, dass vor dem Teensy, Abschlusswiderstände eingesetzt werden müssen. Im Moment habe ich diesbezüglich jedoch k.A. wie die Schaltung aussieht und wie gross resp. wieviel Ohm die Abschlusswiderstände haben sollten. Weiss hier vielleicht jemand mehr? Es geht mir darum einen existierenden CAN-Bus auszulesen, hat das schon jemand versucht, gibt es da Tricks od. Kniffe die zu beachten sind? Im Teensy Handbuch steht nur was zum FlexCAN-Controller. Der wäre vielleicht auch was für den Boxtec-Shop.

MfG
House
« Last Edit: January 19, 2015, 12:26:25 PM by House »

mikeZ337

  • Newbie
  • *
  • Posts: 28
  • Karma: +3/-1
Re: Teensy 3.x
« Reply #2 on: January 19, 2015, 11:31:04 PM »
du hast recht, ohne zusätzlichen Transceiver funktioniert die CAN-Bus Funktion des Teensy 3.1 nicht. Dennoch ist die CAN-Bus Funktion nicht einfach "nichts" oder direkt vergleichbar mit einer normalen UART Schnittstelle des Arduino UNO. Die Can-Bus Funktion nimmt dir einiges an Arbeit ab, so werden z.B. die Übertragungen automatisch mit der benötigten Prüfsumme versehen und diverse andere Dinge. Ich kenne mich mit dem CAN Bus nicht aus, kann also nicht genau sagen was alles noch benötigt wird. Auf jeden Fall sieht die Beschreibung auf Wikipedia relativ kompliziert aus. FlexCAN ist im Teensy 3.1 bereits integriert, das ist genau die genannte CAN-Bus Funktion.

Hier gibt es eine Bibliothek für die FlexCAN Funktion des Teensy 3.1: https://github.com/teachop/FlexCAN_Library

Da werden folgende CAN Transceiver empfohlen

Quote
TI SN65HVD230D on 3.3V (1MBPS)
TI SN65HVD232D / SN65HVD232QDQ1 on 3.3V (1MBPS)
NXP TJA1050T/VM,118 on the same 5V supply as the Teensy. (1MBPS)
Microchip MCP2551 on 5V (reported at 500KBPS)

Eine mögliche Schaltung kann so aussehen:
Die Abschlusswiderstände sind 120 Ohm und werden am Anfang und Ende des CAN-Bus jeweils einmal benötigt. (ähnlich wie beim RS-485 Bus)

House

  • freakyfriday
  • Jr. Member
  • *
  • Posts: 95
  • Karma: +1/-0
    • Hausammann-Dekor
Re: Teensy 3.x mit FlexCAN
« Reply #3 on: January 20, 2015, 12:35:49 PM »
Lieber  mikeZ337,

Danke für die genauere Erläuterung der Anschlüsse am Teensy 3.1 betreffend des CAN-Bus. Die bibliothek hatte ich bei meiner Recherche auf anhieb schon gefunden, habe mir diese jedoch gar nicht erst angesehen, da ich von diesem benötigten Tranceiver las und die Hardware nicht hatte, dass werde ich mir aber definitif auch mal ansehen Auch das Schema hilft mir sehr weiter, super!

Viele Grüsse
House