代码如下:
test.c:
=========================
#include "sys.h"
#include "delay.h"
#include "led.h"
int main(void){
Stm32_Clock_Init(336,8,2,7);//设置时钟,168Mhz
delay_init(168); //初始化延时函数
LED_Init();
while(1){
GPIOF->ODR &= ~(0x1<<9);
delay_ms(1000);
GPIOF->ODR |= (0x1<<9);
delay_ms(1000);
}
}
=========================
led.c
=========================
#include "stm32f4xx.h" //在SYSTEM目录下可以找到
void LED_Init(void){
RCC->AHB1ENR = 1<<5; //使能GPIO端口的F时钟
GPIOF->ODR |= 0x1<<9;
GPIOF->MODER |= 0x1 << 9;
}
=========================
led.h
=========================
#ifndef _LED_H
#define _LED_H
void LED_Init(void);
#endif
=========================
注:我的开发板是正点原子的探索者,上述这个程序是自己写的;
把正点原子的例程下进去,可以运行,所以硬件是OK的;
但是下载自己写的代码,LED灯没有任何反应;肯定是我代码编写的问题,
但是查看了手册,对照寄存器配置,还是找不出问题所在;还有一点是,
因为有些寄存器没有用着,所以我就用默认设置来处理了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>