ChinaUnix.net
相关文章推荐:

keil ARM中给数组绝对地址

平台: arm 11(armv6指令集) 使用 arm-linux-gcc 编译。 问题: 如何在纯汇编写的 arm程序定义和使用 可以 读&写 的数组。 描述: 对于C程序: #incldue void arr_fuc(int *in, in *out) {     int i=0;     int temp[8]={0};     for(i=0; i<8; i++)     {         temp = *in;  &...

by sh365 - 嵌入式开发 - 2009-12-15 16:05:08 阅读(3905) 回复(0)

相关讨论

1.error 56, line 51: cant open file

Setup();                                // Setup for Init

LOAD SDRAM\8LED_Test.axf INCREMENTAL    // Download
_____^
*** error 56, line 51: cant open file ...

by dam新 - 移动操作系统 - 2011-12-23 02:53:15 阅读(683) 回复(0)

内存在寻址时,不是针对某一个字节为单位,它是数据对齐的。 当cpu寻址一个字节时,内存控制器会对字节进行截取,截取高27位,传给内存芯片,内存芯片会传连续的32个字节给cpu,而这32个字节,就对应着CPU上面cache行的宽度。 然后,cpu再根据寻址的后5位,在cache行进行定位。 也就是说定制总线的数量与cache行的大小密切相关。 不知道这么理解对不对,待验证。 本文来自ChinaUnix博客,如果查看原文请点:http://blog.ch...

by loughsky - Linux文档专区 - 2007-12-17 13:27:58 阅读(638) 回复(0)

在调用__main函数之前的汇编已经把一部分寄存器初始化了,但是经过__main函数之后,寄存器的值发生了变化,是否__main函数里有改变寄存器的值呢?

by fsldts - 嵌入式开发 - 2013-06-07 20:41:41 阅读(902) 回复(3)

 最近写一个关于单片机播放音乐的程序,出现如下错误:

*** ERROR L107: ADDRESS SPACE OVERFLOW
... ...

Program Size: data=167.6 xdata=0 code=5314
Target not created
       

       仔细想想,我用的是AT89C52,片上RAM有256字节,应该...

by iARM - 移动操作系统 - 2011-12-20 09:44:19 阅读(764) 回复(0)

keil c51, u32_t i,j; i = 0x12345678; memcpy(&j,&i+1,3); 最后j=0x00345678吗? 在pc上,%x,%lx都可以打印 在keil上,对u32_t的数怎么打印?我发现%x,%lx都不对

by mathieu - C/C++ - 2008-10-31 19:36:54 阅读(2235) 回复(1)

本帖最后由 shihyu 于 2014-01-30 00:48 编辑 我最近买一块STM32F4 板子 linux 下用 arm-gcc 编译器编译出的 xxx.bin 后在烧录到板子上 跟 windows 下 用 keil MDK-arm 编译器编译出来的 xxx.bin 这两种编译器编译出来的xxx.bin 是内容是没有差异吗? 谢谢

by shihyu - 嵌入式开发 - 2014-02-08 10:10:08 阅读(1356) 回复(3)

    keil uVision是MCU开发利器.RealView MDK发布已久,将来必取代ADS!而arm9-S3C2440基于keil MDK-arm的程序资源很少,虽然网上有很多关于keil MDK-arm建立工程模板以及ADS往keil MDK-arm工程的移植,但ADS1.2和keil MDK-arm的库和开发模式有很...

by netcfln - 移动操作系统 - 2012-01-17 09:04:02 阅读(1879) 回复(1)

跳转指令
用于实现程序流程的跳转,在arm程序有两种方法可以实现程序流程的跳转:

—       使用专门的跳转指令。

—       直接向程序计数器PC写入跳转地址值。

通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间的任意跳转,在跳转之前结合使用

MOV   LR,PC

等类似指令,可以保存将来的返...

by tianxwkay - 移动操作系统 - 2011-12-20 09:44:13 阅读(633) 回复(0)

本帖最后由 MagicBoy2010 于 2010-04-22 21:52 编辑 作者:Dolphin 不知道原子指令是否是正规叫法,这里主要想说的是arm用来实现多处理器/并发同步原语的指令,比如arm-based Linux内核的信号量,spin_lock的实现机制。想到写这么个帖子,是因为昨天在写spin_lock在arm和x86处理器上的代码实现时,个人觉得那篇帖子更侧重在软件的实现上。当时阅读这段代码时查了下arm相关指令,尤其是核心的LDREX和STREX,相对我以前掌握的...

by MagicBoy2010 - 嵌入式开发 - 2014-07-11 16:40:52 阅读(5081) 回复(6)

前段时间调试linux内核驱动里的cache问题做了点笔记先发点上上来,后面会把笔记整理下都传上来。 arm cache架构由cache存储器和写缓冲器(write-buffer)组成,其写缓冲器是CACHE按照FIFO原则向主存写的缓冲处理器。下图是arm V5核的CACHE位置 Cache 位于MMU前面靠近CPU称为逻辑CACHE又叫虚拟Cache。CPU可以直接访问CACHE的数据,而arm 11(armV6)的结构是CACHE 在MMU后面CPU访问CACHE要通过MMU地址转换 在DM6446的cor...

by ninver - 内核源码 - 2009-09-15 10:06:24 阅读(1384) 回复(1)