arm实验指导书.doc_第1页
arm实验指导书.doc_第2页
arm实验指导书.doc_第3页
arm实验指导书.doc_第4页
arm实验指导书.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ARM实验指导书 第四部分嵌入式系统课程实验第一章FS2410P嵌入式教学平台介绍1.1S3C2410处理器介绍S3C2410是韩国三星公司的一款基于ARM920T内核的16/32位RISC嵌入式微处理器,主要面向手持设备以及高性价比,低功耗的应用。 运行的频率可以达到203MHz。 ARM920T核由ARM9TDMI,存储管理单元(MMU)和高速缓存三部分组成。 其中MMU可以管理虚拟内存,高速缓存由独立的16KB地址和16KB数据高速Cache组成。 ARM920T有两个协处理器CP14和CP15。 CP14用于调试控制,CP15用于存储系统控制以及测试控制。 S3C2410的资源包括?1个LCD控制器(支持STN和TFT带有触摸屏的液晶显示屏)。 ?SDRAM控制器。 ?3个通道的UART。 ?4个通道的DMA。 ?4个具有PWM功能的计时器和一个内部时钟。 ?8通道的10位ADC。 ?触摸屏接口。 ?IIS总线接口。 ?2个USB主机接口,1个USB设备接口。 ?2个SPI接口。 ?SD接口和MMC卡接口。 ?看门狗计数器。 ?117个通用I/O口和24位外部中断源。 ?8通道10位AD控制器。 S3C2410集成了一个具有日历功能的RTC和具有PLL(MPLL和UPLL)的芯片时钟发生器。 MPLL产生主时钟,能够使处理器工作频率最高达到203MHz。 S3C2410将系统的存储空间分为8组(Bank),每组的大小是128MB,共1GB。 Bank0到Bank5的开始地址是固定的,用于ROM或SRAM。 Bank6和Bank7用于ROM,SRAM或SDRAM,这两个组可编程且大小相同。 Bank7的开始地址是Bank6的结束地址,灵活可变。 所有内存块的访问周期都可编程。 S3C2410采用Ngcs7:08个通用片选信号选择这些组。 S3C2410支持从NAND FLASH启动,NAND FLASH具有容量大,比NOR Flash价格低等特点。 系统采用NAND Flash与SDRAM组合,可以获得非常高的性价比。 S3C2410具有三种启动方式,可以通过OM10管脚进行选择?OM10=00时处理器从NAND Flash启动;?OM10=01时处理器从16位宽的ROM启动;?OM10=10时处理器从32位宽的ROM启动。 用户可以将引导代码和操作系统镜像存放在外部的NAND Flash中,并从NAND Flash启动。 当处理器在这种启动模式下复位时,内置的NAND Flash将访问控制接口,并将代码自动加载到内部SRAM(此时该SRAM定位于起始地址空间0x00000000,容量为4KB)并且运行。 之后,SRAM中的引导程序将操作系统镜像加载到SDRAM中,操作系统就能够在SDRAM中运行。 启动完毕后,4KB的启动SRAM就可以用于其它用途。 如果从其它方式启动,启动ROM就要定位于内存的起始地址空间0x00000000,处理器直接在ROM上运行启动程序,而4KB启动SRAM被定位于内存地址的0x40000000处。 S3C2410对于片内的各个部件采用了独立的电源供给方式?内核采用1.8V供电;?存储单元采用3.3V独立供电,对于一般SDRAM可以采用3.3V,对于移动SDRAM可以采用Vdd等于1.8/2.5V;?Vddq等于3.0/3.3V;?I/O采用独立3.3V供电。 1.2FS2410P教学平台硬件构成硬件功能介绍?采用三星公司的S3C2410,主频可达203MHz;?64M字节的SDRAM,由两片K4S561632组成,工作在32位模式下;?64M字节NAND Flash,采用的是K9F1208,可以兼容16M,32M或128M字节;2M字节的Nor Flash,采用的是SST39VF1601,工作在16位模式;?10M以太网接口,采用的是CS8900Q3,带传输和连接指示灯;?LCD和触摸屏接口;?平台上集成了4线电阻触摸屏接口的相关电路;?一个50芯LCD接口引出了LCD控制器的全部信号,并且这些信号引脚都加了74LVTH162245驱动,所以LCD输出更加稳定可靠;?支持颜色到4096色的STN液晶屏,同时可以支持颜色到64K色,真彩色的TFT液晶屏,尺寸从3.5寸到12.1寸,分辨率可达到800X600像素;?VGA接口,可以支持分辨率到800x600;?一个USB HOST,S3C2410内置的,符合USB1.1;?一个USB Device,S3C2410内置的,符合USB1.1;?支持音频输入和音频输出,音频模块由S3C2410的IIS音频总线接口和UDA1341音频编码解码器组成,教学平台上还集成了一个MIC,用于音频输入;?2路UART串行口,波特率可高达115200bps,并具有RS232电平转换电路;?CAN总线接口模块,CAN属于现场总线;?IDE接口,可直接挂接硬盘;?A/D采集模块,支持8通道的10bit ADC,其中一个通道采用可调电阻来改变A/D的输入值,其它的通道通过扩展口扩出;?CF(Compact Flash)接口支持两种CF卡接口标准CF TypeII和CF TypeI,同时支持3.3v和5.0v电压;?SD卡接口,兼容SD MemoryCard Protocol1.0和SDIO CardProtocol1.0;?步进电机控制模块;?伺服电机控制接口;?CPLD控制模块采用的是XiLinx公司的XC9572;?Embedded-ICE(20脚标准JTAG)接口和并口式JTAG接口,支持ADS,SDT软件的下载和调试以及FLASH的烧写;?串行EEPROMAT24C044Kbytes EEPROM,IIC接口;?支持8x8LED点阵;?键盘接口模块4x4矩阵式键盘,支持扫描和中断方方式;?蜂鸣器,4个LED灯;?开关电源,分布式电源供电,3V锂电池,提供CPU内置RTC操持电源;可选配模块?GPRS/GSM/GPS模块。 1.3硬件资源分配1.3.1地址空间分配以及片选信号定义S3C2410支持两种启动模式一种是从NAND FLASH启动;一种是从外部nGCS0片选的Nor Flash启动。 在这两种启动模式下,各片选的存储空间分配是不同的,这两种启动模式的存储分配图如下a)图是nGCS0片选的Nor Flash启动模式下的存储分配图;b)图是NAND FLASH启动模式下的存储分配图;说明SFR Area为特殊寄存器地址空间。 ?下面是器件地址空间分配和其片选定义在进行器件地址说明之前,有一个点需要注意,nGCS0片选的空间在不同的启动模式下,映射的器件是不一样的。 由上图可以知道?在NAND FLASH启动模式下,内部的4K BytesBootSRam被映射到nGCS0片选的空间。 ?在Nor Flash启动模式(非NAND FLASH启动模式)下,与nGCS0相连的外部存储器Nor Flash就被映射到nGCS0片选的空间。 地址范围说明片选信号0x80001000LED88点阵的地址0x480000000x60000000SFR(特殊寄存器)地址空间0x400000000x40000FFF NAND FLASH启动模式下,该空间没有被使用非NAND FLASH启动模式下,该空间为BootSRam0x38001002键盘地址nGCS70x38001000步进电机的地址0x300000000x34000000SDRAM空间nGCS60x200000200x2000002e之间的偶数地址IDE相关寄存器的地址nGCS40x19000300CS8900的IO基址0x100000000x18000000nGCS20x000000000x00200000NAND FLASH启动模式下,BootSRam的有效地址0x000000000x00000FFF nGCS0非NAND FLASH启动模式下,Nor Flash(SST39VF1601)的有效地址空间为0x000000000x002000001.3.2外部中断分配中断名称说明EINT0,EINT2,EINT11,EINT19作为44键盘的4条列线EINT1IDE接口的中断请求EINT3CF卡接口的中断请求EINT8CAN总线中断请求EINT9网络芯片CS8900中断请求1.3.3其它资源分配?A/D通道分配表A/D通道说明AIN0与线性电位器相连AIN1与温度传感器相连AIN2,AIN3,AIN4,AIN6通过扩展口扩出AIN5,AIN7与触摸屏X,Y值通道相连?跳线分配表跳线名称说明J1决定S3C2410的启动模式。 插上短路块从Nand Flash中启动,默认不插上短路块从Nor Flash(SST39VF1601)中启动。 ?按键说明下表为核心板按键说明按键名称说明S1复位按键,小按键下表为底板按键说明按键名称说明S1复位按键,S2,S3用于CPLD功能实验的按键S4S1944键盘?LED指示灯说明下表是核心板的LED指示灯说明LED名称说明LED1,LED2I/O口指示灯LED3核心板电源指示灯下表为底板LED指示灯说明LED指示灯名称说明D1,D2网络指示灯D3D10用于CPLD功能实验的指示灯D11D144个I/O口指示灯D29IDE接口工作指示灯D30CF卡工作指示灯D32底板电源指示灯?各种接口说明下表为核心板上的接口说明接口名称说明310针扩展口,引出了JTAG信号和串口信号下表为底板的接口说明接口名称说明1,2核心板在底板上的连接器320针的JTAG调试接口CON1以太网接口(RJ45,带隔离器的)J1ADC通道扩展口扩出了AIN0AIN4,AIN6J3CPLD下载电缆P1,P2串行口1,2JP3GPS模块的电流接口(PS/2)JP5RS485接口U8红外线IrDA CON2SD卡接口4USB HOST接口CON3USB DEVICE接口J450针LCD和触摸屏接口J5VGA接口J6音频输出接口J7音频输入接口J8喇叭接口J9CAN总线接口J10IDE接口J12步进电机接口6CF卡接口JP6直流电机接口U22伺服电机接口J29,J14电源输入接口J15IDE硬盘电源输出接口J22CCFL背光电源输出接口J16板子的开关电源接口1.4软件支持1.4.1支持的操作系统FS2410P教学平台支持uC/OS-II,WINCE和Linux嵌入操作系统。 ?嵌入Linux操作系统说明?采用linux2.4以上的内核;?支持多种文件系统,象ROMFS,CRAMFS,FAT以及用于NAND FLASH的YAFFS文件系统等等;?支持IDE硬盘的挂接;?支持framebuffer;?支持USB HOST;?支持QT和MiniGui图形系统;?支持MP3播放和视频播放;?支持多种网络应用,象FTP,Tel之类的网络应用。 ?WINCE嵌入式操作系统说明?WINCE的BSP包?uC/OS-II嵌入式操作系统说明?支持多任务管理和通讯,像信号量,邮箱以及消息队列。 1.4.2教学平台的BootLoader FS2410P提供一个板极驱动包BootLoader即FS2410P_BIOS,FS2410P_BIOS具有启动、引导,下载、烧写等多种功能。 ?BIOS的详细功能说明如下?支持USB Device下载;?支持串口下载(XMODEM);?支持网络下载(TFTP);?支持对NOR FLASH的在线烧写;?支持对NAND FLASH的在线烧写;?设置Linux的启动参数;?启动和引导操作系统。 1.4.3基于GUI的程序实验包FS2410P的GUI程序实验包,将FS2410P教学平台上的大部分实验,以GUI的形式整合在一起,用户界面友好,使用清楚明了,用户可以通过触摸屏和串口两种方式来执行测试程序。 第二章ADS1.2集成开发环境的使用ARM ADS全称为ARM DeveloperSuite。 是ARM公司推出的新一代ARM集成开发工具。 现在ADS的最新版本是1.2,它取代了早期的ADS1.1和ADS1.0。 它除了可以安装在Windows NT4,Windows2000,Windows98和Windows95操作系统下,还支持Windows XP和Windows Me操作系统。 2.1使用ADS创建工程本节通过一个具体实例,为读者介绍如何使用该集成开发环境,利用CodeWarrior提供的建立工程的模板建立自己的工程,并学会如何进行编译链接,生成包含调试信息的映像文件和可以直接烧写到FLASH中的.bin格式的二进制可执行文件。 2.1.1建立一个工程打开一个如图2.2-1所示的对话框图图2.1-1新建工程对话框工程将所有的源码文件组织在一起,并能够决定最终生成文件存放的路径,输出的格式等。 在CodeWarrior中新建一个工程的方法有两种,可以在工具栏中单击“New”按钮,也可以在“File”菜单中选择“New”菜单。 在这个以上对话框中为用户提供了7种可选择的工程类型ARM Executable Image用于由ARM指令的代码生成一个ELF格式的可执行映像文件;ARM ObjectLibrary用于由ARM指令的代码生成一个armar格式的目标文件库;Empty Project用于创建一个不包含任何库或源文件的工程;Makefile ImporterWizard用于将Visual C的nmake或GNU make文件转入到CodeWarrior IDE工程文件;Thumb ARM ExecutableImage用于由ARM指令和Thumb指令的混和代码生成一个可执行的ELF格式的映像文件;Thumb Executableimage用于由Thumb指令创建一个可执行的ELF格式的映像文件;Thumb ObjectLibrary用于由Thumb指令的代码生成一个armar格式的目标文件库。 在这里选择ARMExecutableImage,在“Project name:”中输入工程文件名,本例为“ASM”,点击“Location:”文本框的“Set”按钮,浏览选择想要将该工程保存的路径,将这些设置好后,点击“确定”,即可建立一个新的名为ASM的工程。 这个时候会出现ASM.mcp的窗口,如图2.1-2所示,有三个标签页,分别为files,link order,target默认的是显示第一个标签页files。 通过在该标签页点击鼠标右键,选中“Add Files”可以把要用到的源程序添加到工程中。 图图2.1-2新建工程打开窗口对于本例,将已准备好的源文件(.s和.c文件)添加进去,添加过程如下图(图2.1-3)图2.1-3点击“打开”按钮确定。 在这里还有一个细节,希望读者注意。 在建立好一个工程时,默认的target是DebugRel,还有另外两个可用的target,分别为Realse和Debug,这三个target的含义分别为DebugRel使用该目标,在生成目标的时候,会为每一个源文件生成调试信息;Debug使用该目标为每一个源文件生成最完全的调试信息;Release使用该目标不会生成任何调试信息。 在本例中,使用默认的DebugRel目标。 为工程添加源码常用的方法有两种,既可以使用入图2.1-3所示方法,也可以在“Project”菜单项中,选择“Add Files”,这两种方法都会打开文件浏览框,用户可以把已经存在的文件添加到工程中来。 当选中要添加的文件时,会出现一个对话框,如图2.1-4所示,询问用户把文件添加到何类目标中,在这里,我们选择DebugRel目标。 把ASM.s(ASM.s的参考代码下面章节)添加到工程中来。 图图2.1-4选择添加文件到指定目标到目前为止,一个完整的工程已经建立。 下面该对工程进行编译和链接工作。 2.1.2编译和链接工程在进行编译和链接前,首先讲述一下如何进行生成目标的配置。 点击Edit菜单,选择“DebugRel Settings”(注意,这个选项会因用户选择的不同目标而有所不同),出现如图2.1-5所示的对话框。 这个对话框中的设置很多,在这里介绍一些最为常用的设置选项,读者若对其它未涉及到的选项感兴趣,可以查看相应的帮助文件。 target设置选项。 Target Name文本框显示了当前的目标设置。 Linker选项供用户选择要使用的链接器。 在这里默认选择的是ARM Linker,使用该链接器,将使用armlink链接编译器和汇编器生成的工程中的文件相应的目标文件。 图图2.1-5DebugRel设置对话框这个设置中还有两个可选项,None不是不用任何链接器,如果使用它,工程中的所有文件都不会被编译器或汇编器处理。 ARM Librarian表示将编译或汇编得到的目标文件转换为ARM库文件。 对于本例,使用默认的链接器ARM Linker。 Pre-linker目前CodeWarrior IDE不支持该选项。 Post-Linker选择在链接完成后,还要对输出文件进行的操作。 因为在本例中,希望生成一个可以烧写到Flash中去的二进制代码,所以在这里选择ARM fromELF,表示在链接生成映像文件后,再调用FromELF命令将含有调试信息的ELF格式的映像文件转换成其它格式的文件。 ?Language Settings因为本例中包含有汇编源代码,所以要用到汇编器。 ADS集成开发环境的汇编器是armasm,默认的ARM体系结构是ARM920T。 字节顺序默认就是小端模式。 其它设置,就用默认值即可。 还有一个需要注意的就是ARM C编译器,它实际就是调用的命令行工具arm。 使用默认的设置就可以了。 细心的读者可能会注意到,在设置框的右下脚,当对某项设置进行了修改,该行中的某个选项就会发生相应的改动。 实际上,这行文字就显示的是相应的编译或链接选项,由于有了CodeWarrior,开发人员可以不用再去查看繁多的命令行选项,只要在界面中选中或撤消某个选项,软件就会自动生成相应的代码,为不习惯在DOS下键入命令行的用户提供了极大的方便。 ?Linker设置鼠标选中ARM Linker,出现如图2.1-7所示对话框。 这里详细介绍该对话框的主要的标签页选项,因为这些选项对最终生成的文件有着直接的影响。 在标签页Output中,Linktype中提供了三种链接方式。 Partial方式表示链接器只进行部分链接,经过部分链接生成的目标文件,可以作为以后进一步链接时的输入文件。 Simple方式是默认的链接方式,也是最为频繁使用的链接方式,它链接生成简单的ELF格式的目标文件,使用的是链接器选项中指定的地址映像方式。 Scattered方式使得链接器要根据scatter格式文件中指定的地址映像,生成复杂的ELF格式的映像文件。 这个选项一般情况下,使用不太多。 图图2.1-6命令行工具选项设置图图2.1-7链接器设置1图图2.1-8设置映像文件的入口点因为所举的例子比较简单,选择Simple方式就可以了。 在选中Simple方式后,就会出现Simple image。 RO Base这个文本框设置包含有RO段的加载域和运行域为同一个地址。 默认是0x8000。 这里用户要根据自己硬件的实际SDRAM的地址空间来修改这个地址,保证在这里填写的地址,是程序运行时,SDRAM地址空间所能覆盖的地址。 针对本书所介绍的目标板,SDRAM的空间范围为0x300000000x34000000,这里设置为0x30100000。 RW Base这个文本框设置了包含RW和ZI输出段的运行域地址。 如果选中split选项,链接器生成的映像文件将包含两个加载域和两个运行域,此时,在RW Base中所输入的地址为包含RW和ZI输出段的域设置了加载域和运行域地址Ropi选中这个设置将告诉链接器使包含有RO输出段的运行域位置无关。 使用这个选项,链接器将保证下面的操作检查各段之间的重寻址是否有效;确保任何由armlink自身生成的代码是只读位置无关的。 Rwpi选中该选项将会告诉链接器使包含RW和ZI输出段的运行域位置无关。 如果这个选项没有被选中,域就标识为绝对。 每一个可写的输入段必须是和读写位置无关的。 如果这个选项被选中,链接器将进行下面的操作检查可读/可写属性的运行域的输入段是否设置了位置无关属性;检查在各段之间的重地址是否有效;在Region$Table和ZISection$Table中添加基于静态存储器sb的选项。 该选项要求RW Base有值,如果没有给它指定数值的话,默认为0值。 Split Image选择这个选项把包含RO和RW的输出段的加载域分成2个加载域一个是包含RO输出段的域,一个是包含RW输出段的域。 这个选项要求RW Base有值,如果没有给RW Base选项设置,则默认是-RW Base0。 Relocatable选择这个选项保留了映像文件的重寻址偏移量。 这些偏移量为程序加载器提供了有用信息。 在Options选项中,需要读者引起注意的是Image entrypoint文本框。 它指定映像文件的初始入口点地址值,当映像文件被加载程序加载时,加载程序会跳转到该地址处执行。 如果需要,用户可以在这个文本框中输入下面格式的入口点入口点地址这是一个数值,例如-entry0x0符号该选项指定映像文件的入口点为该符号所代表的地址处,比如-entry int_handler如果该符号有多处定义存在,armlink将产生出错信息。 offset+object(section)该选项指定在某个目标文件的段的内部的某个偏移量处为映像文件的入口地址,例如-entry8+startup(startupseg)在此处指定的入口点用于设置ELF映像文件的入口地址。 需要引起注意的是,这里不可以用符号main作为入口点地址符号,否则将会出现类似“Image dosenot havean entrypoint(Not specifiedor notset dueto multiplechoice)”的错误信息。 在Layout选项中,需要的设置如图2.1-8,设置asm.o目标文件中的Init为整个文件的入口点。 关于ARM Linker的设置还有很多,对于想进一步深入了解的读者,可以查看帮助文件,都有很详细的介绍。 在Linker下还有一个ARM fromELFfromELF是一个实用工具,它实现将链接器,编译器或汇编器的输出代码进行格式转换的功能。 例如,将ELF格式的可执行映像文件转换成可以烧写到ROM的二进制格式文件;对输出文件进行反汇编,从而提取出有关目标文件的大小,符号和字符串表以及重寻址等信息。 只有在Target设置中选择了Post-linker,才可以使用该选项。 在Output format下拉框中,为用户提供了多种可以转换的目标格式,本例选择Plain binary,这是一个二进制格式的可执行文件,可以被烧些的目标板的Flash中。 在Output filename文本域输入期望生成的输出文件存放的路径,或通过点击Choose.按钮从文件对话框中选择输出文件。 如果在这个文本域不输入路径名,则生成的二进制文件存放在工程所在的目录下。 进行好这些相关的设置后,以后在对工程进行make的时候,CodeWarrior IDE就会在链接完成后调用fromELF来处理生成的映像文件。 对于本例的工程而言,到此,就完成了make之前的设置工作了。 图图2.1-9ARM fromELF可选项点击CodeWarrior IDE的菜单Project下的make菜单,就可以对工程进行编译和链接了。 整个编译链接过程如图2.1-10所示图图2.1-10编译和链接过程在工程ASM所在的目录下,会生成一个名为工程名_data目录,在本例中就是ASM_data目录,在这个目录下不同类别的目标对应不同的目录。 在本例中由于我们使用的是DebugRel目标,所以生成的最终文件都应该在该目录下。 进入到DebugRel目录中去,读者会看到make后生成的映像文件和二进制文件,映像文件用于调试,二进制文件可以下载到SDRAM中运行。 2.1.3ASM的参考代码下面是ASM.s的源代码。 ;汇编指令实验;定义端口E寄存器预定义rGPFCON EQU0x56000050rGPFDAT EQU0x56000054rGPFUP EQU0x56000058AREA Init,CODE,READONLY;该伪指令定义了一个代码段,段名为Init,属性只读ENTRY;程序的入口点标识ResetEntry;下面这三条语句,主要是用来设置I/O口GPE7为输出属性ldr r0,=rGPFCON;将寄存器rPCONE的地址存放到寄存器r0中ldr r1,=0x4000str r1,r0;将r1中的数据存放到寄存器rPCONE中;下面这三条语句,主要是禁止GPE端口的上拉电阻ldr r0,=rGPFUP ldr r1,=0xffff str r1,r0ldr r2,=rGPFDAT;将数据端口E的数据寄存器的地址附给寄存器r2ledloop ldrr1,=0x1ffff strr1,r2;使GPE7输出高电平,D14灯会灭bl delay;调用延迟子程序ldrr1,=0x0strr1,r2;使GPE7输出低电平,D14灯亮bl delay;调用延迟b ledloop;不断的循环,D14将不停的闪烁;下面是延迟子程序delay ldrr3,=0x1ffff;设置延迟的时间delay1sub r3,r3,#1;r3=r3-1cmp r3,#0x0;将r3的值与0相比较bne delay1;比较的结果不为0(r3不为0),继续调用delay1,否则执行下一条语句mov pc,lr;返回END;程序结束符2.2用AXD进行代码调试2.2.1安装并运行ARM-JTAG调试代理ARM9首先要正确连接目标板,20芯排线连接到SDT座上。 将光盘目录“实用工具”下的“arm debug”文件夹拷贝到硬盘上任意目录下,运行其中的文件“安装驱动.exe”,就会弹出一个界面窗口,点击上面的“INSTALL”按键直到出现提示信息“Service ispartially installed.”,然后再点击下面的“INSTALL”按键,出现下面的信息(图2.2-1),说明驱动安装成功图图2.2-1现在运行ARM9JTAG调试代理软件arm9.exe,注意如果20芯排线连接到SUPERJTAG板的SDT接口(JP4)上,需要选中下图中的SDT;如果20芯排线连接到SUPERJTAG板的Wiggler接口(JP2)上,需要选中下图中的Wiggler,这里使用的是SDT,设置如下图所示图图2.2-2如果安装成功、配置正确而且硬件连接良好,将会检测到ARM920T,如(图2.2-2)中左上角的红色圆圈。 2.2.2为ARM-JTAG调试代理正确配置AXD DEBUGGER运行ADS1.2软件中的调试软件AXD Debugger,如图2.2-3的界面中,点击菜单options/Configure Target,在弹出的界面窗口中选择Remote_A.dll,然后点击按键Configure图图2.2-3图图2.2-4在弹出的窗口中,点击“Select”按键,选择“ARM Etherdriver”选项,然后点击OK按键,如图2.2-4所示。 再点击“Configure”按键,在弹出的窗口中输入数字“”并确认,如图2.2-5所示,就是设置完毕图图2.2-52.2.3使用SUPERJTAG在ADS1.20环境下进行仿真调试关闭并重新启动AXD Debugger,点击菜单File/Load Image,找到您想调试的调试目标代码(*.axf格式),打开它就启动目标代码下载,这时会出现进度条,下载完毕就可以单步或者全速调试了,调试过程中可以看CPU各寄存器,也可以设置断点,可以进行单步,全速等等调试功能。 提示 1、如果AXD不能正常运行,请重新执行2.2.2步骤。 2、为提高调试的稳定性,建议使用H-JTAG取代ARM9-JTAG调试代理,H-JTAG调试代理软件下载、使用参见网址.hjtag./第三章FS2410P教学平台使用手册3.1运行FS2410P教学平台GUI实验包在出厂前,一上电就进行进入基于GUI的测试程序,通过触摸屏或者键盘就可以控制相应的测试,进入测试功能界面后,点击弹出来的操作说明界面,就可以进入相应的功能测试,测试结束后,可以用“A”(或PC键盘的ESC键)退出,返回主菜单。 注意有时候返回主菜单后,可能会出现点不了触摸屏的现象,这是由于测试结束,按“A”或(PC机的“ESC”)键按多了,出现这种情况,可以按几次“D”(或PC机的ENTER键)键。 44键盘的映像功能图44键盘PC键盘789A789ESC456B456Y123C123N0F ED0+-ENTER在刚拿到教学实验箱后,一上电,启动的是测试程序,分别在串口和LCD屏上显示主功能测试菜单,可以通过串口或者触摸笔来操作测试过程。 至于详细的测试步骤,一看就明白。 在测试中,需要注意的地方 (1)TFT LCD显示实验进入彩色方块图后,按任意键,见显示图片,在按“A”键才能返回主菜单 (2)GPRS实验,选择发短信的功能,在输入手机号码后,请按“D”确认。 (3)在有些实验中,屏上册操作说明有用“+”或“-”键的,请用“F”或“E”键取代。 (4)CF卡测试实验,要插上CF卡后再上电或复位,这样才能正确进行CF卡读写测试 (5)在进行LINUX视频播放的时候,先启动LINUX,进入QT界面后,插上放有音频和视频文件的U盘(视频和音频的文件名是确定的),在光盘的“目标文件”下提供。 点击aplayer图标,在出现的播放界面上,点击“装载U盘”按钮,然后在点击“播放音频文件”或“播放视频文件”按钮,进行音频,视频播放。 (6)网络下载实验,需要与计算机配合,交叉网线要连好,确保计算机的IP地址与FS2410P实验箱的IP是同一网段。 (7)USB下载实验,连上USB DEVICE连线,在第一次运行这个实验的时候,计算机会提示发现一个新硬件,这时需要安装USB DEVICE的驱动,USB DEVICE驱动的位置在光盘的“USB驱动”文件夹下,装好驱动后,注意,用DNW的串口终端工具,设置好USB下载的地址,不要与测试程序的运行地址冲突了,这里测试程序的运行地址是0x33800000。 设置好地址后,就可以通过USB DEVICE下载文件了。 (8)485通讯测试,这个麻烦一些,我们是这样测试的,用一个485转232的转换器,用交叉串口线将转换器的232接口与PC机的2相连,而转换器的485接口与FS2410P实验箱的485接口相连。 再为2打开一个串口工具DNW,向这个串口工具输入按键值,这个按键值将在LCD屏上显示出来。 (9)IDE硬盘测试,注意在测试主程序启动后,再加载硬盘,然后进入IDE硬盘测试功能。 (10)GPS接法长的PS/2线接GPS接收头,短的PS/2线接教学平台上的PS/2接口。 3.2FS2410P的的BootLoader使用和说明FS2410P提供一个功能强大的板极驱动包BIOS,FS2410P BIOS具有启动、引导,下载、烧写,设置日期、时间,设置工作频率等多种功能,并且支持各种参数的存储和自动调用,交互性很好。 BIOS的详细功能说明如下?支持网口下载运行(TFTP协议)?支持串口下载运行(XMODEM协议)?设置通讯的串口,可设置串口波特率?设置系统的工作频率?支持NOR FLASH的复制,搬移,格式化以及在线烧写?支持NAND FLASH的分区,格式化以及在线烧写?设置日期,时间?设置Linux的启动参数?保存各种设置的参数?启动和引导操作系统3.2.1FS2410P_BIOS命令简表FS2410P_BIOS具有启动、引导,下载、烧写,设置日期、时间,设置工作频率等多种功能,并且支持各种参数的存储和自动调用。 可以用sjf2410等软件将BIOS烧写到FLASH中去,BIOS的自身驻留地址位于NOR FLASH的0x1f0000处,系统参数保存在0x1ff000以上区域中。 所以在烧写完BIOS,上电复位后先要执一定要执行backup命令把BIOS本身拷贝到NOR FLASH的高端1f0000去。 下面BIOS命令的汇总列表BIOS命令命令行提示信息功能说明help showthis list显示BIOS命令列表?help显示BIOS命令列表date showor setcurrent date显示或设置开发板时钟的当前日期time showor setcurrent time显示或设置开发板时钟的当前时间setweek setweekday设置星期信息clock showsystem runningclock显示系统当前运行速度setmclk setsystem runningclock设置系统当前运行时钟chguart changeuart(0/1)改变串口(0/1)setbaud setbaud rate设置串口通信波特率ipcfg showor setcurrent IPaddress显示或设置当前开发板IP地址load downloadfile by通过网络下载文件run downloadfile by andrun通过网络下载文件并运行该文件g downloadfile by andrun通过网络下载文件并运行该文件load downloadfile byuart通过串行口下载文件run downloadfile byuart andrun通过串行口下载文件并运行该文件rx downloadfile byxmodem通过XMODEM下载文件rxrun downloadfile byxmodem andrun通过XMODEM下载文件并运行usbload downloadfile byusb通过USB DEVICE下载usbrun downloadfile byusb andrun通过USB DEVICE下载并运行U downloadfile byusb andrun通过USB DEVICE下载并运行prog programflash对FLASH存储器编程ap downloadfile andprogram itto flash下载文件并编程写入FLASH存储器backup movebios tothe topof flash拷贝BIOS代码到FLASH存储器高端copy copyflash fromsrc todst address从源地址到目标地址拷贝FLASH内容boot bootfrom flash从FLASH存储器重启动run runprogram运行程序move movedata fromaddr1to addr2从ADDR1转移数据到ADDR2mrun movedata formprog_s_addr toprog_r_addr andrun从源地址到目的地址移动数据并运行md showmemory data显示内存数据memd show8/16/32bits memory按照字节/半字/字格式显示内存数据mems set8/16/32bits memory按照字节/半字/字格式设置内存数据senv saveenviroment valueto flash在FLASH存储器保存环境变量machine setmachine number设置机器序列号setpa setprogram save(run)address设置程序存储及运行地址setbp setprogram bootparameters设置程序启动参数bootkey setkey toautoboot设置自动重启的按键nfpart setnand flashpartitions设置NAND FLASH分区nferase erasenand flashpartition清除NAND FLASH分区nfprog programnand flashNAND FLASH编程nfload loadprogram fromnand flash从NAND FLASH载入程序defset defaultsetting foruClinux恢复到运行uClinux的默认设置lcdbl LCDbacklight settingLCD背光控制命令3.2.2FS2410P_BIOS命令详解(注以下命令所带参数中地址和长度都属16进制,不必在前面加0x)help和?可以列出所有命令并给出简单的说明;date命令可以显示和设置当前日期,只输入date命令则显示日期,输入datexx-6-8则设置当前日期为xx年6月8日。 time命令可以显示和设置当前时间,只输入time命令则显示时间,输入date14430则设置当前时间为14430。 setweek n可设置星期几,n从1到7表示星期一到星期日。 clock可以显示当前的工作频率。 setmclk可以改变CPU工作频率,具体参数设置可见芯片手册,注意不要使频率超出工作范围。 频率参数属于可以保存和调入的参数,这次设置和保存后下次复位BIOS会自动调入这写参数初始化CPU。 setbaud可改控制串口的波特率,改完后要在PC上相应改变串口通讯波特率后再敲回车。 ipcfg可显示和修改tftp下载时所用的IP地址,只输入ipcfg则显示当前IP地址,输入ipcfg23则将ip地址改为23。 load启动tftp接收,若没带地址参数,则使用缺省下载地址0x30008000,若指定地址,下载数据保存到指定地址开始的SDRAM中去,如load30100000。 启动tftp接收后,要在PC端执行tftp下载程序,在win2000或winxp下,直接输入tftp-i xxx.xxx.xxx.xxx put文件名即可;在win98下,使用CDROM里所带的tftp程序;在linux下,使用CDROM里所带的tftpcmd程序。 注意进行tftp传输时要保证PC机和开发板处于同一个IP段内。 run或者是n启动tftp接收完数据后会自动运行下载到的程序,缺省下载地址和指定参数同load。 load启动串口下载(DNW程序的串口下载),缺省下载地址和指定参数同load.run启动串口下载(DNW程序的串口下载)并在接收完数据后自动运行下载的程序,缺省下载地址和指定参数同load。 rx启动XMODEM方式下载,可在超级终端内选择1K XMODEM或XMODEM发送数据到开发板上,缺省下载地址和指定参数同load。 rxrun在启动XMODEM方式接收完数据后自动运行下载到的程序,缺省下载地址和指定参数同load。 usbload命令启动USB DEVICE下载,缺省地址和指定参数同load一样。 但在第一次运行usbload的时候,PC机会提示有新硬件发现,这是要装好USB驱动,才能进行下载。 要利用USB下载的时候,请用DNW2410.EXE工具。 usbrun或或u通过USB DEVICE下载数据,数据下载完后,自动运行下载到的程序,缺省地址和指定参数同load一样。 prog可以烧写NOR FLASH,目前支持SST39VF1601。 prog命令完整的参数是prog addr1addr2length-no0,其中addr1是要烧写的FLASH的地址,大于等于0,小于200000,字对齐,addr2是sdram中要烧进flash的数据区起始地址,length是要烧写的长度,-no0表示要把数据烧进Nor Flash0地址开始的地方时,是否修改0地址的指令,因为CPU复位总是从0开始执行的,当用Nor Flash启动时,若用prog命令将下载到的程序烧入Nor Flash0地址开始的地方并在命令最后指定-no0,那么在复位后,就不会再运行Bios而直接启动用户程序了,若不在prog命令最后加-no0,则BIOS可以烧写Nor Flash0地址的数据前,将0地址的指令改为直接跳转到0x1f0000处即Bios的驻留地址,并保存原程序0地址将要跳转到的地址,以后在执行boot指令时再跳转过去执行用户烧入的程序。 运行Bios。 在运行Bios下载完数据后,也可不带参数直接执行prog命令,缺省的Nor Flash地址是用户程序存储地址prog_s_addr(见后面setpa命令),sdram中数据起始地址和数据长度在接收成功后自动设定了。 ap指令自动下载完数据并将数据烧写到nor flash的0地址处,缺省为tftp下载,指定-c表示串口下载(DNW方式),-x表示XMODEM下载,-b表示不修改0地址的指令。 bac

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论