stm32实现4个LED灯的点亮

#include "math.h"
int main(void)
{
	//亮第一个灯
 	RCC->AHB1ENR |= (1<<2)|(1<<5);
	GPIOC->MODER &= ~((0x3<<0)|(0x3<<12)|(0x3<<20)|(0x3<<18));
	GPIOC->MODER |= (0x1<<0);
	GPIOC->OTYPER &= ~(0x1<<0);
	GPIOC->OSPEEDR &= ~(0x3<<0);
	GPIOC->OSPEEDR |=(0x2<<0);
	GPIOC->PUPDR |= ~(0x3<<0);
	//亮第二三四个灯
	//RCC->AHB1ENR |= (1<<5);
	GPIOF->MODER &= ~((0x3<<20)|(0x3<<18)|(0x3<<12));
	GPIOF->MODER |= ((0x1<<20)|(0x1<<18)|(0x1<<12));
	GPIOF->OTYPER &= ~((0x1<<20)|(0x1<<18)|(0x1<<12));
	GPIOF->OSPEEDR &= ~((0x3<<20)|(0x3<<18)|(0x3<<12));
	GPIOF->OSPEEDR |=((0x2<<20)|(0x2<<18)|(0x2<<12));
	GPIOF->PUPDR |= ~((0x3<<20)|(0x3<<18)|(0x3<<12));
	//亮第三个灯
	//RCC->AHB1ENR |= (1<<5);
	//GPIOF->MODER &= ~(0x3<<18);
	//GPIOF->MODER |= (0x1<<18);
	//GPIOF->OTYPER &= ~(0x1<<18);
	//GPIOF->OSPEEDR &= ~(0x3<<18);
	//GPIOF->OSPEEDR |=(0x2<<18);
	//GPIOF->PUPDR |= ~(0x3<<18);
	//电亮第四个灯
	//RCC->AHB1ENR |= (1<<5);
	//GPIOF->MODER &= ~(0x3<<12);//给使用的两位清0
	//GPIOF->MODER |= (0x1<<12);
	//GPIOF->OTYPER &= ~(0x1<<12);
	//GPIOF->OSPEEDR &= ~(0x3<<12);
	//GPIOF->OSPEEDR |=(0x2<<12);
	//GPIOF->PUPDR |= ~(0x3<<12);     
	//GPIOC->ODR |= (0x1<<0);
  while (1)
  {
		
  }
}
  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值