微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > ARM应用系统开发详解 第4章 ARM程序设计基础

ARM应用系统开发详解 第4章 ARM程序设计基础

时间:11-20 来源:互联网 点击:

R R0,=0x3FF0000 ;初始化系统配置寄存器,具体内容可参考第五、六章

LDR R1,=0xE7FFFF80

STR R1,[R0]

LDR SP,=0x3FE1000 ;初始化用户堆栈,具体内容可参考第五、六章

BL Main ;跳转到Main()函数处的C/C++代码执行

END ;标识汇编程序的结束

以上的程序段完成一些简单的初始化,然后跳转到Main()函数所标识的C/C++代码处执行主要的任务,此处的Main仅为一个标号,也可使用其他名称,与C语言程序中的main()函数没有关系。

/*

* Institute of Automation, Chinese Academy of Sciences

* File Name: main.c

* Description: P0,P1 LED flash.

* Author: JuGuang,Lee

* Date:

/

void Main(void)

{

int i;

*((volatile unsigned long *) 0x3ff5000) = 0x0000000f;

while(1)

{

*((volatile unsigned long *) 0x3ff5008) = 0x00000001;

for(i=0; i<0x7fFFF; i++);

*((volatile unsigned long *) 0x3ff5008) = 0x00000002;

for(i=0; i<0x7FFFF; i++);

}

}
4.4本章小节

本章介绍了ARM程序设计的一些基本概念,以及在汇编语言程序设计中常见的伪指令、汇编语言的基本语句格式等,汇编语言程序的基本结构等,同时简单介绍了C/C++和汇编语言的混合编程等问题,这些问题均为程序设计中的基本问题,希望读者掌握,注意本章最后的两个示例均与后面章节介绍的基于S3C4510B的硬件平台有关系,读者可以参考第五、六章的相关内容。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top