• 实验1 跑马灯实验


    main.c

    #include "stm32f4xx.h"
    #include "delay.h"
    #include "led.h"
    
    int main(){
    	delay_init(168);
    	led_init();
    	//GPIO_SetBits(GPIOF,GPIO_Pin_10);
    	while(1){
    		GPIO_SetBits(GPIOF,GPIO_Pin_9);//high V
    		GPIO_ResetBits(GPIOF,GPIO_Pin_10);
    		delay_ms(500);
    		GPIO_ResetBits(GPIOF,GPIO_Pin_9);
    		GPIO_SetBits(GPIOF,GPIO_Pin_10);
    		delay_ms(500);
    	}
    	return 0;
    }	
    
    
    

    led.c

    #include "led.h"
    #include "sys.h"
    
    void led_init(){
    	GPIO_InitTypeDef	GPIO_magic;
    	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);
    	GPIO_magic.GPIO_Mode=GPIO_Mode_OUT;
    	GPIO_magic.GPIO_OType=GPIO_OType_PP;
    	GPIO_magic.GPIO_Pin=GPIO_Pin_9;
    	GPIO_magic.GPIO_PuPd=GPIO_PuPd_UP;
    	GPIO_magic.GPIO_Speed=GPIO_Speed_50MHz;
    	GPIO_Init(GPIOF,&GPIO_magic);
    	GPIO_SetBits(GPIOF,GPIO_Pin_9);//high V
    	
    	GPIO_magic.GPIO_Mode=GPIO_Mode_OUT;
    	GPIO_magic.GPIO_OType=GPIO_OType_PP;
    	GPIO_magic.GPIO_Pin=GPIO_Pin_10;
    	GPIO_magic.GPIO_PuPd=GPIO_PuPd_UP;
    	GPIO_magic.GPIO_Speed=GPIO_Speed_50MHz;
    	GPIO_Init(GPIOF,&GPIO_magic);
    	GPIO_SetBits(GPIOF,GPIO_Pin_9);//high V
    }	
    
    
    

    切记:一定要先使能时钟然后再初始化IO口,然后才能进行你想进行的操作。

    初始化操作一定要写到HARDWARE里面去,虽然我也不知道为什么,但是如果全部写在主函数中会报错!!!

  • 相关阅读:
    maven 创建web项目出错
    poj1699--Best Sequence(dfs+剪枝)
    HDU-1042-N!(Java大法好 && HDU大数水题)
    “XXX.Index”不扩展类“System.Web.UI.Page”,因此此处不同意的问题
    scala模式匹配
    scala匿名函数
    scala特质
    group by的使用
    liux之我用过的zip解压命令
    liunx之zip格式的解压命令
  • 原文地址:https://www.cnblogs.com/mudrobot/p/14313564.html
Copyright © 2020-2023  润新知