打印
[STM32F1]

求助,ldr读内存出错,返回0

[复制链接]
1613|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
86806|  楼主 | 2014-7-18 10:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
CPU型号STM32F103R8T6(GH228 9U 312),程序是汇编语言编写,做内存对比,内存变化后将变化值写入铁电

实际运行效果是单步运行完全正常,但是全速运行时就会出现r5,r6随机性读出0,而事实上内存中是有数据的

CPU倍频至72M,降到36M无改善,请香主解答指导,谢谢

                        mov                r4,#00
FRAM_Check_Loop                cmp                r4,#0xB0/4
                        bhs                FRAM_Check
                        ldr                r2,=reg_ram_os;reg_ram_os=0x20002220
                        isb ;添加数据隔离指令也无效果
                        ldr                r5,[r2,r4,lsl #02]
                        ldr                r6,[r3,r4,lsl #02]
                        cmp                r5,r6
                        addeq                r4,#0x01
                        beq                FRAM_Check_Loop
沙发
86806|  楼主 | 2014-7-18 11:20 | 只看该作者
附一段DEBUG截图,内存中数据为0x350,读出来的却是0x356

https://bbs.21ic.com/forum.php?mod=attachment&aid=MzE5NjY2fDQwOWI2YjU3YTljODY4MzI1N2JiNjAwOGYzZmZmYTZmfDE3MzIzMzE0MTg%3D&request=yes&_f=.png

无标题.png (88.85 KB )

无标题.png

使用特权

评论回复
板凳
myxiaonia| | 2014-7-18 15:17 | 只看该作者
86806 发表于 2014-7-18 11:20
附一段DEBUG截图,内存中数据为0x350,读出来的却是0x356

https://bbs.21ic.com/forum.php?mod=attachment&aid=MzE5NjY2fDQwOWI2YjU3YTljODY4MzI1N2JiNjAwOGYzZmZmYTZmfDE3MzIzMzE0MTg%3D&request=yes&_f=.png

你这啥程序啊,竟然都是汇编文件???
接手的吗,老板被程序员摆了一道啊

使用特权

评论回复
地板
mengzhi| | 2014-7-18 15:51 | 只看该作者
还是汇编,看不懂

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

1

粉丝