资源预览内容
第1页 / 共21页
第2页 / 共21页
第3页 / 共21页
第4页 / 共21页
第5页 / 共21页
第6页 / 共21页
第7页 / 共21页
第8页 / 共21页
第9页 / 共21页
第10页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
实验一实验一 ADS1.2 集成开发环境练习集成开发环境练习 1.1 实验目的实验目的 1熟悉 ADS1.2 软件开发环境; 2掌握 ARM 汇编指令的用法,并能编写简单的汇编程序; 3掌握指令的条件执行和使用 LDR/STR 指令完成存储器的访问。 1.2 实验内容实验内容 1 使用 LDR 指令读取 0x30003100 上的数据, 将数据加 1, 若结果小于 10, 则使用 STR 指令把结果写回原地址,若结果大于等于 10,则把 0 写回原地址。 2 使用 ADS1.2 软件仿真, 单步, 全速运行程序, 设置断点, 打开寄存器窗口 (Processor Registers)监视 R0,R1 的值,打开存储器观察窗口(Memory)监视 0x30003100 上的值。 1.3 预备知识预备知识 1ARM 指令系统内容; 2ADS1.2 工程编辑和 AXD 调试的内容。 1.4 实验设备实验设备 硬件:PC 机一台。 软件:Windows98/XP/2000 系统,ADS1.2 集成开发环境。 1.5 实验步骤实验步骤 1启动 ADS1.2,使用 ARM Executable Image 工程模板建立一个工程 arm1.mcp。 2建立汇编源文件 arm1.s,编写实验程序,然后添加到工程中。 3设置工程连接地址 RO Base 为 0x30000000,RW Base 为 0x30003000,设置 options 中的调试口地址 Image entry point 为 0x30000000。 4编译连接工程,选择 Project|Debug,启动 AXD 进行软件仿真调试。 5打开寄存器窗口(Processor Registers) ,选择 Current 项监视 R0,R1 的值。打开存 储器观察窗口(Memory) ,设置观察地址为 0x30003100,显示方式 Size 为 32Bit,监视 0x30003100 地址上的值。 说明:在 Memory 窗口中点击鼠标右键,Size 项中选择显示格式为 8bit,16bit,32bit, 如图 1.1 所示。图 1.1 Memory 窗口显示格式 设置寄存器显示格式与之类似。使用鼠标左键选择某一个寄存器,然后点击鼠标右键, Format 项中选择显示格式 Hex,Decimal 等等。如图 1.2 所示。图 1.2 设置寄存器显示格式 6可以单步运行程序,可以设置/取消断点,或者全速运行程序,停止程序运行。这时观察寄存器和 0x30003100 地址上的值。运行结果如图 1.3 所示。 图 1.3 实验 1 结果 1.6 实验参考程序实验参考程序 汇编指令实验 1 的参考程序见以下程序清单。 COUNT EQU 0x30003100 AREA Example1,CODE,READONLY ENTRY CODE32 START LDR R1,=COUNT MOV R0,#0 STR R0,R1 LOOP LDR R1,=COUNT LDR R0,R1 ADD R0,R0,#1 CMP R0,#10 MOVHS R0,#0 STR R0,R1 B LOOP END 实验二实验二 汇编指令与汇编指令与 C 语言实验语言实验 2.1 实验目的实验目的 通过实验了解使用 ADS1.2 编写 C 语言程序,并进行调试。 2.2 实验内容实验内容 编写一个汇编程序文件和一个 C 程序文件,汇编程序的功能是初始化堆栈指针和初始化 C程序的运行环境,然后跳转到C程序运行,这就是一个简单的启动程序.C程序使用加法运算 来计算 1+2+3+(N-1)+N 的值(N0) 。 2.3 预备知识预备知识 1ARM 指令系统内容; 2ADS1.2 工程编辑和 AXD 调试的内容。 2.4 实验设备实验设备 硬件:PC 机一台。 软件:Windows98/XP/2000 系统,ADS1.2 集成开发环境。 2.5 实验步骤实验步骤 1启动 ADS1.2,使用 ARM Executable Image 工程模板建立一个工程 c1.mcp。 2建立汇编源文件 Startup.s 和 c1.c,编写实验程序,然后添加到工程中。 3设置工程连接地址 RO Base 为 0x30000000,RW Base 为 0x30003000,设置调试口 地址 Image entry point 为 0x30000000。 4设置位于开始位置的起始代码段,如图 2.1 所示。 图 2.1 设置位于开始位置的起始代码段 5编译连接工程,选择 Project|Debug,启动 AXD 进行软件仿真调试。 6在 Startup.s 的”B Main”处设置断点, 然后全速运行程序。 7程序在断点处停止,单步运行程序,判断程序是否跳转到 C 程序中运行。 8 选择 Processor Views | Variables 打开变量观察窗口,观察全局变量的值,单步/全速运行 程序,判断程序的运算结果是否正确。 2.6 实验参考程序实验参考程序 C 语言实验的参考程序见程序清单(一) ;汇编启动代码见程序清单(二) 。 程序清单(一) C 语言实验参考程序 #define uint8 unsigned char #define uint32 unsigned int #define N 100 uint32 sum; void Main(void) uint32 i; sum=0; for(i=0;i0“; char CR1=0x0A; /* 【功能说明】UART 实验 */ void Main(void) char input_char; char *pt_str=str; int i; rSYSCFG = CACHECFG; / Using 8KB Cache/ Port_Init(); Uart_Init(0,115200); Uart_Printf(“n“); Uart_Printf(str_send);/向超级终端送字符串 Delay(500); while(1) *pt_str=Uart_Getch();/从超级终端接收字符 Uart_SendByte(*pt_str); if(*pt_str=0x0D)/判断是否是回车 if(pt_str!=str) Uart_SendByte(CR0);/换行 pt_str=str; while(*pt_str!=0x0D) Uart_SendByte(*pt_str);/显示接收到的字符 pt_str+; pt_str=str; Uart_SendByte(CR0);/换行 Uart_Printf(str_send); else pt_str+; ; Uart_Printf( “nt OK!n“ ); 实验四 实验四 I C 接口实验 接口实验 4.1 实验目的实验目的 1掌握硬件 IC 接口的使用; 2了解 AT24C16 的 EPROM 的操作方法及注意事项。 4.2 实验内容实验内容 使用主模式 IC 向 AT24C16 的 EPROM 写入 0FF。输入一个起始数字,校验正确则 从起始数字开始依次写入数字一直到 FF,再写入 0起始数字前的一个数字,停止写入;否 则,如果校验错误则不断的蜂鸣报警。 4.3 预备知识预备知识 1熟悉 ADS 集成开发环境的基本功能; 2熟悉 IC 总线接口的用法; 3了解 AT24C16 芯片的使用。 4.4 实验设备实验设备 1ARM 嵌入式开发板,JTAG 仿真器。 2软件:PC 机操作系统 Win98、Win2000 或 WinXP,ADS1.2 集成开发环境,仿真器 驱动程序,超级终端通讯程序。 4.5 基础知识基础知识 1I C 总线介绍:总线介绍: IC 总线是一种用于 IC 器件之间连接的二进制总线。 它通过 SDA (串行数据线) 及 SCL (串行时钟线)两根线,在连到总线上的器件之间传送数据。它根据地址识别每个支持 IC 接口的器件。 IC 能替代标准的并行总线,能连接各种集成电路和功能模块。支持 IC 的设备有微控 制器、ADC、DAC、存储器、LCD 控制器、LED 驱动器以及实时时钟等。 (1)IC 总线的基本结构 采用 IC 总线标准的 IC 器件,其内部不仅有 IC 接口电路,而且实现了将内部各单元 电路按功能划分为若干相对独立的模块, 通过软件寻址实现片选, 减少了器件片选线的连接。 CPU 不仅能通过指令将某个功能单元挂靠和摘离总线,还可对单元的工作状况进行检测, 从而实现对硬件系统简单而灵活的扩展与控制。IC 总线接口电路结构如图 4.1 所示。 图 4.1 IC 总线接口电路结构 (2)双向传输的接口特性 传统的单片机串行接口的发送和接收一般都各用一条线,如 MCS51 系列的 TXD 和 RXD,而 IC 总线则根据器件的功能通过软件程序使其可工作于发送和接收方式。当某个 器件向总线上发送信息时,它就是发送器(也称主器件) ,而当它从总线上接收信息时,又 成为接收器 (也称从器件) 。 主器件用于启动总线上传送数据并产生时钟以开放传送的器件, 此时任何被寻址的器件均被认为是从器件。IC 总线的控制完全由挂接在总线上的主器件送 出的地址和数据决定。在总线上,既没有中心机,也没有优先机。 总线上主和从(即发送和接收)的关系不是一成不变的,而是取决于此时数据传送的方 向。SDA 和 SCL 均为双向 I/O 线,通过上拉电阻接正电源。当总线空闲时,两根线都是高 电平。连接总线的器件的输出级必须使集电极或漏极开路,以具有线“与”功能。IC 总线 的数据传送速率在标准工作方式下为 100kb/s,快速方式下最高传送速率达 400kb/s。 (3)IC 总线上的时钟信号 在 IC 总线上传送信息时的时钟同步信号是由挂接在 SCL 时钟线上的所有器件的连接 “与”完成的。SCL 线上由高电平到低电平的跳变将影响到这些器件,一旦某个器件的时 钟信号下跳为低电平,将使 SCL 线上一直保持低电平,使 SCL 线上的所有器件开始低电平 期。此时,低电平周期短的器件的时钟由低至高的跳变并不能影响 SCL 线的状态,于是这 些器件将进入高电平等待的状态。 当所有器件的时钟信号都上跳为高电平时,低电平期结束,SCL 线被释放返回高电平, 即所有的器件都同时开始它们的高电平期。其后,第一个结束高电平期的器件又将 SCL 线 拉成低电平。这样就在 SCL 线上产生一个同步时钟。可见,时钟低电平时间由时钟低电平 期最长的器件确定,而时钟高电平时间由时钟高电平期最短的器件确定。 (4)数据的传送 在数据传送过程中,必须确认数据传送的开始和结束。在 IC 总线技术规范中,开始和 结束信号(也称启动和停止信号)的定义如图 4.2 所示。 图 4.2 开始和结束信号的定义 当时钟线 SCL 为高电平时,数据线 SDA 由高电平跳变为低电平定义为“开始”信号;当 SCL 线为高电平时,SDA 线发生低电平到高电平的跳变为“结束”信号。开始和结束信 号都是由主器件产生。在开始信号以后,总线即被认为处于忙状态;在结束信号以后
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号