• 实验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里面去,虽然我也不知道为什么,但是如果全部写在主函数中会报错!!!

  • 相关阅读:
    ASP.NET 生成静态html页之扩展(按年月目录)
    一个.net实现的ubb类
    win2003 安全设置
    ffmpeg参数使用说明
    C#正则表达式参考
    asp.net防图片盗链HttpHandler
    自定义datalist分页(转)
    asp.net中DateTime使用(转)
    缓存依赖性dependencies
    查看服务器日志文件的作用
  • 原文地址:https://www.cnblogs.com/mudrobot/p/14313564.html
Copyright © 2020-2023  润新知