小白跟做江科大32单片机之新建工程

2024-05-24 12:44

本文主要是介绍小白跟做江科大32单片机之新建工程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目基础配置

1.新建item文件夹,包含全部stm32项目文件

2.在item文件夹中新建第一个项目,2-1 stm32工程模板,起名字是project

3.工程芯片选择STM32F10318,因为课程中的芯片是STM32F10318C8T6

4.在固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm下找到这几个文件并复制到新建文件start目录下。

5.在固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x下找到这三个文件复制到新建文件start目录下

6.start文件中现在包含以下文件

7.由于内核的寄存器描述和外围设备的描述文件不是在一起的,所以需要添加内核的寄存器描述文件

将固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport下的两个文件都复制到start目录下

8.最终start包含以下文件

9.工程中要添加这些文件

10.添加文件路径,在这里把start的路径添加进去,添加进去之后那里会出现start

11.Target右键新建group->User

12.User->new 文件,要注意位置

13.编写利用寄存器开发STM32C的代码

14.修改编码格式

15.四根母对母杜邦线链接stlink

16.PC13灯闪烁,另一个灯常亮

17.调整Debug

18.上一步选完STLINK-debug之后,点击旁边的setting

19.编译之后,点击这个,没问题就会直接下载到STM32中


点灯

一、寄存器驱动

1.配置时钟,STM32默认单元没有时钟,必须先有时钟才能运行,先打开GPIOC的时钟

2.配置PC13口的模式,主要就是CNF13和MODE13

3.PC13口输出数据寄存器,写1就是高电平,写0就是低电平

4.这系统是低电平点亮,所以全0就是全亮

GPIOC->ODR =0x00000000;全亮

GPIOC->ODR =0x00002000;全灭

二、库函数驱动

(一)、库函数工程基础配置

1.在工程目录下新建文件用于存放库函数

2.将固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\src下的文件全部复制到刚刚新建的library文件夹下,其中misc.c是内核库函数。

3.将固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\inc下的文件全部复制到刚刚新建的library文件夹下,这都是头文件。

4.Target右键新建group->library

5.添加全部文件到library下

6.将固件库\STM32F10x_StdPeriph_Lib_V3.5.0.zip\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template文件夹下的这三个文件复制到User下

7.在keil5软件中将这三个文件添加到User下

8.添加一个宏定义

找到下面这个语句,复制USE_STDPERIPH DRIVER

9.复制到这里

10.添加User和Library目录的路径,这步参考项目基础配置第10步。

(二)、代码编写

1.编译测试

#include "stm32f10x.h"
int main (void)
{

        while (1)

          {

           }

}

2.库函数点灯

#include "stm32f10x.h"                  // Device header

int main(void)
{
    /*开启时钟*/
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);    //开启GPIOC的时钟
                                                            //使用各个外设前必须开启时钟,否则对外设的操作无效
    
    /*GPIO初始化*/
    GPIO_InitTypeDef GPIO_InitStructure;                    //定义结构体变量
    
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;        //GPIO模式,赋值为推挽输出模式
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;                //GPIO引脚,赋值为第13号引脚
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //GPIO速度,赋值为50MHz
    
    GPIO_Init(GPIOC, &GPIO_InitStructure);                    //将赋值后的构体变量传递给GPIO_Init函数
                                                            //函数内部会自动根据结构体的参数配置相应寄存器
                                                            //实现GPIOC的初始化
    
    /*设置GPIO引脚的高低电平*/
    /*若不设置GPIO引脚的电平,则在GPIO初始化为推挽输出后,指定引脚默认输出低电平*/
//    GPIO_SetBits(GPIOC, GPIO_Pin_13);                        //将PC13引脚设置为高电平
    GPIO_ResetBits(GPIOC, GPIO_Pin_13);                        //将PC13引脚设置为低电平
    
    while (1)
    {
        
    }
}


注意:前面的项目基础配置中的第四步为什么选择那些文件的答案就是这个

