stm32固件库在stm3210e-eval开发板上的移植

发布者:清新家园最新更新时间:2023-10-01 来源: elecfans关键字:stm32  固件库  移植 手机看文章 扫描二维码
随时随地手机看文章

  首先建立工程,我习惯性在工程文件夹下建立以下几个文件夹,分别放不同的文件,以区别不同文件的不同作用,方便寻找和移植。如下:

  

 

  在PROJECT文件夹下建立工程项目,启动keil,开始建立工程。

  

 

  注意建立在PROJECT文件夹下。

  

 

  随便起个名字,我起的名字是MDK,建立后,会提示你选择器件型号

  

 

  

 

  我的器件如上图,所以选择。确定后会询问你是否加入启动文件。我们用stm32的固件库,所以不用mdk的,选择否。

  

 

  下面配置工程的选项option,右键点Target会看到Options。

  

 

  以下是各个选项卡的配置内容。

  

 

  

 

  这里注意的是在output选项卡里要选择目标文件存放的位置,放在之前建立的OBJ文件夹里。

  

 

  在这里要填写放置头文件的位置,一般MDK在安装目录里会有现成的头文件,但是那是低版本的,我们要改写头文件的位置。在这之前要先做一个步骤是把3.3版本的固件库放到MDK文件夹里。

  

 

  然后在MDK中就可以设置目标位置了,下图画的两个文件夹就是要确定的位置。具体内容可以参阅官方文档。

  

 

  添加好后,如下图

  

 

  

 

  最后要配置成上图形式。注意define里的内容要如上填写,这里确定了你使用的是high density器件,并且使用标准外设驱动,即用到固件库。

  

 

  在这里为了可以在ram里运行,我们要添加一个文件,我将他命名为ram.ini,注意后缀为.ini。内容如下:

  

 

  标注的地方要注意,这个文件名是你之前在output选项卡设置的时候的目标文件名,后缀为.axf。前面的OBJ是OBJ文件夹下的目标文件。并且要把ram.ini文件放到根目录MDK下,如图。

  

 

  下一个选项卡要如此设置。

  

 

  

 

  至此,项目设置完成。

  下面添加文件,添加文件如下,具体位置在哪请参考官方文档。

  

 

  由于一个重要文件stm32f10x_conf.h在固件库里没有,所以我们还要再寻找这东西。位置在STM32F10x_StdPeriph_Lib_V3.3.0ProjectSTM32F10x_StdPeriph_Template,借用,我们需要复制到STM32F10x_StdPeriph_Lib_V3.3.0LibrariesSTM32F10x_StdPeriph_Driverinc文件夹下。并且要修改。

  

 

  注释掉无用的头文件包含语句,我们的程序只是点亮一个灯,所以只用以上两个头文件即可。加入的main文件内容如下。

  

 

  编译工程,注意下面提示框

  

 

  这里要注意,要与ram.ini的LOAD后面的一样,包括原点的个数!很重要。

  连接jlink,


  debug。运行,成功。


关键字:stm32  固件库  移植 引用地址:stm32固件库在stm3210e-eval开发板上的移植

上一篇:STM32实战案例分享:剖析STM32应用在电源项目上常见的那些难题
下一篇:STM32启动文件简介、详细步骤及代码讲解

推荐阅读最新更新时间:2024-11-12 15:00

