Forum: Mikrocontroller und Digitale Elektronik Problem mit NJTRST (STM32)


von Matze T. (gruetzwurschd)


Angehängte Dateien:

Lesenswert?

Hi Leute,

ich hab ein Problem :
Ich hatte Probleme mit dem PB4 pin meines STM32 (Ich konnte den Pin 
einfach nicht auf H oder L schalten, war immer H). Nach Stundenlanger 
fehlersuche in der Hardware habe ich dann den Fehler gefunden.

Der PB4 ist standartmäßig auf NJTRST gesetzt. Um den GPIO zu aktivieren 
muss ich erst die Alternate Remap funktion anschalten.

Jetzt meine Frage: Wie genau mach ich das?
Ich bekomme es nicht hin.
1
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
2
    GPIO_InitTypeDef GPIO_I2C_InitStructure;
3
    GPIO_I2C_InitStructure.GPIO_Pin = I2C1_SCL_PIN | I2C1_SDA_PIN;
4
    GPIO_I2C_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
5
    GPIO_I2C_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;
6
    GPIO_Init(GPIOB, &GPIO_I2C_InitStructure);
7
8
    GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE );
9
    AFIO->MAPR = AFIO_MAPR_SWJ_CFG_0;  // Weder mit noch ohne diese Zeile geht es
10
    
11
    GPIO_I2C_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_4 ;
12
    GPIO_I2C_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
13
    GPIO_Init(GPIOB, &GPIO_I2C_InitStructure);
14
15
    GPIO_I2C_InitStructure.GPIO_Pin = GPIO_Pin_4 ;
16
    GPIO_I2C_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;
17
    GPIO_Init(GPIOB, &GPIO_I2C_InitStructure);

Der Pin5 Funktioniert tadellos!

Für Hilfe wäre ich dankbar.

Grüße Tarkan

von Matze T. (gruetzwurschd)


Lesenswert?

Keiner ne Idee?

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Clock für RCC_APB2Periph_AFIO aktiviert?

von Matze T. (gruetzwurschd)


Lesenswert?

Ne, hab ich jetzt gemacht. Funktioniert jetzt glaub mehr oder weniger :)

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.