Hallo ich bin neu was das Programmieren der STM32 anbelangt... Da ich gerne alles von grundauf verstehe habe ich die Angewohnheit bei einem Mikrocontroller nicht auf vorgefertigte Funktionen zurückzugreifen sondern selbst direkt ind die Register zu schreiben... Ich möchte gerne das SPI1 welches am APB2 hängt in betrieb nehmen... Dazu habe ich folgendes Programm gerüst geschrieben doch leider klappt es nicht... Ich habe auch schon einmal einen Code welchen ich hier im Forum gefunden habe zum SPI1 ausprobiert jedoch auch ohne erfolg, deshalb bin ich wieder zum ursprünglichen code zurückgekehrt... Ich hoffe ihr sieht meinen Fehler... Besten Dank schonmal
1 | int main(void) |
2 | {
|
3 | |
4 | #ifdef DEBUG
|
5 | debug(); |
6 | #endif
|
7 | |
8 | /* System Clocks Configuration **********************************************/
|
9 | RCC_Configuration(); |
10 | |
11 | /* NVIC Configuration *******************************************************/
|
12 | NVIC_Configuration(); |
13 | |
14 | /* SysTick end of count event each 1ms with input clock equal to 9MHz (HCLK/8, default) */
|
15 | SysTick_SetReload(9000); |
16 | |
17 | /* Enable SysTick interrupt */
|
18 | SysTick_ITConfig(ENABLE); |
19 | |
20 | /* Initial LED PB[8..15] */
|
21 | |
22 | |
23 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIO_LED, ENABLE); |
24 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; |
25 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; |
26 | GPIO_InitStructure.GPIO_Pin = LED1_PIN | |
27 | LED2_PIN | |
28 | LED3_PIN | |
29 | LED4_PIN | |
30 | LED5_PIN | |
31 | LED6_PIN | |
32 | LED7_PIN | |
33 | LED8_PIN; |
34 | |
35 | |
36 | GPIO_Init(LED_PORT, &GPIO_InitStructure); |
37 | |
38 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE); |
39 | SPI1->CR1 = 0x0B7C; //Konfigurieren |
40 | SPI1->CR2 = 0x0063; //Konfigurieren |
41 | |
42 | while(1) |
43 | {
|
44 | GPIOB->ODR = (SPI1->SR & 0x00FF) << 8; //Ausgabe des SR an den LED's |
45 | SPI1->DR = 0xFF00; //Test Daten Schreiben |
46 | SPI1->DR = 0x00FF; //Test Daten Schreiben |
47 | |
48 | }
|
49 | }
|