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

Cortex-M3神奇的指令STRB啊,有图有真相!

[复制链接]
techwell 提问时间:2012-5-30 16:46 /
Cortex-M3神奇的指令STRB,有图有真相!
请看本贴附件

Cortex-M3神奇的指令STRB.doc

下载

402 KB, 下载次数: 57, 下载积分: ST金币 -1

收藏 评论11 发布时间:2012-5-30 16:46

举报

11个回答
techwell 回答时间:2012-5-30 16:50:47

RE:Cortex-M3神奇的指令STRB啊,有图有真相!

这一条寄存器到存储器的字节传送指令:STRB,它能一次传送128字???
神奇吧???
哪位高手能解释一下?
techwell 回答时间:2012-5-30 16:54:59

RE:Cortex-M3神奇的指令STRB啊,有图有真相!

我这是在调试CanFestival的CanOpen源码,在此之前,我曾在M16C290单片机上,成功地运行了CanFestival,现在是想让它在STM32上运行,不小心发现了STM32的神奇之STRB指令....
techwell 回答时间:2012-5-30 16:57:14

要是无解的话,我下边的活儿,干不下去了...

要是无解的话,我下边的活儿,干不下去了...
阿呆 回答时间:2012-5-30 17:25:21

回复:Cortex-M3神奇的指令STRB啊,有图有真相!

这是一条神奇的指令!安大快来看看吧!
废鱼 回答时间:2012-5-30 17:36:49

RE:Cortex-M3神奇的指令STRB啊,有图有真相!

你可以去看看M3的指令集。
techwell 回答时间:2012-5-30 23:34:27

STRB指令

关于STRB指令的功能,原本是简单明了的:就是把某寄存器中的一个字节,复制到指定的存储器(RAM)中去,它有多种寻址方式。
  可是,我执行它一次,它居然修改了我128字长的数组呢?回报率太高了点呀
   晕人啊!
  严正声明一下,对于单片机,我不早就不算新手了。也不是第一次用STM32。可是....
  对了,会不会是J-LINK的问题呢?
techwell 回答时间:2012-5-31 11:28:18

我改用ST-LINK仿真器,试了一下,错误依旧啊!

我改用ST-LINK仿真器,试了一下,错误依旧啊!  
   那么,可能是KEIL犯浑?
techwell 回答时间:2012-5-31 11:35:02

这是我在用的KEIL版本信息

这是我正在用的KEIL版本信息:
Tool Version Numbers:
Toolchain:        MDK-ARM Standard  Version: 4.21
Toolchain Path:    BIN40\
C Compiler:         Armcc.Exe       V4.1.0.713
Assembler:          Armasm.Exe       V4.1.0.713
Linker/Locator:     ArmLink.Exe       V4.1.0.713
Librarian:             ArmAr.Exe       V4.1.0.713
Hex Converter:      FromElf.Exe       V4.1.0.713
CPU DLL:               SARMCM3.DLL       V4.21
Dialog DLL:         DARMSTM.DLL       V1.62
Target DLL:             STLink\ST-LINKIII-KEIL.dll       V1.5.6
Dialog DLL:         TARMSTM.DLL       V1.60
techwell 回答时间:2012-5-31 14:07:14

有解啦!

下载了MDK450版本,用Keil_Lic.exe和谐了一下。和谐时选其它的版本不成功(编译时报错说不能生成xxx文件),只能用256kb限制的Lite版本!!!
   编译OK!
   选择J-LINK仿真器时,MDK450更新了J-LINK固件(过程很快,没看清就过去了);
  Debug,运行到那条STRB,激动人心的时刻到了:只有数组的第0个元素被修改成我想要的结果!
  我得到了我要的结果,但是我不知道MDK是如何解决这个问题的(也可能是J-LINK引起的),不过,这显然不是我的错
techwell 回答时间:2012-5-31 14:09:14

感谢走过路过看过关心过此贴的人们!

感谢走过路过看过关心过此贴的人们!
techwell 回答时间:2012-5-31 14:18:21

新安装的MDK的版本信息:

Tool Version Numbers:
Toolchain:        MDK-ARM Basic (256K)  Version: 4.50.0.0
Toolchain Path:    C:\Keil\ARM\BIN40
C Compiler:         Armcc.Exe        V4.1.0.894
Assembler:          Armasm.Exe       V4.1.0.894
Linker/Locator:     ArmLink.Exe      V4.1.0.894
Librarian:          ArmAr.Exe        V4.1.0.894
Hex Converter:      FromElf.Exe      V4.1.0.894
CPU DLL:            SARMCM3.DLL      V4.50.0.0
Dialog DLL:         DARMSTM.DLL      V1.63.0.0
Target DLL:         Segger\JL2CM3.dll
Dialog DLL:         TARMSTM.DLL      V1.60

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版