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

  • 相关阅读:
    MS面试归来:)
    准备出发到成都
    线程的同步机制(zz)
    Windows Vista(zz)
    这几天上海热晕了
    微软官方:Vista硬件要求指南(zz)
    有趣的递归缩写(Recursive acronym)
    《三国志》生僻人名读法集(zz)
    Git bash常用命令
    各大输入法分类词库内部格式的简单比较
  • 原文地址:https://www.cnblogs.com/mudrobot/p/14313564.html
Copyright © 2011-2022 走看看