IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> stm32f103从安装MDK5到烧录第一个亮灯程序 -> 正文阅读

[嵌入式]stm32f103从安装MDK5到烧录第一个亮灯程序

Ps:本人新手,发文以记录整理知识、加深理解、方其他新手之便、欢迎批评指正。欢迎大佬、同志茶余饭后当看个动态,更欢迎评论出你们建议和意见。

stm32第一次亮灯总结

环境

  • 核心板:GD(stm)32f03c8t6方案验证板
  • IDE:MDK-ARM(Keil5\MDK5)
    GD(stm)32f03c8t6方案验证板

第一次亮灯
第一次亮灯
个人基础不多,第一次拿到朋友送的这个板子比较感兴趣,晚上一直在CSDN上翻文章,从零开始配置环境,边抄边改亮灯的程序到最后烧入,一直搞到凌晨5点多,也是绝了。

步骤

1.下载MDK5并“注册”

CSDN引用-安装keil5(MDK)及导入pack包教程
该文章介绍了MDK软件的安装与“注册”、添加设备固件包(文中该部分其实直接双击安装即可)
如果文中注册机失效或者找不到注册机,可以下载我提供的
链接:https://pan.baidu.com/s/1fN5sHcum53MjH7e-OS0hNg
提取码:6666

2.官网下载对应芯片的标准库文件

CSDN引用-STM32固件库下载步骤
该文章介绍了如何从官网下载对应芯片的固件库(标准固件库)

CSDN引用-STM32官方固件库(标准固件库)下载及介绍
该文章简单介绍了标准外设库、如何从官网下载对应芯片的固件库、库文件内容介绍

3.官网下载芯片Pack包

CSDN引用-安装keil5(MDK)及导入pack包教程
该文章介绍了MDK软件的安装与“注册”、添加设备固件包(文中该部分其实直接双击安装即可)

4.官网下载ST-Link仿真器驱动

官网ST-Link下载地址

5.新建工程与程序烧录

!!!十分推荐的文章,可结合我上面的步骤一起看
CSDN引用-keil MDK5搭建STM32开发环境
该文章介绍了MDK5的安装与“注册”、安装固件包、新建新工程(特别介绍了新建工程中最后一步的运行环境管理器窗口,并介绍了通过选项配置需要的官方库)、新建程序示例、程序烧录的两种方式(生成HEX文件、用MDK上传程序)、ST-Link驱动的安装与使用。

依据上面文章新建工程,并在此基础上根据验证板原理图修改对应GPIO,以及对照标准库中GPIO.c和相关.h文件规范修改,最终修改形成我的main.c程序:

//这是一个点亮LED的程序,LED接在PA8,PB13,PB14,PB15
#include "stm32f10x_conf.h"

int main()
{
    //GPIO使能
	  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
	  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
	
	  //PA8
    GPIO_InitTypeDef GPIO_InitStruct8;
    GPIO_InitStruct8.GPIO_Pin   = GPIO_Pin_8;
    GPIO_InitStruct8.GPIO_Mode  = GPIO_Mode_Out_PP;
    GPIO_InitStruct8.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOA, &GPIO_InitStruct8);
	
	  //PB13
    GPIO_InitTypeDef GPIO_InitStruct13;
    GPIO_InitStruct13.GPIO_Pin   = GPIO_Pin_13;
    GPIO_InitStruct13.GPIO_Mode  = GPIO_Mode_Out_PP;
    GPIO_InitStruct13.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStruct13);
	
		//PB14
    GPIO_InitTypeDef GPIO_InitStruct14;
    GPIO_InitStruct14.GPIO_Pin   = GPIO_Pin_14;
    GPIO_InitStruct14.GPIO_Mode  = GPIO_Mode_Out_PP;
    GPIO_InitStruct14.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStruct14);
	
		//PB15
    GPIO_InitTypeDef GPIO_InitStruct15;
    GPIO_InitStruct15.GPIO_Pin   = GPIO_Pin_15;
    GPIO_InitStruct15.GPIO_Mode  = GPIO_Mode_Out_PP;
    GPIO_InitStruct15.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStruct15);
		
    while (1) {
        //GPIO_WritePin(GPIOG, GPIO_PIN_13, GPIO_PIN_SET);
			//GPIO_SetBits(GPIOB,GPIO_Pin_14);
			//GPIO_SetBits(GPIOB,14);
			GPIO_WriteBit(GPIOA,GPIO_Pin_8,1);
			GPIO_WriteBit(GPIOB,GPIO_Pin_13,1);
			GPIO_WriteBit(GPIOB,GPIO_Pin_14,1);
			GPIO_WriteBit(GPIOB,GPIO_Pin_15,1);
			
    }
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

其他

CSDN引用-如何借助官网例程学习STM32
该文章介绍了官网例程的使用,注意是example中的文件拷至template(模板)项目中。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-01 14:40:08  更:2021-08-01 14:40:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 18:52:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码