arm如何调用sub 程序,当C 程序和ARM assembly 程序之间相互调用时,必须遵守PCs (ArmThumb程序调用标准)规则。怎么给armburn it程序看你板上的flash是什么类型了,一种是norflash,最容易处理,它一般能得到JTAG的支持,我用过JUDI和JLINK,也可以用wiggler烧。

1、ARM用什么写 程序,是C 吗,还是C

你学过单片机吗?其实ARM就是一个微型CPU。要为其开发嵌入式系统,首先要了解arm的结构,知道各引脚的作用,设计外围电路。这样才能在这个以ARM为核心的嵌入式平台上进行开发。至于你问的语言,那是次要的,只要会操作硬件就行,工业上常用的是C和汇编。C 也可以,但是C 更适合面向对象的编程,而嵌入式开发是面向过程的结构化编程,所以我个人觉得C更适合。

2、简单的ARM指令 程序分析

Function:一个数大于0就变成负数;如果已经是负数,则保持不变。区域示例,代码,readonlyentrymainmovr3,# 0//R3放一个0MOVR0,#1000//R0放一个1000,这个1000作为地址。MOVR4,#2000//R2放了2000进去,这个2000作为地址。LDRR1,

比较CMPR1、#0//R1和0。bll INVERSE//如果R1中的数据大于0,则跳转到INVERSE。如果它小于0,则继续下一项。MOVR3,R1//是小于0的分支。把R1放到R3。STRR3,ARM 程序用C语言写的,调用C函数的格式和普通C语言一样,没有特别的地方;如果用C语言调用ARM的汇编,是有规则的。在C 程序和ARM assembly 程序之间相互调用时,必须遵守ATPCs(ARM thumb程序标准)的规则。ATPCS提供了sub 程序之间调用的一些基本规则,如:使用寄存器的规则;sub 程序之间通过寄存器R0 ~ R3传递参数;当参数个数超过4个时,参数通过堆栈传递。

寄存器r12用来存放栈指针SP,当sub 程序返回时,用这个寄存器下栈,记为IP。寄存器r13用作堆栈指针,记录为SP。寄存器r14称为链接寄存器,记为LR。该寄存器用于存储sub 程序的返回地址。寄存器r15称为程序 counter,记录为PC。堆栈的使用规则采用FullDescending类型(FD),即堆栈通过减少内存地址向下增长,堆栈指针指向包含有效数据项的最低地址。

3、ARM 程序错误

1:可以仔细阅读错误描述。代码的第28行可能有语法错误。可能是你的switch语句有语法错误,比如switch(get_value)if(get_value!0)//如果在开关下怎么可能?2:那么你的整个代码中没有GPIO_InitStructure的定义,头文件可能缺失;3:GPIOB_Pin_0/1/2/3/4/5/6/7这些管脚也是未定义的;4.总而言之,

4、在ARM汇编 程序如何实现子 程序的返回

sub 程序进入时,返回地址保存在LR寄存器中。有两种返回方式:直接将LR赋给PC: MOVPC,直接跳转到BXLR。将相应R14寄存器中的值分配给PC寄存器。进入sub 程序时将当前预取指令的下一条指令的地址保存到LR(R14)寄存器,sub 程序返回时将LR的值赋给PC寄存器。

5、如何使用 arm汇编指令实现结构化编程

ARM assembly程序特点:l所有操作都在通用寄存器(一般为R0~R14)中进行。所有内存空间中的值的处理(比如C语言变量的本质就是一个内存空间中的几个字节)都必须转移到通用寄存器中。因此,LDR和STR指令在代码中被广泛用于传递值。

(比如ENTRY,0,NEgative …)CMPR0,R1BNENoMatch比如BNE暗示的最后一句CMP执行结果。ne后缀表示z标志位的使用。这两句话合起来就是说,如果r0和R1的值不相等,就跳转到NoMatch执行。请注意,PCR 15、CPSRR16和ARM伪指令不是必需的,而是一个。

6、在 arm的汇编 程序中有哪几种伪指令

在ARM汇编语言程序中,有一些特殊的指令助记符。这些助记符与指令系统的助记符不同,没有对应的操作码。它们通常被称为伪指令,它们执行的操作被称为伪操作。源程序中伪指令的作用是为完成汇编程序做好各种准备。这些伪指令只是在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成了。在ARM的assembly 程序中,有几种伪指令:符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令和其他伪指令。

7、如何给 arm烧写 程序

这取决于您主板上的闪存类型。一种是norflash,最容易处理,它一般能得到JTAG的支持。我用过JUDI和JLINK,也可以用wiggler烧,如果是nandflash,就不是很容易了。通常情况下,只有并行端口可以用来连接小板,JTAG支持小NANDflash,有的开发板有nor和nand两种flash,现在只有nand便宜。


文章TAG:程序开发  arm  ARM  招聘  工程师  arm 程序  
下一篇