arm 点灯实验代码以及现象(c语言版本)

.led.h

#ifndef __LED_H__
#define __LED_H__
//构建寄存器组织结构体
typedef struct
{
	unsigned int moder;    
	unsigned int otyper; 
	unsigned int ospeedr;
	unsigned int pupdr;
	unsigned int idr;
	unsigned int odr;
}gpio_t;

#define GPIOE (*(gpio_t*)0x50006000)
#define GPIOF (*(gpio_t*)0x50007000)
#define RCC   (*((unsigned int *)0x50000A28))

void delay(int ms);
void all_led_init();

#endif

led.c

#include"led.h"
//延时函数
void delay(int ms)
{
	int i,j;
	for(i=0;i

main.c

#include "led.h"

int main()
{
	//完成GPIO的相关初始化
	all_led_init();
	while(1)
	{
		//LED1亮
		GPIOE.odr |= (0x1<<10);
		GPIOF.odr &= (~(0x1<<10));
		GPIOE.odr &= (~(0x1<<8));
 		delay(1000);
		GPIOE.odr &= (~(0x1<<10));
		GPIOF.odr |= ((0x1<<10));
		GPIOE.odr &= (~(0x1<<8));
 		delay(1000);
		GPIOE.odr &= (~(0x1<<10));
		GPIOF.odr &= (~(0x1<<10));
		GPIOE.odr |= (0x1<<8);
 		delay(1000);


	}
	return 0;
}

arm 点灯实验代码以及现象(c语言版本)_第1张图片arm 点灯实验代码以及现象(c语言版本)_第2张图片arm 点灯实验代码以及现象(c语言版本)_第3张图片

你可能感兴趣的:(arm开发,c语言,开发语言)