基于STM32单片机SPWM逆变电源设计
利用晶闸管电路把直流电转变成交流电,这种对应于整流的逆向过程,定义为逆变。例如:应用晶闸管的电力机车,当下坡时使直流电动机作为发电机制动运行,机车的位能转变成电能,反送到交流电网中去。又如运转着的直流电动机,要使它迅速制动,也可让电动机作发电机运行,把电动机的动能转变为电能,反送到电网中去。 1、基于STM32单片机SPWM逆变电源设计 功能描述: 单片机采用: STM32单片机(型号:STM32F030F4P6) 输出:正弦波 频率:可调; 幅值:可调; SPWM逆变原理:单片机SPWM驱动H桥+后级滤波; 调节方式:频率加按键、频率减按键、幅值加按键、幅值减按键; 频率调节范围:10hz、20hz、30hz、40hz、50
[单片机]
STM32】入门 · 流水灯
前提 keil uVision4 奋斗STM32开发板V5 STM32F103VET JLink 具体 新建工程 新建文件夹并命名,在此文件夹下建立user,fwlib,cmsis,output,listing等子文件夹。 user用于存放工程文件和用户层代码,包括主函数main.c。 fwlib用于存放STM32库里的inc和src文件夹,它们包含了芯片上所有的驱动。 smsis用于存放库自带的启动文件和一些位于cmsis层的文件。 output用于保存编译后的输出文件。 listing用于保存编译后生成的链接文件。 接下来打开Keil,新建工程和组,将对应的文件添加到对应的文件夹中。
[单片机]
【<font color='red'>STM32</font>】入门 · 流水灯
具有先进AI功能功能的STM32神经网络开发工具箱
意法半导体借助 STM32系列微控制器 的市场领导地位,扩展了STM32微控制器开发生态系统STM32CubeMX,增加了先进的人工智能(AI)功能。 AI技术使用经过训练的人工神经网络对运动和振动传感器、环境传感器、麦克风和图像传感器的数据信号进行分类,比传统的手工信号处理方法更加快速、高效。 意法半导体微控制器和数字集成电路产品部总裁Claude Dardanne 表示:“ST的新型神经网络开发工具箱正在将AI引入基于微控制器的智能边缘和节点设备,以及物联网、智能楼宇、工业和医疗应用中的深度嵌入式设备。” 现在开发人员可以用STM32Cube.AI将预先训练的神经网络转成可在STM32 微控制器上运行的C代码,调用
[物联网]
具有先进AI功能功能的<font color='red'>STM32</font>神经网络开发工具箱
关于STM32的定时器问题集锦
1、定时器外部计数功能 问:STM32处理器的定时器可以配置为对外部脉冲计数方式,其中一种方式是通过TIM的ETR引脚(外部触发引脚),另外一种方式是通过TIM的CH1或者CH2引脚来输入。现在我不明白这两种方式有什么区别,两种方式都能对外部脉冲计数,那么设置外部触发方式的目的指什么? 答:根据设计电路来使用不同的方法,他们最大的区别就是引脚不同,但是实现的功能是一样的。 2、TIM2用于捕获,如何调整TIM2的时钟? 问:TIM2用于捕获,如何调整TIM2的时钟?想调低TIM2的时钟频率,以减小计数器的值,避免溢出。 答:可在中断函数里修改配置。不过我想知道你的具体目的是什么 答:因被捕获脉冲频率很宽,有
[单片机]
STM32的SYSTICK详解
什么是SYSTICK: 这是一个24位的系统节拍定时器system tick timer,SysTick,具有自动重载和溢出中断功能,所有基于Cortex_M3处理器的微控制器都可以由这个定时器获得一定的时间间隔。 作用: 在单任务引用程序中,因为其架构就决定了它执行任务的串行性,这就引出一个问题:当某个任务出现问题时,就会牵连到后续的任务,进而导致整个系统崩溃。要解决这个问题,可以使用实时操作系统(RTOS). 因为RTOS以并行的架构处理任务,单一任务的崩溃并不会牵连到整个系统。这样用户出于可靠性的考虑可能就会基于RTOS来设计自己的应用程序。这样SYSTICK存在的意义就是提供必要的时钟节拍,为RTOS的任务调度提供一个有
[单片机]
<font color='red'>STM32</font>的SYSTICK详解
STM32 固件库移植出错
1 问题描述 最近项目上需要用到STM32F103VET6芯片。之前一直使用的是8年前的库,决定更新为最新版的固件库。在建立新工程编译时出现了以下错误:“..OBJNH3N STM32.sct(7): error: L6236E: No section matches selector - no section to be FIRST/LAST.” 2 问题分析 2.1 问题定位 双击出错信息,Keil跳转到如下窗口: 错误出现在“xxxx.sct”文件,sct文件,全名scatter file,中文名分散加载文件,是ARM程序链接时的输入参数。默认设置下,Keil会自动生成.sct文件。出错的的“NH3N S
[单片机]
<font color='red'>STM32</font> <font color='red'>固件库</font><font color='red'>移植</font>出错
【跟着江科大学Stm32】STM32F103C6T6_实现呼吸灯_代码
PWM.h #ifndef __PWM_H #define __PWM_H void PWM_Init(); void PWM_SetCompare1(uint16_t Compare); #endif PWM.c #include stm32f10x.h // Device header void PWM_Init() { RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE); //开启定时器2 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//通道2时钟使能函数
[单片机]
【跟着江科大学<font color='red'>Stm32</font>】STM32F103C6T6_实现呼吸灯_代码
ok6410的mplayer移植
安装包:MPlayer-1.0rc2.tar.bz2 交叉编译器:arm-linux-gcc-4.5.1 解压MPlayer-1.0rc2.tar.bz2 : tar –xjvf MPlayer-1.0rc2.tar.bz2 进入解压文件 MPlayer-1.0rc2 进行configure 配置 ./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm-linux --enable-static--disable-win32dll --disable-dvdread--disable-dvdread-internal--disable-dvdnav --disable
[单片机]

