S64DIL-405 Mikrocontrollermodul

Von “Reusch-Elektronik” gibt es verschiedene Mikrocontroller Module im “DIL-Format”

Das bedeutet, auf dem Modul ist die CPU und die zum Betrieb notwendige Zusatzbeschaltung gelötet und der Formfaktor ist so gewählt, das man es auf einen Standard IC-DIL-Sockel aufstecken kann.

Das erleichtert den Einsatz der heute üblichen SMD-Gehäuseformen der CPUs enorm.
Und man kann das Modul wie ein “normales” DIL-IC von der Hauptplatine entfernen
(z.B. bei einem neuen Layout oder wenn man ein CPU-Modul in mehreren Projekten einsetzen will.)

Ich beschreibe hier das “S64DIL-405” Modul :

LINK : S64DIL-405

S64DIL-405

S64DIL-405 von Reusch-Elektronik

Als CPU ist hier der STM32F405RGT6 verbaut (64 Pin LQFP-Package)
[ARM Cortex M4, 1MByte Flash, 192kByte RAM]
Das Modul selbst kann auf einen 64pol Dual In-Line-Sockel gesteckt werden.

Mit auf der Platine sind :
3,3V Spannungsregler (falls das Modul über USB versorgt wird)
Steckbarer Quarz (8MHz wird mitgeliefert)
Mini-USB-Buchse (zur Kommunikation und Programmierung)
Zwei Jumper (zur Auswahl vom Boot-Mode)
Ein Reset Button
Ein 20pol Pfostenstecker (mit JTAG/SWD Programmierpins)

Programmierung :

Das Modul kann auf verschiedene Arten programmiert werden.

1. Entweder über die vorhandenen USB-Buchse und dem PC-Programm “DfuSe” von ST.

2. Wenn man einen externen ST-Link/V2 hat (z.B. von einem STM-Discovery-Board)
verbindet man diesen einfach mit 5 Leitungen am vorhandenen 20pol Pfostenstecker
(damit ist dann das programmieren UND debuggen möglich)

Pinbelegung :
STLink/V2   S64DIL
[SWD]         [JTAG/SWD]
Vcc         - Pin1  (VCC)
Pin2 (JTCK) - Pin9  (TCK)
Pin3 (GND)  - Pin20 (GND)
Pin4 (JTMS) - Pin7  (TMS)
Pin5 (NRST) - Pin15 (NRST)
Pin6 (SWO)  - Pin13 (TDO)

Hinweis :
Vcc liegt am STLink/V2 NICHT auf Pin1 , sondern muss woanders hergeholt werden !!
Wenn Vcc über Pin 1 vom JTAG/SWD-Stecker am S64DIL eingespeist wird, dürfen Pin62 und Pin63 NICHT verbunden werden !!

Beide Boot-Jumper auf "Lo" einstellen

3. Über eine externe 3V-UART (z.B. einem FTDI-Chip) kann über zwei Leitungen, die an den RX und TX Pins vom Modul angeschlossen werden, ein HEX-File mit dem PC-Programm “Flash-Loader” von ST übertragen werden.

Das Funktioniert alles Problemlos wenn man die Bootjumper richtig setzt und darauf achtet wie die “Grundbeschaltung” vom Modul auszusehen hat (siehe Bild)

Grundbeschaltung und Pinout :

s64dil-405_pinout

Auf dem Bild sieht man das “Pinout” von dem Modul und welche externe Grundbeschaltung zum Betrieb notwendig ist.

Wie man sieht, sind alle IO-Pins der CPU über den DIL-Sockel erreichbar.

CoIDE-Projekt “Blinky” :

Als Entwicklugsumgebung kann CoIDE benutzt werden. Zum test hab ich hier ein “Blinky-Projekt” das den Port-Pin “PB9″ = Pin31 vom Modul zyklisch blinken lässt (wenn man eine LED anschließt :-)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
//--------------------------------------------------------------
// File     : main.c
// Datum    : 06.01.2013
// Version  : 1.0
// Autor    : UB
// EMail    : mc-4u(@)t-online.de
// Web      : www.mikrocontroller-4u.de
// CPU      : STM32F405
// IDE      : CooCox CoIDE 1.7.4
// GCC      : 4.7 2012q4
// Module   : CMSIS_BOOT, M4_CMSIS_CORE
// Funktion : Blinky für das S64DIL-405 Modul
//            von "Reusch-Elektronik"
// Hinweis  : Diese zwei Files muessen auf 8MHz stehen
//              "cmsis_boot/stm32f4xx.h"
//              "cmsis_boot/system_stm32f4xx.c"
//--------------------------------------------------------------
 
#include "main.h"
#include "stm32f4xx_gpio.h"
#include "stm32f4xx_rcc.h"
 
void Delay(volatile uint32_t nCount)
{
  while(nCount--)
  {
  }
}
 
void init(void) {
  GPIO_InitTypeDef  GPIO_InitStructure;
 
  // Clock Enable
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
 
  // Config PB9 als Digital-Ausgang
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
}
 
int main(void)
{
  SystemInit(); // Quarz Einstellungen aktivieren
 
  init();
 
  while(1)
  {
    Delay(5000000);
    GPIOB->ODR ^= GPIO_Pin_9; // PB9 toggeln
  }
}

Hier der komplette CooCox-Projektordner zum Download :

tst_01_blinky


5 Antworten auf S64DIL-405 Mikrocontrollermodul

  1. Steffen sagt:

    Leider bekomme ich unter Coocox keine Verbindung mit dem Board. Es kommt nach dem ich den Button “Download Code to Flash” gedrückt habe die Fehlermeldung: Error: Connect failed, check config and cable Connection. Das Board ist über einen externen ST-Link/V2 mit dem PC verbunden. Wie müssen die Jumper für Boot 0/1 gesetzt werden und welche Rolle spielt der Lötjumper J1 auf der Unterseite?

    Vielen Dank.

    • admin_ub sagt:

      hast du alle GND Pins so angeschlossen wie auf dem Bild (oben) zu sehen und hast du 3,3V an Pin62/VDD ?
      Beide Boot-Jumper müssen auf “Lo” stehen. Der Lötjumper “J1″ spielt keine Rolle, dieser Pin “VSSA/Pin44″ wird ja extern an GND angeschlossen.

  2. Steffen sagt:

    Also VDD ist mit VDDA und GND mit VSSA verbunden. An 3,3V out habe ich nichts angeschlossen. Beide Jumper stehen auf Low. Die Versorgungsspannung müsste ja aus dem ST-Link kommen oder? Aber funktionieren tut es leider immer noch nicht. Es kommt immer noch die gleiche Fehlermeldung.

    • admin_ub sagt:

      ich probier es hier bei mir morgen nochmal mal aus ob das mit den Jumpern auf Lo stimmt. Hast du den richtigen CPU-TYP eingestellt : STM32F405 (bzw. 103) und kein STM32F407 !!

    • admin_ub sagt:

      ich habe es jetzt ausprobiert und bei mir geht es ohne Probleme. Die Pinbelegung habe ich oben im Text hinzugefügt. Noch ein Hinweis : Am SWD-Stecker vom STLink/V2 liegen keine 3,3V und falls du ein Discovery-Board benutzt, müssen die beiden Jumper entfernt werden um die CPU auf dem Discovery vom STLink zu trennen. Mehr fällt mir dann auch nicht mehr ein.


Wie hat Dir dieser Artikel gefallen?

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Noch keine Bewertungen)
Loading...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.