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ß