掌上实验室V8系列教程(一)新建Keil项目

目录

1 软件开发环境

2 项目目标

3 电路原理图​

4 项目创建向导

4.1 创建项目

4.2 添加源文件

4.3 编译程序

4.4 下载和运行程序

5. 常见错误


1 软件开发环境

软件开发平台KEIL5 + ArteryTek::AT32F403A_407_DFP(2.0.2)  + ARM.CMSIS.5.8.0.pack

相关下载

雅特力AT32 KEIL扩展包

掌上实验室V8 完整原理图

2 项目目标

 这是我们建立的第一个基于掌上实验室V8的项目,主要是介绍新建项目的过程,为以后学习打好基础。本项目的功能就是点亮板上的LED4(电路板的右上角)。

3 电路原理图

4 项目创建向导

4.1 创建项目

首先建立一个项目目录,我这儿是D:\temp\at32。目录中不要包含中文。

打开keil, 在Project菜单选择New uVision Project..

 输入项目名称 template。名称可以按需定义,不能是中文。


目录名中最好不要有中文!KEIL支持带中文名的目录不是特别好,尽管编译和运行都正常。但是在源码编辑时,很多高级功能不能用,还会提示一些错误。


选择Device: AT32F407VGT7

选择对应的驱动模块,生成项目。如果在Validation Output中的相应警告,或图形界面中有黄色或红色警告,点击Resolve,Keil会自动加入缺失的模块。

4.2 添加源文件

在Source Group 1上点击鼠标右键,新建C语言源文件 main.c

为方便中文输入和方便代码编写,可以通过菜单Edit-configuration修改Encoding设置为Encode in UTF-8 without signature

 在main.c中输入如下代码

#include "at32f403a_407_conf.h"

void gpio_pins_init(void)
{
	//打开GPIOC时钟
	crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
	
	//配置PC0为输出
	gpio_init_type gpio_init_struct;
	
	gpio_init_struct.gpio_pins  = GPIO_PINS_0;
	gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
	gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
	gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
	gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;

	gpio_init(GPIOC, &gpio_init_struct);
}

int main(void)
{
	gpio_pins_init();
	
	for(;;){
		gpio_bits_reset(GPIOC, GPIO_PINS_0);
	}
}

 4.3 编译程序

编译程序之前,请确认打开编译器C99模式。

Target 1上点击右键,选择Options for 'Target 1'...,会看到下列设置对话框

 Keil版本不同,也可能得到下面的对话框

编译程序,编译成功会看到如下提示(0 Error)

首次下载程序前先确认DEBUG选项,掌上实验室内置AT-Link-Ez仿真器(CMSIS-DAP接口)。

右键点击Target 1,选择Options for 'Target 1'...

 

 会弹出 下列对话框

选择SW接口,并将max Clock 设置为10MHz,可以加快程序下载速度。

4.4 下载和运行程序

 通过micro USB线把掌上实验室连接到电脑,下载并运行程序点亮LED4。

点击Debug下载程序,下载完成后界面如下,程序暂停在main函数的第一行,点击运行,开始执行程序。

 这时候可以看到板子上LED4点亮了。

上述就是掌上实验室新建项目的基本过程,以后内容中不在重复这些基本过程,只是会给出项目需要的驱动模块名称。

程序会保存在MCU的Flash中,掉电也不会丢失。当掌上实验室下次通电时,会自动运行上次下载好的程序。

5. 常见错误

 如果碰到这个错误,是你windows登录名是中文,自行百度解决用户名中文问题。

版权声明:本文为CSDN博主「lg28870983」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lg28870983/article/details/121646179

生成海报
点赞 0

lg28870983

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

STM32F103完成对SD卡的数据读取

目录 一、SD卡介绍 1.概述 2.SD模式 3.SD卡读取与写入(SPI模式) 二、 STM32F103完成对SD卡的数据读取 1.代码部分 2.U盘格式化 3.电路连接 4.具体实现 三、参考资料 一、SD卡介绍 1.概述

如何在MCU上通过ToD+PPS 获取同步时间(一)

欢迎淘宝搜索飞灵科技,我司相关新产品陆续上线 在很多工业使用场景中,网络内一些设备终端与设备终端,或设备终端与主控之间需要进行时间同步。 比如给传感器数据打时间戳,比如总线的时分复用等场景