你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【心得】用传统方法开发STM32,放弃固件库的使用!

[复制链接]
ST老少女 发布时间:2008-12-2 14:40
阅读主题, 点击返回1楼
收藏 评论1459 发布时间:2008-12-2 14:40
1459个回答
火雷达 回答时间:2011-10-24 16:01:19

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

这个当然了,人家是为了可以重用性和可以移植性为目标的,效率当然低了。
6 H2 [) Q- `1 f8 R2 \2 W( U/ X如果自己开发的话,难道比较大,时间太久了。
hq_0519 回答时间:2011-10-25 17:23:05

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

学习学习学习学习
icesoar 回答时间:2011-10-30 21:09:26

回复:【心得】用传统方法开发STM32,放弃固件库的使用!

回复第 2 楼 于2008-12-02 06:41:45发表:
原帖由ST老少女于2008-12-02 14:40发表:4 Y( q3 J' f$ m8 ]* q9 B
仔细研究了固件库,发现使用的代价,性能损失还是相当的大。
( d! Z/ E) y0 f1 q6 l+ I激进点说,速度更快的Cortex-M3在使用了固件库后,将比7S更慢。
+ F+ X! `0 m/ N% {' w: u  D由于还没有完全研究过固件库的全部代码,不能完全下这个结论,但是从部分情况看,基本上脱不开这个顽疾。: t) w& Y" ^* T$ ~; D$ j
很想指责这个固件库的开发和设计者,完全丧失了M3内核的优势,浪费太多了。
- f4 L. D2 A( c我要尝试进行无固件库的开发,这个才是正真的传统开发手段,也许复杂一点,但我相信会很好。; i9 k" K" t' F
在此留个贴,慢慢记录无固件库的尝试过程。2 ]' [0 g, f: t

8 D. y1 O# [& ]' i% GIAR编译器传统的INC目录中包含有两个STM32的头文件
+ l1 v* n2 ?6 K' P分别是
; u4 {8 s0 R4 N! b% g$ G: hiostm32f10xxB.h
. B( P3 z- P* Z2 j3 G" u( Uiostm32f10xxE.h
# O1 d4 b* ?% U! E+ o经过对比,E比B的头文件:APB 和 AHB 部分不同,增加了TIM5、6、7、8,UART4、5,ADC3,DMA2,SRAM、NOR,GPIOF,GPIOG,BKP,SPI3,FSMC,SDIO,DAC。& k4 R. ~3 z3 \) }+ M/ Z7 C- Y1 }' J
6 B' T7 U; e8 q9 o
也就是说 iostm32f10xxB.h 文件,适用于STM32F10xx6、STM32F10xx8、STM32F10xxB。9 g0 h5 i: T# i5 [
而 iostm32f10xxE.h 文件,适用于STM32F10xxC、STM32F10xxD、STM32F10xxE。  r2 L0 q1 n+ G& ~0 g
# R4 |( g/ k$ s" j7 x
仔细研究了启动代码部分
7 i# {- {3 i% Z0 i& h: Ncortexm3_macro.s 文件可以不经修改,包含进项目中。(请有项目管理的ADD加入,不要用include包含). ~# r9 k5 K" i. x# H  \

. V4 Q' V% }8 a为了方便进行中断处理,将
( L% Y$ v: ^) ustm32f10x_vector.c- J  n: h5 g5 a6 S0 v
stm32f10x_it.c
2 h% Q+ H" z, X+ z( U- y- r- tstm32f10x_it.h
8 M! U* h$ ?* y3 E( y7 M三个文件进行脱离固件库的修改。然后Include进main文件。+ {5 Z% F+ V' O1 g/ x; D; g

. O6 t% k1 s/ y6 i. g好了,进行main文件的编写吧,已经不需要固件库了,对着 《STM32F10x参考手册》逐个来修改寄存器吧。
) b* l8 O5 ?  S6 L* x
, F1 H8 O2 Q% xmain.c头部& ^. V6 v7 X$ e4 \
#include "iostm32f10xxB.h"! r( x" G0 {" s# {- T4 B' L7 w  v
#include "stm32f10x_it.c"2 y: ~4 c# H0 s8 o- x3 m$ H
#include "stm32f10x_vector.c"  g1 Y& M8 r  V  N! Q
以下附件为开源代码。
& T+ v6 W! i3 i
依然是代码 
7 L1 f. n, @7 [* }
# ~& H0 \) ^, L$ W4 i
- ?7 U  W; f# e* h1 v9 X' j这样的1 y  Y+ \% O4 V. r% b3 x. e
,各有利弊哦
demon1924 回答时间:2011-11-2 14:22:29

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

新手学习中,试试好使不
alt115 回答时间:2011-11-2 21:10:22

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

看看看看........................
hwc1977 回答时间:2011-11-4 16:02:48

RE:【心得】用传统方法开发STM32,放弃固件库的使用!


, \) Z  b, L! V' f% Q/ p谢谢楼主分享
邱爷海滨 回答时间:2011-11-4 19:22:41

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

方法开发STM32,放弃固件库的使用!
congcaige 回答时间:2011-11-8 19:02:39

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

看看
80802680 回答时间:2011-11-8 19:37:15

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

学习学习,好好,
yubo2007 回答时间:2011-11-8 20:38:39

回复:【心得】用传统方法开发STM32,放弃固件库的使用!

还是不用库灵活方便!
foragain 回答时间:2011-11-14 17:02:23

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

值得学习
lixupeng-286501 回答时间:2011-11-14 18:34:50

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

好方法!! 正研究stm32寄存器
wenfang1026 回答时间:2011-11-14 20:35:55

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

学习学习。。。
gtembeded 回答时间:2011-11-17 17:49:30

RE:【心得】用传统方法开发STM32,放弃固件库的使用!

现在感觉库编的也不怎么样啊
grinbuddha 回答时间:2011-11-18 08:20:30

回复:【心得】用传统方法开发STM32,放弃固件库的使用!

使用固件库对于初上手的人来说还是非常有用的,可以帮助新手尽快上手。
+ g' _0 p8 s' N4 V" {当然对高手来说,固件库的效率就太低

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版