第三课 学习韦东山老师STM32F103 迷你核心单片机Mini开发板

本节课为《7天物联网智能家居实战训练营1期》的第3节课。


一、STM32时钟树是什么?

STM32时钟树见如下框图:
在这里插入图片描述
STMcubemx设置时钟
在这里插入图片描述
时钟理解及互动环节

二、GPIO设置及编程应用

在这里插入图片描述

GPIO编程
当用延时做亮灯实验时,程序采用查询io电平的办法来捕获按键动作,并没有响应,经分析原因是延时占用了MCU大部分的运行时间,所有只有在中断模式下处理按键动作才能实现(该部分在第四节课中用中断来解决)。
在这里插入图片描述

GPIO学习互动环节----

三、 编写代码点亮LED

//头文件
#include "stm32f10x.h"
#include "GPIO.h"

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

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

void Delay(uint32_t nCount)
{
  for(; nCount != 0; nCount--);
}


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

//=============================================================================
//文件名称:GPIO_Configuration
//功能概要:GPIO初始化
//参数说明:无
//函数返回:无
//=============================================================================
void GPIO_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;
  
  RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA , ENABLE); 						 
//=============================================================================
//LED -> PA1
//=============================================================================			 
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 
  GPIO_Init(GPIOA, &GPIO_InitStructure);
}

注:点亮视频上传不成功!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值