江科大stm32学习的第一天

声明:文章中出现的资料多数出自江科大视频中,本文是我学习stm32的随手笔记

一、工程创建

相比较于51,在学习stm32的时候,我发现新建工程时会比较繁琐,需要在新建工程中添加启动文件和头文件,那么接下来就是我创建第一个工程的步骤。

1、新建工程

在新建文件夹中,新建一个工程,需要注意的是,文件夹名字容易修改,但是工程名字修改具有一定难度,这里我和教程视频命名方式一样,取作project

选择芯片型号,我的芯片型号是STM32F103C8T6,在目录下找到对应型号

选择STM32F103C8,双击之后会弹出创建工程助手,可以先不管,叉掉

这样子一个初始工程就建立完成,但是还不能跑代码,需要导入启动文件和头文件。

2、导入启动文件及头文件

在文件夹中新建一个Start文件,将准备好的启动文件添加

core_cm3.c是内核的寄存器配置文件

stm32f10x.h作用相当与REGX52.h,是声明寄存器以及相对应地址

system_stm32f10x.h是时钟配置文件

同时需要添加后缀名md.s的启动文件

按着ctrl,将需要add的文件点上,可以一次性添加多个文件,之后可以看到工程里已经添加完成

接着就可以在User文件夹中添加main函数

二、库函数导入

在工程目录里新建一个Library文件夹,然后将固件库-->Libraries-->STM32F10x_StdPeriph_Driver-->inc 和固件库-->Libraries-->STM32F10x_StdPeriph_Driver-->src里全部内容复制到Library中,然后通过add file to group添加到工程中

再打开固件库-->Project-->STM32F10x_StdPeriph_Template

找到如上图所示文件,后缀名conf是配置库函数头文件的包含关系,同时还包含参数检测函数的定义,后缀名为it(interrupt)是用来存放中断函数的,将三个文件复制到工程的User中,回到keil软件,在User中添加进来

然后需要进行一次宏定义,打开stm32f10.h文件,找到这个条件编译

这个语句的意思是如果要include有效,需要先定义USE_STDPERIPH_DRIVER(标准外设驱动),所以我们将“USE_STDPERIPH_DRIVER”进行复制,然后打开工程选项,将复制的字符串粘贴,同时导入Start,Library和User文件(下图还少了Start出现报错后才发现)

然后进行编译,第一次编译会比较慢

三、改错

1、

我第一次编译时出现报错

我查了一下资料,是因为我Start导入了多余的启动文件,把多余的启动文件去掉就不会出现报错了

2、

编译后下载出现了提示“No ULINK2”

是因为调试器没有修改,打开工具选项,选择Debug

选择STLink,同时点击setting-->Download,把Reset and Run勾上

四、代码测试

先将芯片和stlink进行连接

资料来源江科大

然后通过给高低电平控制灯闪烁

#include "stm32f10x.h"
int main(void){
		RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
		GPIO_InitTypeDef GPIO_InitStructure;
		GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
		GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
		GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
		GPIO_Init(GPIOC,&GPIO_InitStructure);
		GPIO_SetBits(GPIOC, GPIO_Pin_13);//置高电平
		//GPIO_ResetBits(GPIOC,GPIO_Pin_13);//置低电平
	while(1){
		
	}
}

  • 20
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值