 |
11楼
巨大八爪鱼
2016-3-25 09:13
 共需寫入0KB!
|
 |
12楼
巨大八爪鱼
2016-3-25 09:25
用keil的debug可以下載成功:  而且程序運行正常 證明程序沒有問題
|
 |
13楼
巨大八爪鱼
2016-3-25 09:31
【第二個程序:使LED閃爍起來】 void delay() { int i, j; for (i = 0; i < 9999; i++) for (j = 0; j < 99; j++); }
int main(void) { RCC_AHB1ENR |= (1 << 7); GPIOH_MODER &= ~(0x03 << (2 * 10)); GPIOH_MODER |= (1 << 2 * 10); GPIOH_OTYPER &= ~(1 << 1 * 10); GPIOH_OTYPER |= (0 << 1 * 10); GPIOH_OSPEEDR &= ~(0x03 << 2 * 10); GPIOH_OSPEEDR |= (0 << 2 * 10); GPIOH_PUPDR &= ~(0x03 << 2 * 10); GPIOH_PUPDR |= (1 << 2 * 10); while (1) { GPIOH_BSRR |= (1 << 16 << 10); delay(); GPIOH_BSRR |= (1 << 10); delay(); } } 成功!
|
 |
14楼
巨大八爪鱼
2016-3-25 09:33
 以後可以點這個下載。
|
 |
15楼
巨大八爪鱼
2016-3-25 12:46
循環燈: #include "stm32f4xx.h" #include "led.h"
void SystemInit(void) { }
void delay() { int i, j; for (i = 0; i < 9999; i++) for (j = 0; j < 300; j++); }
int main(void) { RCC_AHB1ENR |= (1 << 7); GPIOH_MODER &= ~(0x03 << 20); GPIOH_MODER |= (0x01 << 20); GPIOH_MODER &= ~(0x03 << 22); GPIOH_MODER |= (0x01 << 22); GPIOH_MODER &= ~(0x03 << 24); GPIOH_MODER |= (0x01 << 24); GPIOH_OTYPER &= ~(1 << 10); GPIOH_OTYPER |= (0 << 10); GPIOH_OTYPER &= ~(1 << 11); GPIOH_OTYPER |= (0 << 11); GPIOH_OTYPER &= ~(1 << 12); GPIOH_OTYPER |= (0 << 12); GPIOH_OSPEEDR &= ~(0x03 << 20); GPIOH_OSPEEDR |= (0 << 20); GPIOH_OSPEEDR &= ~(0x03 << 22); GPIOH_OSPEEDR |= (0 << 22); GPIOH_OSPEEDR &= ~(0x03 << 24); GPIOH_OSPEEDR |= (0 << 24); GPIOH_PUPDR &= ~(0x03 << 20); GPIOH_PUPDR |= (0x01 << 20); GPIOH_PUPDR &= ~(0x03 << 22); GPIOH_PUPDR |= (0x01 << 22); GPIOH_PUPDR &= ~(0x03 << 24); GPIOH_PUPDR |= (0x01 << 24); while (1) { RED_ON; delay(); RED_OFF; GREEN_ON; delay(); GREEN_OFF; BLUE_ON; delay(); BLUE_OFF; // yellow RED_ON; GREEN_ON; delay(); RED_OFF; GREEN_OFF; // purple RED_ON; BLUE_ON; delay(); RED_OFF; BLUE_OFF; // cyan GREEN_ON; BLUE_ON; delay(); GREEN_OFF; BLUE_OFF; // white GREEN_ON; BLUE_ON; RED_ON; delay(); // black GREEN_OFF; BLUE_OFF; RED_OFF; delay(); } }
|
 |
16楼
巨大八爪鱼
2016-3-25 12:46
【頭文件】 //#define PERIPH_BASE ((unsigned int)0x40000000) #define AHB1PERIPH_BASE (PERIPH_BASE + 0x00020000) #define GPIOH_BASE (AHB1PERIPH_BASE + 0x1C00) #define GPIOH_MODER *(unsigned int*)(GPIOH_BASE+0x00) #define GPIOH_OTYPER *(unsigned int*)(GPIOH_BASE+0x04) #define GPIOH_OSPEEDR *(unsigned int*)(GPIOH_BASE+0x08) #define GPIOH_PUPDR *(unsigned int*)(GPIOH_BASE+0x0C) #define GPIOH_IDR *(unsigned int*)(GPIOH_BASE+0x10) #define GPIOH_ODR *(unsigned int*)(GPIOH_BASE+0x14) #define GPIOH_BSRR *(unsigned int*)(GPIOH_BASE+0x18) #define GPIOH_LCKR *(unsigned int*)(GPIOH_BASE+0x1C) #define GPIOH_AFRL *(unsigned int*)(GPIOH_BASE+0x20) #define GPIOH_AFRH *(unsigned int*)(GPIOH_BASE+0x24) #define RCC_BASE (AHB1PERIPH_BASE + 0x3800) #define RCC_AHB1ENR *(unsigned int*)(RCC_BASE+0x30)
#define RED_ON GPIOH_BSRR |= (1 << 16 << 10) #define RED_OFF GPIOH_BSRR |= (1 << 10)
#define GREEN_ON GPIOH_BSRR |= (1 << 16 << 11) #define GREEN_OFF GPIOH_BSRR |= (1 << 11)
#define BLUE_ON GPIOH_BSRR |= (1 << 16 << 12) #define BLUE_OFF GPIOH_BSRR |= (1 << 12)
|