【精选】stm32点亮一个led程序

您所在的位置:网站首页 stm32点亮一个led灯程序 【精选】stm32点亮一个led程序

【精选】stm32点亮一个led程序

2023-10-21 04:17| 来源: 网络整理| 查看: 265

近来新接触stm32,途中学习的疑惑,32和51有什么区别呢,假设我把它的端口控制都学会了,那和51就没有什么区别吧,接触了几天,确实有很多相似之处,只是51的端口配置比较简单,32的端口因为功能强大,所以配置祥细一些,直接上图了。

在这里插入图片描述

它的使用流程是这样的

首先得端口配置

下面第一个标记是GPIOA,就是使用GPIOA这个口的功能,如果是使用B口,就是GPIOB了,学会理解,学会修改

第二个标记这里打开了PIN1~PIN3和PIN7,用哪个打开哪个,简单说就是复制粘贴的事,有样学样复制就行。

第三个标记是初始化GPIOA,就是这个样子,GPIOA配置成功了 在这里插入图片描述

第二部分:定义端口 32因为不用sbit了,我就直接用define定义端口使用 在这里插入图片描述

第三部分:使用端口 使用的时候,就可以在程序中直接运行名字点亮灯了 在这里插入图片描述

配套个程序,让大家参考一下了

//头文件 #include “stm32f10x.h” #include “GPIOLIKE51.h” #define uchar unsigned char #define uint unsigned int #define PA0 PAout(0) //定义端口 #define PA1 PAout(1) #define PA2 PAout(2) #define PA3 PAout(3) #define PA7 PAout(7) //#define PA GPIOA #define PAOUT(x) GPIO_Write(GPIOA, x) //定义PA口

//函数声明 void GPIO_Configuration(void);

//============================================================================= //文件名称:Delay //功能概要:延时 //参数说明:nCount:延时长短 //函数返回:无 //=============================================================================

void Delay(uint32_t nCount) //延时子程序 { for(; nCount != 0; nCount–); }

void delay_ms(uint k) //延时子程序 { uint i,j; for(i=0;i ; } } }

//============================================================================= //文件名称:main //功能概要:主函数 //参数说明:无 //函数返回:int //============================================================================= int main(void) { GPIO_Configuration();

PAOUT(0xff); while (1) { PA0=0; //点亮灯 while(1); //停止标记 }

}

//============================================================================= //文件名称:GPIO_Configuration //功能概要:GPIO初始化 //参数说明:无 //函数返回:无 //============================================================================= void GPIO_Configuration(void) //端口配置 { GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA , ENABLE); //============================================================================= //LED -> PC13 //============================================================================= GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_7; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //AIN,IN_FLOATING,IPD,IPU,Out_OD,Out_PP,AF_OD,AF_PP GPIO_Init(GPIOA, &GPIO_InitStructure); }

STM32专用keil软件 . 软件,注册机,安装教程都有的。 . 在这里插入图片描述 . 编程软件界面 . 在这里插入图片描述 .

需要软件请联系岁月哥Q:936559219

获取,软件整理不容易,9元发送,谢谢理解



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3