博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
STM32点亮闪烁LED灯
阅读量:6598 次
发布时间:2019-06-24

本文共 1998 字,大约阅读时间需要 6 分钟。

详解请看其他博客:

 

 

1         /*本程序实现STM开发板上LED灯红绿蓝闪烁*/ 2  3  4  5 #include "stm32f10x.h"   // 相当于51单片机中的  #include 
6 #include "stm32f10x_gpio.h" 7 /* 8 9 *由于STM32的GPIO工作模式有8种(输入4种+输出4种)10 *在GPIO输出之前要先对要操作的GPIO进行配置11 知识点:12 一个结构体13 typedef struct//结构体14 {15 uint16_t GPIO_Pin; 16 GPIOSpeed_TypeDef GPIO_Speed; 17 GPIOMode_TypeDef GPIO_Mode; 18 }GPIO_InitTypeDef;19 三个函数:20 1、GPIO_Init(GPIOB,&GPIO_InitTypeDef);21 2、GPIO_ResetBits(GPIOB,GPIO_Pin_5);  这里的意思是给端口5高电平22 3、GPIO_SetBits(GPIOB,GPIO_Pin_5);   把GPIO引脚设置低电平(红LED灯亮)23 */24 25 //驱动程序:GPIO初始化设置26 int led_gpio_init_()27 { 28 GPIO_InitTypeDef GPIO_InitTypeDef;//定义一个结构体变量29 30 /*使能GPIO的rcc时钟*/31 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);32 33 /*配置GPIO引脚*/34 GPIO_InitTypeDef.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_0|GPIO_Pin_1;//使用操作符可以一次使用多个引脚,端口0是绿色 1是蓝色 5是红色35 GPIO_InitTypeDef.GPIO_Speed = GPIO_Speed_50MHz;//设置输出速率50MHz36 GPIO_InitTypeDef.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出37 /*初始化*/38 GPIO_Init(GPIOB,&GPIO_InitTypeDef);//参数一选择GPIO外设(ABCDE)参数二指向GPIO_InitTypeDef的指针39 }40 41 //延时函数42 void delay()43 {44 int i = 10000000;45 while(i--);46 }47 48 //主函数49 int main(void)50 {51 led_gpio_init_();//调用GIPO初始化函数52 53 /*循环给高低电平实现闪烁*/54 while(1)55 {56 GPIO_ResetBits(GPIOB,GPIO_Pin_5);57 delay();58 GPIO_SetBits(GPIOB,GPIO_Pin_5);59 delay();60 61 GPIO_ResetBits(GPIOB,GPIO_Pin_0);62 delay();63 GPIO_SetBits(GPIOB,GPIO_Pin_0);64 delay();65 66 GPIO_ResetBits(GPIOB,GPIO_Pin_1);67 delay();68 GPIO_SetBits(GPIOB,GPIO_Pin_1);69 delay();70 }71 }

下面赋三个上面用到的函数,原处截图,出之STM32f10固件库使用手册中文版手册(这是个好东西,要懂得利用!!!以后开发都是根据这个来编程写函数的)

 

 

 

 

 

 

 

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

 

 

 

转载于:https://www.cnblogs.com/kinson/p/7609825.html

你可能感兴趣的文章
Windows Server 2012下的文件迁移
查看>>
nginx安装与配置2(转载)
查看>>
Linux下Mongodb安装和启动配置
查看>>
冒泡排序与选择法排序
查看>>
SpringMvc (注解)中的上传文件
查看>>
【系列3】使用Dockerfile创建带编译安装nginx服务的Centos Docker镜像
查看>>
Oracle提高查询效率的方法
查看>>
我的友情链接
查看>>
***菜鸟要学会的几个cmd ddos命令
查看>>
【云大会】之五《第七届云计算大会 Day1感受:喧嚣退潮、人气萎缩》
查看>>
大数据与机器学习的一些博文整理
查看>>
Struts2中防止页面重复提交
查看>>
无需认证的mail,适用于ZABBIX等运维系统
查看>>
程序员必看的十大电影
查看>>
如何在Linux系统上监测系统温度?
查看>>
【转载】【原创】生命中,要有自己的一方晴天
查看>>
Python selectors
查看>>
前端优化网站性能的14条规则
查看>>
VC2010 ADO 写入二进制数据到数据库 下载二进制数据到文件
查看>>
Win 2003 安装 IIS SNMP 无法复制 .vbs .dll 等文件 怎么办 解决办法
查看>>