ARM实验指导书(wjq)(4)

2019-09-01 22:20

} while(1);

}

;//------------------------------------------------------ 程序清单2 汇编加法函数Add.S 代码

;加法函数,原型为uint32 Add(uint32 x,uint32 y)

AREA AddC,CODE,READONLY EXPORT Add

Add

ADD R0,R0,R1 MOV PC,LR END

七、练习题

1.在实验参考程序中,如何以指针形式传递参数?(即设计 uint32 Add(uint32 *x,uint32 *y) 函数);

2.在汇编程序中是否可以调用C 语言程序?

实验6、C语言的启动汇编代码实验

一、参考程序

”S3C44B0X-ARM实验\\StartUp_C\\src”目录中源文件,START.s,在Hello.c文件中定义了Main()函数和main()函数。 //hello.c

#include int glob=0x555 ;

int main(void) //default main {

int i;

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

{

printf(\ printf(\ scanf(\

printf(\ } while(1);//halt return(0); }

//Main define by myself int Main(void) {

int i,j;

for(i=0;i<100;i++) {

j++ ; }

while(1);//halt return(0);

}

二、实验步骤

在project中设置好“Image entry point”。编译连接程序

打开调试器,在两个函数的入口处都设置好断点,调试全速运行,观察程序是否在Main()的断点中停下来,然后单步运行。

实验七:GPIO 输出控制实验

一、实验目的

熟悉ARM 芯片I/O 口编程配置方法; 掌握ARM 芯片I/O 口控制LED 显示的方法。 二、实验设备

硬件:嵌入式实验平台一套、仿真器一个、PC机一台。

软件:Windows 98/2000/NT/XP 操作系统、仿真器驱动程序、ADS开发软件一套。 三、实验内容

控制嵌入式实验箱上的LED 轮流点亮。 四、实验原理

S3C44B0X 芯片上共有71 个多功能I/O 引脚,他们分别为7 组I/O 端口: 2 个9 位I/O 端口(端口E 和F) 2 个8 位I/O 端口(端口D 和G) 1 个16 位I/O 端口(端口C)

1 个10 位I/O 端口(端口A) 1 个11 位I/O 端口(端口B)

每组端口都可以通过软件配置寄存器来满足不同系统合设计的需要。在运行主程序之 前,必须先对每一个用到的引脚的功能进行设置。如果某些引脚的附庸功能没有使用,那么 可以先将该引脚设置为I/O 口。

S3C44B0X 芯片与端口相关的寄存器 (1)端口控制寄存器(PCONA~G):在S3C44B0X 芯片中,大部分引脚是使用多路复用的,所以要确定每个引脚的功能。PCONn(端口控制寄存器)能够定义引脚功能。如果PG0~PG7 作为掉电模式下的唤醒信号,那么这些端口必须配置成中断模式。

(2)端口数据寄存器(PDATA~G):如果端口定义为输出口,那么输出数据可以写入PDATn 中相应的位;如果端口定义为输入口,那么输入数据可以从PDATn 相应的位中读入。

(3)端口上拉寄存器(PUPC~G):通过配置端口上拉寄存器,可以使该组端口与上拉电阻连接或断开。当寄存器中相应位配置为0 时,该引脚接上拉寄存器;当寄存器中相应位配置为1 时,该引脚不接上拉电阻。 (4)外部中断寄存器(EXTINT):通过不同的信号方式可以使8 个外部中断被请求。EXTINT 寄存器可以根据外部中断的需求,将中断触发信号配置为低电平触发,高电平触发,下降沿触发,上升沿触发和边沿触发几种方式。

五、PORT_C功能描述 1、各管脚功能

general I/O fun Data/Addr serial port

2、端口寄存器地址

3、端口寄存器操作说明


ARM实验指导书(wjq)(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:某立交桥工程施工组织设计策划方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: