stm32——编写程序及运行

描述

这里还是说明一下
本人还是一个算法工程师,虽然本科专业为自动化,但是单片机这项技能早就丢了哈哈。这次是项目需要,因此简单拾起来了一下下,因此这些文章还是属于记录性质的,并不高端也不难,仅仅面向初学者吧

stm32项目搭建基础

好吧进入主题,我们现在要搭建一个stm32的项目
我还是把问题写在最开始把

1. 注册keil

你的keil需要注册

  • 当你编写了几行类似于helloworld的小代码,想看看它能不能通过编译时,你的keil会提示如下一句话
    error:L6047U: The size of this image (36840 bytes) exceeds the maximum allowed for this version of the linker.
    
  • 原因:你的keil没有注册

keil注册步骤

  1. 下载一个keil注册机(keil generic keygen),从网上就可以下载。还是一样,下不到的话可以私信
  2. 打开keil,菜单栏“File”—>“License Management”——>“Single-User License”,在这个栏下面会有一个“Computer ID”,复制这个码(码是5位-5位的)
  3. 打开下载好的keil注册机,在“CID”位置上粘贴刚才的“Computer ID”码,点击下面的“Generate”
  4. 找到上方生成的一大长串码(很明显,不会有比它更长的东西),复制这个码到keil步骤2的窗口中,填在“New License ID Code (LIC)”后面,点击“Add LIC”
  5. 完成注册

2. 新建工程

这一项其实我没有太多要说的。

我编写的程序很简单,主要是在一个实例教程更改我需要的部分,因此我没有进行新建工程这一步。具体新建工程的操作可以在网上搜索。

核心步骤其实和大部分其他C项目一样,大体就是:新建一个文件夹,在不同文件夹中放入不同的库文件和源文件,有一个文件夹放上工程的核心代码

3. 编译基础

这里贴出一些初学者常见问题吧

  • 最基础最基础:编写完你的代码,点击编译,然后拿一根数据线,一头连接下载器,一头插在电脑上。下载器连接在stm32上,stm32外接一个电源(烧程序时无须,无USB供电时必须)。随后点击load,能够把代码烧到单片机中。

  • keil提示warning

    warningL #1-D : last line of ends without a newline
    

    解决:程序要有最后一个空行,空行连空格都不能有

  • keil提示error

    ERROR: Symbol xxx multiply defined 
    

    解决:头文件有冲突,某些变量被重复定义了,检查项目中的头文件是否有重复

    ERROR: Ignoring --entry command. Cannot find argument 'Reset_Handler'
    

    解决:新建工程时创建环境的问题。keil菜单栏点击“Project”-“Manage”-“Run-Time Environment”
    检查“CMSIS”中的“DSP”和“CORE”和“Device”中的“Startup”,勾选这三个后面的“Sel.”小方格

  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值