Forum: Mikrocontroller und Digitale Elektronik JTDI Pin als normalen GPIO Push Pull verwenden


von Florian R. (fxlxo)


Lesenswert?

Hallo,

ich programmiere den STM32F103C6T8 in Eclipse.

Ich möchte SPI1 verwenden ohne Remapping und mit Software-chipselect.

Nun habe ich mein chipselect auf PinA15 gelötet und musste festellen, 
dass ich den A15 nicht geschalten bekomme. Alle anderen Pins kann ich 
schalten. Google sagt, dass das vielleicht mit der Alternativen Funktion 
zu tun haben kann. Der A15 kann NSS1(SPI1), JTDI und T2C1E.


Hier mein Test-code:
1
GPIO_InitTypeDef GPIO_InitStructure2;
2
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA , ENABLE);  
3
GPIO_InitStructure2.GPIO_Pin = GPIO_Pin_15;  
4
GPIO_InitStructure2.GPIO_Mode = GPIO_Mode_Out_PP;  
5
GPIO_InitStructure2.GPIO_Speed = GPIO_Speed_50MHz;  
6
GPIO_Init(GPIOA, &GPIO_InitStructure2);
7
8
  while(1){
9
10
    GPIO_WriteBit(GPIOA, GPIO_Pin_15, Bit_RESET);
11
    softdelay(10000000);
12
13
    GPIO_WriteBit(GPIOA, GPIO_Pin_15, Bit_SET);
14
    softdelay(10000000);
15
  }

Im Datenblatt steht was von "GPIO locking mechanism" aber auch, dass 
wenn ich den A15 als Output verwende er auch ein Ausgang ist. Also warum 
kann ich den A15 nicht schalten?

Gruß

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

RM0008: 9.3.5 JTAG/SWD alternate function remapping

PA15 bekommst Du mit SWJ _CFG  [2:0] = 010 frei, dann funktioniert aber 
nur noch SWD.

von Florian R. (fxlxo)


Lesenswert?

danke ich hab jetzt SWJ_CFG [2:0] = 100; dass gleich alle Pins frei 
sind.

Jetzt muss ich halt den Reset immer gedrückt halten beim flashen. Denn 
der ST-Link kann den -HardRst auch nur dann ausführen wenn SWD noch an 
ist. Komisch irgendwie. Was mich auch wundert, in der UM0892 für den 
ST-Link steht, dass der Resetpin der 15er wäre. Ich habe jedoch nur Pins 
von 1 bis 8 wobei 1 der Rst ist. Naja mit dem kann ich mich abfinden. 
Danke für die Hilfe.


Gruß

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.