当前位置: 首页 > news >正文

点亮一颗LED灯

TOC
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

LED0

	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//使能APB2的外设时钟GPIO_InitTypeDef GPIO_Initstructure;GPIO_Initstructure.GPIO_Mode = GPIO_Mode_Out_PP;//通用推挽输出GPIO_Initstructure.GPIO_Pin = GPIO_Pin_5;GPIO_Initstructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOB,&GPIO_Initstructure);//配置端口模式GPIO_SetBits(GPIOB,GPIO_Pin_5);//关闭LED灯

LED1

	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);//使能APB2的外设时钟GPIO_InitTypeDef GPIO_Initstructure;GPIO_Initstructure.GPIO_Mode = GPIO_Mode_Out_PP;//通用推挽输出GPIO_Initstructure.GPIO_Pin = GPIO_Pin_5;GPIO_Initstructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_Initstructure);//配置端口模式GPIO_SetBits(GPIOE,GPIO_Pin_5);//关闭LED灯

Periph---------Peripherals—[pəˈrɪfərəlz]—外设
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Hardware中添加LED.C和LED.h文件
LED.h文件中,添加一段防止头文件重复的代码

LED.h

#ifndef __LED_H
#define __LED_H
void LED1_Init(void);
void LED0_Init(void);
void LED1_On(void);
void LED1_Off(void);
void LED1_Turn(void);
void LED0_On(void);
void LED0_Off(void);
void LED0_Turn(void);
#endif

注意最后一行空
LED.c
LED.C 文件中,右键添加“stm32f10x.h”头文件
在这里插入图片描述

#include "stm32f10x.h"                  // Device header
void LED1_Init(void)
{RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);GPIO_InitTypeDef GPIO_Initstructure;GPIO_Initstructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_Initstructure.GPIO_Pin=GPIO_Pin_5;GPIO_Initstructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_Initstructure);GPIO_SetBits(GPIOE,GPIO_Pin_5);
}
void LED0_Init(void)
{RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);GPIO_InitTypeDef GPIO_Initstructure;GPIO_Initstructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_Initstructure.GPIO_Pin=GPIO_Pin_5;GPIO_Initstructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOB,&GPIO_Initstructure);GPIO_SetBits(GPIOB,GPIO_Pin_5);
}
void LED1_On(void)
{GPIO_ResetBits(GPIOE,GPIO_Pin_5);
}
void LED1_Off(void)
{GPIO_SetBits(GPIOE,GPIO_Pin_5);
}
void LED1_Turn(void)
{if(GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_5) == 1){GPIO_ResetBits(GPIOE,GPIO_Pin_5);}else{GPIO_SetBits(GPIOE,GPIO_Pin_5);}	
}
void LED0_On(void)
{GPIO_ResetBits(GPIOB,GPIO_Pin_5);
}
void LED0_Off(void)
{GPIO_SetBits(GPIOB,GPIO_Pin_5);
}
void LED0_Turn(void)
{if(GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_5) == 1){GPIO_ResetBits(GPIOB,GPIO_Pin_5);}else{GPIO_SetBits(GPIOB,GPIO_Pin_5);}	
}
http://www.lryc.cn/news/132372.html

相关文章:

  • SSH远程直连--------------Docker容器
  • Python/Spring Cloud Alibaba开发--前端复习笔记(1)———— html5和css3.html基础
  • open cv学习 (十一)视频处理
  • 函数栈帧理解
  • 【SA8295P 源码分析】70 - QAM8295P 原理图参考设计 之 DP、eDP 接口硬件原理分析
  • 【CSS动画02--卡片旋转3D】
  • 数据结构<树和二叉树>顺序表存储二叉树实现堆排
  • 理解docker命令
  • 【SA8295P 源码分析】16 - QNX侧 TouchScreen Panel (TP)线程函数 tp_recv_thread 源码分析
  • 第九章MyBatis的技巧
  • 计算机技术与软件专业技术资格(水平)考试----系统架构设计师
  • 使用nrm快速切换npm源以及解决Method Not Implemented
  • NVIDIA Jetson 项目:机器人足球比赛
  • 【论文解读】Hybrid-SORT: Weak Cues Matter for Online Multi-Object Tracking
  • Microsoft 图像BERT,基于大规模图文数据的跨模态预训练
  • vue3+elementUI-plus实现select下拉框的虚拟滚动
  • 学C的第三十四天【程序环境和预处理】
  • 微服务中间件--Ribbon负载均衡
  • 字符设备驱动实例(ADC驱动)
  • python基础5——正则、数据库操作
  • SpringAOP原理:手写动态代理实现
  • 【旅游度假】Axure酒店在线预订APP原型图 旅游度假子模块原型模板
  • Android JNI系列详解之CMake和ndk-build编译工具介绍
  • 【Linux取经路】解析环境变量,提升系统控制力
  • TCP编程流程(补充)
  • 每天一道leetcode:433. 最小基因变化(图论中等广度优先遍历)
  • 【C++】做一个飞机空战小游戏(十)——子弹击落炮弹、炮弹与飞机相撞
  • 去除UI切图边缘上多余的线条
  • Spring高手之路13——BeanFactoryPostProcessor与BeanDefinitionRegistryPostProcessor解析
  • 【LeetCode动态规划】详解买卖票I~IV,经典dp题型买