stm32的简单程序的编译

stm32的简单程序的编译

工欲善其事必先利其器,提及stm32程序我们先不谈,我们先从mdk开始今天的编程之路。
MDK 是 Microcontroller Development Kit的缩写,是ARM公司出品的,是针对ARM的处理器,尤其是Cortex-m内核处理器的最佳开发工具。
Stm32是使用了ARM内核的嵌入式单片机,拥有这高性能,低成本和低消耗的特点。所以我们今天使用它。

MDK5.10 安装过程

参考连接:https://blog.csdn.net/weixin_42625444/article/details/103262415
1、打开MDK5.10安装包,点击next进入下一步。点同意对勾,继续安装,在这里插入图片描述
2、选择安装目录和pack目录,点击next。
在这里插入图片描述
3、输入姓名、公司和e-mail,继续安装。在这里插入图片描述
4、进入安装进度条。在这里插入图片描述
5、点击Finsh完成,进入pack installer界面。在这里插入图片描述
打开pack installer可能会产生如下情况,但对今天编程不影响,可以忽略。我网上也没找见解决方法,希望大佬指点。在这里插入图片描述
接着下载安装 CMSIS 和 STM32F103的支持库。
6、打开keil uVision5程序,程序是试用版本,可以选择用keygen破解。在这里插入图片描述
在FIle中License Mangement,使用keygen用CID编号获取Lic,效果如下:
在这里插入图片描述

新建项目工程

1、点击Project中的New uVision Project,选择目录起名字。
在这里插入图片描述
2、选择芯片类型。在这里插入图片描述
3、完成文件创建,管理文件图图标就是下图所指地方。在这里插入图片描述
文件设置目录有user放启动文件,主函数,中断文件。obj过程文件,system系统文件,hardware硬件。
在这里插入图片描述
双击user找到startup_stm32f10x_hd.s文件,而文件在stm32的官方开发包中需要下载。位置为:下载文件\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar中。在这里插入图片描述
在user中新建main.c文件。在这里插入图片描述
随便找一个代码:
参考代码:STM32底座实验指导书第三章3.2

#include"stm32f1xx_hal.h" 
#include"stm32f1xx.h"
#define LED_GPIO_PORT GPIOA
#define LED1 GPIO_PIN_5 //LED1 #define LED2 GPIO_PIN_12 //LED2
#define LED1_ON() HAL_GPIO_WritePin(LED_GPIO_PORT,LED1,GPIO_PIN_RESET) // ? ? LED1 #define LED2_ON() HAL_GPIO_WritePin(LED_GPIO_PORT,LED2,GPIO_PIN_RESET) // ? ? LED2
#define LED1_OFF() HAL_GPIO_WritePin(LED_GPIO_PORT,LED1,GPIO_PIN_SET) // ? ? LED1 #define LED2_OFF() HAL_GPIO_WritePin(LED_GPIO_PORT,LED2,GPIO_PIN_SET) // ? ? LED2
extern void LED_Init(void);//LED ???
int main(void) 
{ 
	HAL_Init(); //??? HAL ? LED_Init(); //??? LED
	while(1) 
	{ 
		LED1_ON(); //?? 
		LED1 delay_ms(500); //?? 500ms 
		LED2_ON(); //?? 
		LED2 delay_ms(500); //?? 500ms
		LED1_OFF(); //?? 
		LED1 delay_ms(500); //?? 500ms 
		LED2_OFF(); //?? 
		LED2 delay_ms(500); //?? 500ms
	}
}

如下图所示:在这里插入图片描述
4、选择project中的options for Target 点击。选择output,在Create HEX File前面画勾。HEX文件在后面的电路仿真有用。
在这里插入图片描述
然后点击运行。成功的完成第一个文件编译!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值