跳转指令的功能是根据不同的逻辑条件,有选择地执行不同的程序。执行跳转指令需要用两条指令配合使用,跳转开始指令JMPn和跳转标号指令LBLn,其中n是标号地址,n的取值范围是0~255的字型类型。2)跳转指令JMP和LBL必须配合应用在同一个程序块中,即JMP和LBL可同时出现在主程序中,或者同时出现在子程序中,或者同时出现在中断程序中。......
2023-06-26
跳转(Branch)指令用于实现程序流程的跳转。在ARM程序中有两种方式可以实现程序流程的跳转操作:
●直接向程序计数器PC中写入跳转地址,可以实现4GB地址空间内的任意跳转(把目标地址先存储在某一个合适的地址空间中的存储器单元,然后把这个存储器单元的值传送给PC来实现跳转。这种方法对目标地址值没有要求。但是,存储目标地址的存储单元必须在当前指令的-4KB~+4KB空间范围之内)。例如:
●使用专门的跳转指令。
ARM指令集中的跳转指令跳转的地址空间为当前指令地址32MB。跳转指令有以下四个方面。
1.B指令
B{cond}label
跳转指令使程序跳转到指定的目标地址label处执行程序。{cond}即表3.2中的助记符后缀,以下同。例如:
2.BL指令
BL{cond}label(www.chuimin.cn)
跳转链接指令BL(BL,Branch with Link)将下一条指令的地址复制到R14(LR)寄存器中(即返回地址送入连接寄存器LR),然后跳转到指定目标地址label处运行程序。BL指令用于子程序调用。例如:
3.BLX指令
BLX{cond}label或Rm
BLX(BX,Branch with Link and eXchange)指令从ARM指令集跳转到label或者Rm指定的地址处执行,并将处理器的工作状态由ARM状态切换到Thumb状态,同时将下一条指令的地址复制到链接寄存器R14(LR)中。例如:
4.BX指令
BX{cond}Rm
带状态切换的跳转指令(BX,Branch and eXchange)使程序跳转到指令中Rm指定的地址执行程序,Rm的第0位复制到CPSR中T位,bit[31∶1]移入PC。若Rm的bit[0]为1,则跳转时自动将CPSR中的标志位T置位,即把目标地址代码解释为Thumb代码;若Rm的位bit[0]为0,则跳转时自动将CPSR中的标志位T复位,即把目标地址代码解释为ARM代码。例如:
有关ARM嵌入式系统原理与应用的文章
跳转指令的功能是根据不同的逻辑条件,有选择地执行不同的程序。执行跳转指令需要用两条指令配合使用,跳转开始指令JMPn和跳转标号指令LBLn,其中n是标号地址,n的取值范围是0~255的字型类型。2)跳转指令JMP和LBL必须配合应用在同一个程序块中,即JMP和LBL可同时出现在主程序中,或者同时出现在子程序中,或者同时出现在中断程序中。......
2023-06-26
Timing菜单内是与时序相关的选项。其中Floorplan View主要应用于Floorplan规划,Omoeba View主要是为了观察设计层次以及模块位置,Physical View为了观察芯片最终状态与布线信息。基本工具栏的第二行是对于版图的操作工具栏。图8.7 EDI工具栏下面讲述使用EDI进行设计的读入的方法。图8.9 设计读入后显示界面设计的读入与存储分别可以通过File→Restore Design与File→Save Design来加以实现。......
2023-06-26
布图规划与布局流程主要使用菜单栏Floorplan、Power、Place三个菜单指令下的操作内容。其中,第一个操作主要功能为制定Floorplan的形状和大小。但由于本次设计中只有一个Hard macro,并不用对于几个macro距离进行约束,所以无须对于Relative Floorplan进行设置。以上数值在实际设计中均可酌情调整。与Power ring的添加类似,Nets选择VDD VSS,由于Stripe图8.20 Add Rings窗口图8.21 Add Stripe窗口横向添加相对会占用更多布线资源,所以选择纵向添加,并使用M4生成电源条线。其余选项均使用默认值即可。......
2023-06-26
表3-5所示为数据转换指令,其中3位BCD码和7位BCD码的格式如图3-18所示。A I0.2 //如果I0.2为1L MD10 //将MD10中的双整数装入累加器1DTB //将累加器1中的数据转换为BCD码,结果仍在累加器1中图3-18 BCD码格式a)3位BCD码的格式 b)7位BCD码的格式JO OVER //运算结果超出允许范围则跳转到标号OVER处T MD20 //将转换结果传送到MD20A M4.0R M4.0 //复位溢出标志JU NEXT //无条件跳转到标号NEXT处OVER:AN M4.0S M4.0 //置位溢出标志NEXT:……......
2023-06-18
表1-30 采样周期的经验数据3.PID回路控制指令S7-200的PID指令没有设置控制方式,执行PID指令时为自动方式;不执行PID指令时为手动方式。PID指令的功能是进行PID运算。当PID指令的允许输入EN有效时,即进行手动/自动控制切换,开始执行PID指令。在一个应用程序中,最多可以使用8个PID控制回路,一个PID控制回路只能使用1条PID指令,不同的PID指令不能使用相同的回路编号。......
2023-06-26
表3-14所示为逻辑控制指令的STL表达方式,很多逻辑控制指令在梯形图中不一定会有,这一点需要读者注意。逻辑控制跳转中,只能在同一逻辑块内跳转;同一个跳转目的地址只能出现一次;跳转或循环指令的操作数为地址标号,标号由最多4个字符组成,第一个字符必须是字母,其余的可以是字母或数字。表3-14 逻辑控制指令 IW8与MW12的异或结果如果为0,将M4.0复位,非0则将M4.0置位。......
2023-06-18
功能块PULSEGEN和功能块CONT_C一起,可实现具有脉冲输出的控制器,用于控制比例执行器。在参数分配期间,用户可以激活或取消激活PID控制器的子功能,以使控制器适合实际的工艺过程。......
2023-06-18
极坐标编程可通过指令G16生效、指令G15撤销。图4.1-4 极坐标编程图4.1-5 镜像加工CNC的镜像加工,一般可以通过如下三种方式选择:1)利用CNC的M指令和PMC程序设计,使对应的坐标轴进入镜像加工。2)镜像加工生效时,指令G02/G03的圆弧插补方向、指令G41/G42的半径补偿方向、指令G68/G69的坐标旋转方向均将被互换。图4.1-8 圆弧插补的比例缩放图4.1-9 坐标旋转4.坐标旋转对于图4.1-9所示的某些围绕中心旋转得到的特殊轮廓加工,可使用坐标旋转功能简化编程。......
2023-06-25
相关推荐