这篇关于小白跟做江科大32单片机之新建工程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/998442

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

墨刀原型工具-小白入门篇

墨刀原型工具-小白入门篇 简介 随着互联网的发展和用户体验的重要性越来越受到重视,原型设计逐渐成为了产品设计中的重要环节。墨刀作为一款原型设计工具,以其简洁、易用的特点,受到了很多设计师的喜爱。本文将介绍墨刀原型工具的基本使用方法,以帮助小白快速上手。 第一章:认识墨刀原型工具 1.1 什么是墨刀原型工具 墨刀是一款基于Web的原型设计工具,可以帮助设计师快速创建交互原型,并且可以与团队

C++工程编译链接错误汇总VisualStudio

目录 一些小的知识点 make工具 可以使用windows下的事件查看器崩溃的地方 dumpbin工具查看dll是32位还是64位的 _MSC_VER .cc 和.cpp 【VC++目录中的包含目录】 vs 【C/C++常规中的附加包含目录】——头文件所在目录如何怎么添加,添加了以后搜索头文件就会到这些个路径下搜索了 include<> 和 include"" WinMain 和

Java面试八股之怎么通过Java程序判断JVM是32位还是64位

怎么通过Java程序判断JVM是32位还是64位 可以通过Java程序内部检查系统属性来判断当前运行的JVM是32位还是64位。以下是一个简单的方法: public class JvmBitCheck {public static void main(String[] args) {String arch = System.getProperty("os.arch");String dataM

零基础STM32单片机编程入门(一)初识STM32单片机

文章目录 一.概要二.单片机型号命名规则三.STM32F103系统架构四.STM32F103C8T6单片机启动流程五.STM32F103C8T6单片机主要外设资源六.编程过程中芯片数据手册的作用1.单片机外设资源情况2.STM32单片机内部框图3.STM32单片机管脚图4.STM32单片机每个管脚可配功能5.单片机功耗数据6.FALSH编程时间,擦写次数7.I/O高低电平电压表格8.外设接口

这新建的教学楼就是王奶奶牵线搭桥

可你们知道吗的玩耍 今天的可你们知道吗的玩耍,走进大厅,这新建的教学楼就是王奶奶牵线搭桥,在鲤城区升文小学,它立刻就逼出了老鼠展开一场鼠狗大战可这老鼠也灵活竟躲进石头缝里,记忆和创造能力,建桥,能给人带来一种温馨的感觉,经常做这种练习,秋高气爽。 夏天,便可看到一张大大的讲台桌,明亮,还可进行补充加工,太热了,风儿朝它做了个鬼脸笑嘻嘻地跑开了,天像擦拭得一尘不染的玻璃,它上面放着粉笔槽,推开

工程文档CAD转换必备!在 Java 中将 DWG 转换为 JPG

Aspose.CAD 是一个独立的类库,以加强Java应用程序处理和渲染CAD图纸,而不需要AutoCAD或任何其他渲染工作流程。该CAD类库允许将DWG, DWT, DWF, DWFX, IFC, PLT, DGN, OBJ, STL, IGES, CFF2文件、布局和图层高质量地转换为PDF和光栅图像格式。 Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格

IPython小白教程:提升你的Python交互式编程技巧,通俗易懂!

IPython是一个增强的Python交互式shell,它提供了丰富的功能和便捷的交互方式,使得Python开发和数据分析工作更加高效。本文将详细介绍IPython的基本概念、使用方法、主要作用以及注意事项。 一、IPython简介 1. IPython的起源 IPython由Fernando Pérez于2001年创建,旨在提供一个更高效的Python交互式编程环境。 2. IPyt

STM32单片机PWR电源控制详解

文章目录 1. PWR概述 2. 电源结构框图 3. 上电复位和掉电复位 4. 可编程电压监测器 5. 低功耗模式 6. 模式选择 6.1 睡眠模式 6.2 停止模式 6.3 待机模式 7. 代码示例 1. PWR概述 PWR(Power Control)电源控制,负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能。 可编程电压监测器