推荐帖子

特斯拉机器人擎天柱发布会未删减4k高清 第一集
特斯拉人形机器人擎天柱来了,它好在哪里呢?特斯拉机器人擎天柱发布会未删减4k高清第一集宣传片特别厉害,实际和小米的铁大差不多。上面这个真多余啊,感觉现在的科技还没发达到完美,机器人时代早呢
zzzy11 汽车电子
新硬盘用ghost装系统后无法引导启动
我的一个新硬盘(笔记本的,笔记本是r60e),在bios里面能够看到这个硬盘,但是用普通的安装盘安装操作系统时硬件检测时不能通过,然后换用gost盘安装,能够安装,但是装完重启时不能从引导从硬盘启动。硬盘可以确认是好的,我把硬盘放到硬盘盒里可以正常使用,gost安装的文件都能看到。注:我有3个硬盘,上述是第3个,第一个是60g的,放着没用,买了个第2个120g的,装系统时正常安装的没费神,但是在使用时忽然蓝屏,然后重启了后继续蓝屏,然后就不能引导启动了,后来发现第2个硬盘坏了,而且内存只能插一
aeiou 嵌入式系统
请各位帮忙,急啊!
我在windowsCE下 用VS2005开发vb.net程序 但是好多类都不支持,比如像我现在做的文件的读写就不能用随机文件读取,但是又没办法将文件中的数据读取到变量中以前可以使用FileGet(),现在不能了,不支持,请问我要怎么办呢?请各位帮忙,急啊!路过VB没用过试试MFC或win32吧,这些支持得挺好我是新手,懂的不多引用2楼greenice314的回复:试试MFC或win32吧,这些支持得挺好 大哥,人家用VB~~引用楼主dan_java_
petertsg 嵌入式系统
手指激光器
儿童和成人都可以玩的玩具,手指激光器,在晚上玩效果最好,配合狰狞的面目,找一个会拍照的朋友帮你拍照片,酷酷的感觉。有空的时候还可以向女孩儿童和成人都可以玩的玩具,手指激光器,在晚上玩效果最好,配合狰狞的面目,找一个会拍照的朋友帮你拍照片,酷酷的感觉。有空的时候还可以向女孩儿童和成人都可以玩的玩具,手指激光器,在晚上玩效果最好,配合狰狞的面目,找一个会拍照的朋友帮你拍照片,酷酷的感觉。有空的时候还可以向女孩子耍耍帅手指激光器帅啊,真想弄一个玩玩很帅啊!这个不是激光器,激光
xyh_521 创意市集
急需
用单片机对第一象限直线插补进行编程急需数控技术那本书里就有算法,程序都有
小马哈 嵌入式系统
新能源汽车-车载充电机OBC
一、实物图水冷风冷自然风二、OBC框图1.功能框图OBC核心功能:把交流电变成高压直流给电池充电。2.系统框图CC、CP信号输入给谁检测是由系统决定的,不同的的车会有不同的设计,看具体车型线路。三、OBC内部结构示意图充电机把220V交流高压直流一般采用两级的结构PFC电路,用于校正功率因数大功率电器没有PFC会影响电网转换电
火辣西米秀 汽车电子
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved