STM32点亮闪烁LED灯
详解请看其他博客:
http://www.cnblogs.com/whik/p/6672730.html
http://www.51hei.com/bbs/dpj-38605-1.html
/*本程序实现STM开发板上LED灯红绿蓝闪烁*/ #include "stm32f10x.h" // 相当于51单片机中的 #include <reg51.h>
#include "stm32f10x_gpio.h"
/* *由于STM32的GPIO工作模式有8种(输入4种+输出4种)
*在GPIO输出之前要先对要操作的GPIO进行配置
知识点:
一个结构体
typedef struct//结构体
{
uint16_t GPIO_Pin;
GPIOSpeed_TypeDef GPIO_Speed;
GPIOMode_TypeDef GPIO_Mode;
}GPIO_InitTypeDef;
三个函数:
1、GPIO_Init(GPIOB,&GPIO_InitTypeDef);
2、GPIO_ResetBits(GPIOB,GPIO_Pin_5); 这里的意思是给端口5高电平
3、GPIO_SetBits(GPIOB,GPIO_Pin_5); 把GPIO引脚设置低电平(红LED灯亮)
*/ //驱动程序:GPIO初始化设置
int led_gpio_init_()
{
GPIO_InitTypeDef GPIO_InitTypeDef;//定义一个结构体变量 /*使能GPIO的rcc时钟*/
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); /*配置GPIO引脚*/
GPIO_InitTypeDef.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_0|GPIO_Pin_1;//使用操作符可以一次使用多个引脚,端口0是绿色 1是蓝色 5是红色
GPIO_InitTypeDef.GPIO_Speed = GPIO_Speed_50MHz;//设置输出速率50MHz
GPIO_InitTypeDef.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
/*初始化*/
GPIO_Init(GPIOB,&GPIO_InitTypeDef);//参数一选择GPIO外设(ABCDE)参数二指向GPIO_InitTypeDef的指针
} //延时函数
void delay()
{
int i = ;
while(i--);
} //主函数
int main(void)
{
led_gpio_init_();//调用GIPO初始化函数 /*循环给高低电平实现闪烁*/
while()
{
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
delay();
GPIO_SetBits(GPIOB,GPIO_Pin_5);
delay(); GPIO_ResetBits(GPIOB,GPIO_Pin_0);
delay();
GPIO_SetBits(GPIOB,GPIO_Pin_0);
delay(); GPIO_ResetBits(GPIOB,GPIO_Pin_1);
delay();
GPIO_SetBits(GPIOB,GPIO_Pin_1);
delay();
}
}
下面赋三个上面用到的函数,原处截图,出之STM32f10固件库使用手册中文版手册(这是个好东西,要懂得利用!!!以后开发都是根据这个来编程写函数的)



最后要烧到开发板的,烧程序的软件过程

STM32点亮闪烁LED灯的更多相关文章
- 最简单的STM32入门教程----闪烁LED
本文讲述的是如何从零开始,使用keil建立一个简单的STM32的工程,并闪烁LED灯,给小白看. 第零步,当然首先你得有一个STM32的板子,其IO口上接了一个LED... 第一步,建立一个文件夹0. ...
- 点亮一个led灯
/********************************* 代码功能:点亮一个led灯 使用函数: pinMode(引脚号,模式); digitalWrite(引脚号,电平状态); //默认 ...
- 进阶之路(基础篇) - 001 亮一个led灯
/********************************* 代码功能:点亮一个led灯 使用函数: pinMode(引脚号,模式); digitalWrite(引脚号,电平状态); //默认 ...
- 嵌入式学习笔记(综合提高篇 第一章) -- 利用串口点亮/关闭LED灯
1 前言 从踏入嵌入式行业到现在已经过去了4年多,参与开发过的产品不少,有交换机.光端机以及光纤收发器,停车场出入缴费系统,二维码扫码枪,智能指纹锁以及数字IC芯片开发等; 涉及产品中中既有 ...
- linux IMX6 汇编点亮一个LED灯
驱动Linux引脚与驱动STM32其实是一样的,都是在操作寄存器,在相应的寄存器上附上相应的值即可驱动. IMX6U手册上有各个管脚的命名,跟STM32不同,IOMUXC_SW_MUC_CTL_PAD ...
- 《STM32CubeMX配置STM32H743XI工程》第一讲《初始化UART,重定义printf函数,点亮一个LED灯》
1.打开STM32CubeMX软件->新建一个工程(软件自行到ST官网下载安装) 2.输入对应的芯片型号(本次基于野火STM32H743XI Pro 开发板)点击Start Project生成项 ...
- 在 S5PV210 的 开发板上 点亮 一个 LED 灯
参考学习教程:周立功嵌入式Linux开发教程-(上册) 材料:首先 准备一个 安装好 Linux 的 开发板 使用 xshell 工具 连接 开发板 ,winscp 工具 连接 开发板 , 准 ...
- CC2640R2F&TI-RTOS 拿到 TI CC2640R2F 开发板 第三件事就是使用 TI-RTOS 创建 一个任务 和 使用 信号量 超时来闪烁 LED灯
/* * data_process.c * * Created on: 2018年7月5日 * Author: admin */ #include <ti/sysbios/knl/Task.h& ...
- 单片机基础——使用GPIO输出点亮一个LED灯
1. 准备工作 硬件准备 开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接. 软件准备 需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程 ...
随机推荐
- 对象存储服务(Object Storage Service,简称 OSS)
阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量.安全.低成本.高可靠的云存储服务.它具有与平台无关的RESTful API接口,能够提供99.99 ...
- spring cloud 容错之zuul回退和Zuul过滤器
一.容错:Zuul回退 如果微服务下线了,针对每个微服务,都需要回复一个中文提示,而不是报异常 1.新建ConsumerFallbackProvider.java package com.pupeiy ...
- IDEA项目的复制操作
另一种复制项目的方法 完成
- 关于使用summernote编辑器提示内容无法汉化临时解决办法
原因:使用汉化summernote-zh-CN.js文件无法汉化 $('#summernote').summernote({ lang: 'zh-CN' }); 解决方法: 打开summernote. ...
- Git的常见基础操作命令
Git的常见基础操作命令 1安装初始化 1.1安装git本地安装Windows版本 下载地址: https://git-scm.com/downloads/ 1.2初始化Git用户信息配置 配置git ...
- nunit单元测试详解
在粗略看了代码后,下面就详细说明相应的测试标记(属性)的用法. [TestFixture(arguments)]属性标记类为测试类,若没有填写参数,则测试类必须含有无参构造函数,否则需要相应的有参构造 ...
- python---实现多个有序列表的合并
我觉得不用抄书上的代码. 遇到实现问题,应该结合python本身的功能去解决. 比如,当合并有序列表时,为什么一定要一项一项比较,而不是使用list的sort函数呢? # coding = utf-8 ...
- JDK1.8 JVM参数配置
JAVA_OPTS=" -server #服务器模式 -Xmx4g #JVM最大允许分配的堆内存,按需分配 -Xms4g #JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JV ...
- C++ 成员初始化列表
1.什么是成员初始化列表 #include<iostream> #include<string> using namespace std; class Weapon { pri ...
- .net remoting(1)简单例子
1.例子(程序间的通讯) class Program { static void Main(string[] args) { HttpChannel _channel = ); ChannelServ ...