![ARM11和MMS的远程监控系统研究_第1页](http://file4.renrendoc.com/view/4dd504a31fd23ff0ce9921bd35724cc5/4dd504a31fd23ff0ce9921bd35724cc51.gif)
![ARM11和MMS的远程监控系统研究_第2页](http://file4.renrendoc.com/view/4dd504a31fd23ff0ce9921bd35724cc5/4dd504a31fd23ff0ce9921bd35724cc52.gif)
![ARM11和MMS的远程监控系统研究_第3页](http://file4.renrendoc.com/view/4dd504a31fd23ff0ce9921bd35724cc5/4dd504a31fd23ff0ce9921bd35724cc53.gif)
![ARM11和MMS的远程监控系统研究_第4页](http://file4.renrendoc.com/view/4dd504a31fd23ff0ce9921bd35724cc5/4dd504a31fd23ff0ce9921bd35724cc54.gif)
![ARM11和MMS的远程监控系统研究_第5页](http://file4.renrendoc.com/view/4dd504a31fd23ff0ce9921bd35724cc5/4dd504a31fd23ff0ce9921bd35724cc55.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于ARM11和MMS的远程监控系统研究发布: 2011-6-27 09:36 | 作者: | 来源: 21IC | 查看: 101次 随着国民经济的快速发展和人民生活水平的日益提高,各种监控系统应运而生,广泛应用于银行、铁路、民航等重点领域,并逐步进入到个人家居监控应用领域中。目前大多数监控系统都是将现场信息发送到远程计算机上,但计算机携带不方便,不能满足人们随时随地查看现场信息的需求。而手机相对计算机来说普及率高、成本低、携带轻便,尤其是近年来 HYPERLINK /info/tag-1491.html t _blank GPRS无线数字移动通信网的快速发展,为手机终端提供了无线接入Int
2、ernet业务,使得手机成为互联网中最普遍的终端设备。多媒体消息服务(Multimedia Message Service,MMS)作为GPRS一项基本业务,被广大手机用户所使用。它不仅实现了终端之间、终端和电子邮件之间的信息传递,还实现了内容的多样性,包括图片、音频、视频、图像、数据和文本的各种组合。可见,利用GPRS和MMS技术可完全满足远程监控系统对距离、图像、声音、高实时性的要求,具有重要的研究意义和使用价值。本文利用S3C6410作为 HYPERLINK /info/tag-1697.html t _blank 微控制器,设计了一种基于ARM11和MMS技术的远程监控系统。1 MMS
3、概述 MMS是由3(3PP(Third Generation Partnership Project,3G伙伴计划)和WAP Forum(Wireless Application Protocol Forum,无线应用协议论坛)制定的一种手机消息业务,是短信业务和图片信息的进一步发展。MMS系统主要包括多媒体信息中心(MMSC)、WAP网关、数据库服务器和增值服务系统等。它的实现方式有2种:基于WAP和基于IP。目前,GPRS网络采用基于WAP的方式发送和接收MMS彩信,其具体实现方式如图1所示。 从图1中可以看出,MMS业务是以WAP为载体来传送信息的,可见WAP技术在多媒体消息服务中扮演了
4、重要的角色。WAP(Wireless Applica-tion Protocol,无线应用协议)是开发 HYPERLINK /info/tag-1406.html t _blank 移动网络上类似Internet应用的一系列协议的组合,实现了Internet和移动通信网的互联。在WAP体系结构中,WTP协议与WSP协议起到核心作用。WSP协议层在会话服务中提供了一致的接口,并针对无线网络通信进行了优化,而WTP协议为互动式浏览(请求应答)提供服务。 在GPRS网络中,使用MMS PDU(协议数据单元)对MMS信息进行发送和接收,并采用多媒体邮件扩展(MIME)协议进行打包。MMS PDU由MM
5、S Header和MMS Body两部分组成。Header描述了PDU的特定信息。Body包括了SMIL表述,用来设定多媒体片段的位置、播放时间等。当用户终端发送MMS信息时,会将MMS PDU作为WAP协议的数据单元进行封装,并在移动网络中寻址、存储和转发,最终传递给接收用户。2 系统总体架构 为了全面、详细地掌握现场情况,本系统所采集的信息包括温度、湿度、烟雾浓度、图像数据,以满足人们在生产和生活中的需求。系统的总体架构如图2所示。 由图2可知,本系统主要包括控制模块、传感器模块、图像采集模块、报警模块、GPRS模块以及 HYPERLINK /info/tag-8293.html t _b
6、lank 存储器模块等部分。各个模块的主要功能如下: 控制模块是整个系统的核心部分。运行系统的主控程序,完成设备的初始化工作;通过对图像采集模块的控制,完成对图像信息的采集、编码以及存储等工作;通过传感器模块,采集远程终端的温度、湿度、烟雾浓度,并将这些信息转换成ASCII码;完成MMS信息的封装、发送任务。 传感器模块主要完成对现场信息的采集,包括温度、湿度、烟雾浓度,实现非电信号向电信号的转换。 图像采集模块实现对原始图像信息的采集、数据的传送等功能。 GPRS模块通过PPP协议连接到GPRS无线网络,可实现对MMS信息的发送,以及对来自终端用户SMS(短信息)的接收。 存储器模块主要用于
7、存储经过编码处理的图像信息。 当现场温度、湿度或烟雾浓度超过预设报警值时,报警模块产生报警信号,提示工作人员及时处理现场发生的事故。 监控系统的工作原理:当系统正常工作时,微控制器模块会定时采集现场的温度和烟雾浓度,并与预设的报警值进行对比。当温度或烟雾浓度高于此值时,微控制器模块将会控制图像采集模块采集现场图像,并将采集到的数据进行编码和处理,作为MMS消息的图片数据进行存储;同时,通过传感器模块采集现场的温湿度、烟雾浓度,并作为MMS消息的文字部分进行存储。而后将这两部分数据进行封装,以MMS消息的形式传递到终端用户。在完成发送任务的同时,系统会驱动报警模块产生报警信号,达到报警的目的。
8、用户也可以通过向系统发送短信息(SMS)的形式,要求监控终端发送现场的温度、湿度、图像等信息,以实现用户对现场的远程监控。3 系统硬件设计31 控制模块的设计 为了使远程监控系统可以稳定、持续、高效地工作,并能对突发事件做出迅速反应,控制模块采用嵌入式微处理器S3C6410。该处理器是基于1632位ARM11版本内核的低成本、低功耗、高性能 HYPERLINK /info/tag-1275.html t _blank 微处理器,广泛应用于移动电话和其他便携式应用。为了给25G和3G移动通信业务提供最佳的硬件性能,S3C6410采用6432位内部总线结构,内部集成了多个功能强大的硬件加速器,如移
9、动图像处理、显示控制和图像缩放。其内部集成的JPEG HYPERLINK /info/tag-2000.html t _blank 编解码器,支持对YCbCr4:2:2YCbCr4:2:0格式的图像进行编码,输出的图像文件尺寸可满足MMS信息对图片大小的要求。除此之外,S3C6410还具备相机接口,该接口支持ITU R BT-656601 8位模式,最大输入尺寸可为40964096像素,支持YCbCr4:2:2格式的数据作为输入,可生成RGB 161824位格式和YCbCr4:2:2YCbCr4:2:0格式的图像,这一特点可降低系统对图像采集模块的要求。32 传感器模块的设计 系统的传感器模块
10、由两部分组成,分别是温湿度传感器和烟雾浓度传感器。温湿度传感器采用广州奥松公司的高性能AM2301电容式数字温湿度传感器。该传感器具有超快响应、抗干扰能力强、性价比高、温湿度测量范围大、分辨率高等优点,可应用于各类环境中,甚至在条件极为恶劣的场合也可正常工作。AM2301是一种单总线器件,其数据格式:40位数据=16位湿度数据+16位温度数据+8位校验和。在本系统中,通过S3C6410的引脚GPE1并加上拉电阻与控制模块进行通信,使系统集成变得更为简易快捷,节省了引线数量,降低了产品成本。 烟雾浓度传感器采用MQ-2作为感应器件。MQ-2是一种电阻性的传感器,对天然气、液化石油气、氢气等烟雾具
11、有很高的灵敏度,可长期稳定地工作,抗干扰性强。通过测量其输出电阻,可以检测现场的烟雾浓度。33 图像采集模块的设计 图像采集模块采用美国Omnivision公司生产的OV7650。它是一款高集成度、高分辨率的 HYPERLINK /info/tag-1704.html t _blank CMOS图像传感器,支持YCbCr4:2:2数据输出格式,可完全满足系统的设计要求。其输入输出接口与S3C6410的相机接口具备良好的兼容性,为系统的开发提供极大的便利。34 GPRS模块的设计 系统采用Simcom公司的SIM300z作为GPRS模块。它利用GPRS技术与GSM移动通信网络作为传输介质,可为用
12、户提供快速的无线GPRS连接以及较高的 HYPERLINK /info/tag-1884.html t _blank 数据传输速率。该模块有较宽的工作温度范围,可满足监控系统对恶劣条件的要求。SIM300z与S3C6410通过串口通信,能及时处理S3C6410发出的AT指令。对于S3C6410传递的数据,SIM300z也可及时转发,满足监控系统对数据传送的要求。4 系统软件设计 完成硬件的设计只是实现系统功能的第一步,良好的软件设计才是系统能够稳定运行的关键,下面将详细介绍监控系统的软件结构和重要的软件模块。41 嵌入式操作系统的移植 嵌入式操作系统是一种用途广泛的系统软件,负责远程监控系统的
13、全部软件硬件资源的分配、调度等工作,是整个系统的基础。Linux因其内核完全开放、可以灵活配置等特性,被选为本系统的操作系统。其移植过程如下: 在PC机上利用虚拟机,建立交叉编译环境GNU; 根据系统需要选择TCPIP等模块,编译生成Linux内核; 编译生成根文件系统rootdisk; 向底层硬件下载Bootloader映像,Bootloader的主要作用是初始化硬件,引导Linux内核启动; 烧写Linux内核和rootdisk映像。42 GPRS连网模块的设计 在Linux下通过GPRS上网,必须使用PPP协议进行拨号,而移植到ARM中的Linux没有提供PPP协议,需要在内核编译时配置
14、网络设备支持PPP协议。在此基础上,利用pppd源码包,使用“ATD*99*1#”进行拨号连接,即可登录中国移动的GPRS网络。在拨号过程中,需要进行如下设置: 设置串口速率为115 200 bps,校验位为NONE,数据位为8,停止位为1,并取消硬件流控制; 用户名与密码为空; 使用“AT+CGDCONT=1,“IP”,“CMNET”指令,设置接入点为CMNET。43 信息采集模块的设计 信息的采集包括两部分:一部分是图像信息的采集,另一部分是温湿度、烟雾浓度的采集。由于S3C6410具备相机接口和强大的JPEG编解码器作为硬件支持,可直接调用Linux函数完成图像的采集和编码工作,极大地缩
15、短了开发周期。 温湿度的采集通过AM2301模块进行,在其上电后,需等待1s以越过不稳定状态,在此期间不能发送任何指令。AM2301与S3C6410之间采用单总线数据格式进行通信和同步,一次通信时间大约5 ms。 微控制器S3C6410采集温湿度流程如下:通信开始时S3C6410拉低总线DATA,500s后释放总线,延时2040 s后S3C6410开始检测AM230 1的响应信号。AM2301的响应信号是一个80s左右的低电平,随后AM2301再拉高总线80s左右代表其即将进入数据传送状态。而后AM2301传递40位的有效数据,当最后一位数据传送完毕后,AM2301将再次拉低总线50s左右,最
16、后释放总线,并由上拉电阻拉高。烟雾浓度的采集过程:感应器件MQ-2将烟雾信息转变成电信号,经放大电路后再进行AD转换,最终传递给S3C6410进行存储。44 MMS发送模块的设计 当系统成功连接到GPRS网络后,需要通过WAP协议发送MMS信息。在此过程中,WAP网关的IP设置为1000172,端口为9201。发送MMS信息的具体过程如下: 微处理器向WAP网关发送会话建立连接请求,发送的数据为0E 00 00 12 01 10 00 00(8字节)。前4字节为WTP invoke PDU,后4字节为WSP协议数据单元,代表WSP Connect PDU。 服务器返回连接确认,其数据为13 8
17、0 00 02 92 C7 59 0E(30字节)。前3字节为WTP Result PDU,其余为WSP协议数据单元,代表WSP ConnectReply PDU。 微处理器发送WTP确认(WTP Acknowledgement PDU),完成会话连接,发送的数据为18 00 00。 微处理器发送WTP、WSP和MMS包,主要包括WTP Invoke PDU、WSP Post PDU和M-sendreq PDU。 网关返回事务操作结果,微处理器发送WTP确认(WTP Acknowledgement PDU)完成会话,发送的数据:18 00 01。5 系统测试 经过多次测试,由监控终端发送的MM
18、S信息,其绝大部分都能在发送5 s后由终端接收,即使不发送WTP确认也可以被接收,能够满足监控系统对实时性的要求。系统测试如图3所示。结语 本文详细介绍了基于ARM11和MMS的远程监控系统。系统具有较好的稳定性,可以适应不同的工作环境。所采用的MMS技术可以传送图片、声音、文字和视频等信息,通过该技术实现远程监控已成为当今的一大热点。随着嵌入式技术的不断发展、GPRS网络的逐步成熟,以及3G网络的迅速发展,通过MMS的方式实现远程监控必定成为流行趋势。相信在不久的将来,人们不出家门,就可以实时对远程场景进行监控,及时处理突发事件。附录资料:不需要的可以自行删除ARM经典40问答第1问:Q:请
19、问在初始化CPU堆栈的时候一开始在执行mov r0, LR这句指令时处理器是什么模式A:复位后的模式,即管理模式。第2问: Q:请教:MOV中的8位图立即数,是怎么一回事 0 xF0000001是怎么来的 A:是循环右移,就是一个0255 之间的数左移或右移偶数位的来的,也就是这个数除以4一直除, 直到在0-255的范围内它是整数就说明是可以的! A:8位数(0-255)循环左移或循环右移偶数位得到的,F0000001既是0 x1F循环右移4位,符合规范,所以是正确的。这样做是因为指令长度的限制,不可能把32位立即数放在32位的指令中。移位偶数也是这个原因。可以看一看 HYPERLINK t
20、_blank arm体系结构(ADS自带的英文文档)的相关部分。第3问: Q:请教: HYPERLINK t _blank arm微控制器基础与实战2.2.1节关于第2个操作数的描述中有这么一段:#inmed_8r常数表达式。该常数必须对应8位位图,即常熟是由一个8位的常数循环移位偶数位得到。 合法常量:0 x3FC,0,0 xF0000000,200,0 xF0000001. 非法常量:0 x1FE,511,0 xFFFF,0 x1010,0 xF0000010. 常数表达式应用举例: LDR R0,R1,#-4 ;读取 R1 地址上的 HYPERLINK / t _blank 存储器单元内
21、容,且 R1 = R1-4 针对这一段,我的疑问: 1. 即常数是由一个8位的常数循环移位偶数位得到,这句话如何理解 2. 该常数必须对应8位位图,既然是8位位图,那么取值为0-255,怎么0 x3FC这种超出255的数是合法常量呢 3. 所举例子中,合法常量和非法常量是怎么区分的 如0 x3FC合法,而0 x1FE却非法0 xF0000000,0 xF0000001都合法,而0 xF0000010又变成了非法 4. 对于汇编语句 LDR R0,R1,#-4,是先将R1的值减4结果存入R1,然后读取R1所指单元的 值到R0,还是先读取R1到R0,然后再将R1减4结果存入R1 A:提示,任何常数
22、都可用底数*2的n次幂 来表示。 1. HYPERLINK t _blank arm结构中,只有8bits用来表示底数,因此底数必须是8位位图。 2. 8位位图循环之后得到常数,并非只能是8位。 3. 0 xF0000010底数是9位,不能表示。 4. LDR R0, R1, #-4 是后索引,即先读,再减。 可以看一看 HYPERLINK t _blank arm体系结构对相关寻址方式的说明。第4问: Q:在程序移植的过程中,什么代码段处于什么样的模式,这可真是一个困扰人的大难题,有没有一种标志或办法能够识别代码段处于什么样的模式 A:读取 CPSR ,任何时候都是可以读。第5问: Q:为什
23、么保护现场时,总是保护 R0-R3,R12,为什么不保护R4-R11A:请看一看 HYPERLINK t _blank arm-thumb过程调用标准这个文档。第6问: Q:请问 mov R1,#0 x00003DD0 错误: out of the range of operation是怎么回事情 我就是想IODIR=0 x00003dd0,汇编就是 LDR R0,=IODIR MOV R1,#0 x00003dd0 STR R1,R0 编译时候说是超出操作范围 A:使用ldr,mov的操作数为8位位图数。第7问: Q:在 HYPERLINK t _blank arm7TDMI(-S)处理器内
24、部有37个用户可见的寄存器: 问题:用户可见应该怎样理解 这37个寄存器是否是37个不同的物理寄存器, 例如R8与R8_fiq应该是两个不同的物理寄存器吧 A:用户可见是指用户可以通过程序操作的。R8与R8_fiq是两个不同的寄存器。第8问: Q: USR模式,SVC模式,IRQ模式分别有哪些限制 A:对于外设操作限制与芯片设计有关。USR模式不能设置CPSR寄存器。 用户模式下无SPSR寄存器,代码可以为 HYPERLINK t _blank arm,Thumb.第9问: Q:请问在初始化堆栈时就决定了工作模式是什么意思 如何决定工作模式的 A:设置CPSR寄存器。第10问: Q:请问: H
25、YPERLINK t _blank arm汇编程序设计中所谓的文字池作何理解 A:可以理解为常量数组,文字池中保存的是常量,这些常量可以是正常的常量,也可以是地址。第11问: Q:为什么在中断向量表中不直接LDR PC,异常地址.而是使用一个标号,然有再在后面使用DCD定义这个标号 A:因为LDR指令只能跳到当前PC 4kB范围内,而B指令能跳转到32MB范围,而现在这样在LDR PC, xxxx这条指令不远处用xxxxDCD定义一个字,而这个字里面存放最终异常服务程序的地址,这样可以实现4GB全范围跳转。 Q: LDR 不是可以全空间跳转的吗 HYPERLINK t _blank arm微控
26、制器基础与实战程序清单5.3. A: LDR伪指令通过设置指令缓冲池才能实现全范围跳转,而LDR指令则只能实现4KB范围跳转。第12问: Q: ARM7TDMI-S和 HYPERLINK t _blank arm7TDMI有何区别 A: ARM7TDMI-S是ARM7TDMI的可综合(synthesizable)版本(软核)。 对应用工程师来说,除非芯片生产厂商对ARM7TDMI-S进行了裁减,否则ARM7TDMI-S与ARM7TDMI没有太大的区别,其编程模型与 HYPERLINK t _blank arm7TDMI一致。第13问: Q: DCD伪指令的疑惑。 StackUsr DCD Us
27、rStackSpace + (USR_STACK_LEGTH - 1) * 4 这句话是什么意思 DCD后面的程序标号或数字表达式是何意 A:它的内容是初始化递减堆栈的最高地址,看 HYPERLINK t _blank arm微控制器基础与实战2.3.2节。 第2章 编译器与语言第14问: Q:00254: Unimplemented RDI message是什么错误提示 我的设置连接都正常,是不是芯片烧了 A:是JTAG的问题。可以先使用ISP操作试试就知道了,如果能ISP,说明LPC2104没有损坏,还能正常运行程序。第15问: Q:请教:我在调试程序的时候在AXD中出现这样的提示信息:
28、RDI Warning 00159:could not open specified device port. 我是根据配套教程的步骤设置的。 A:请按照光盘easy HYPERLINK t _blank arm_drivereadme.txt安装驱动程序。第16问: Q:我用实验程序运行经常出现下列信息! 程序不能 HYPERLINK / t _blank 下载到目标板。 Warnning! interrupt vectors data is not correct! Program you downloaded can not run freely! A:1.仿真器配置一定要正确,即Eas
29、y HYPERLINK t _blank arm Configuration设置窗口中的FLASH项中选择Erase Flash when need; 2.向量表累加和要为0; 3.可以先在RAM调试一个程序(运行),然后STOP,再使用File-Load Image加载要 HYPERLINK / t _blank 下载到FLASH的调试文件。第17问: Q:在ADS中是否可以进行软件调试基于UCOS-II的程序 A:ADS软件调试只能调试 HYPERLINK t _blank arm的内核,不能调试外设。但是取消 PLL 锁定检测后,可以调试任务切换,最终到空闲任务上。开始移植时软件仿真是最
30、好的工具。第18问: Q: HYPERLINK t _blank armulate软件是干什么的 2104不是用EasyJTAG.dll来仿真吗 A:软件仿真只能仿真 HYPERLINK t _blank arm 核。第19问: Q:有关LPC2106.INC的问题。我无法在project引用lpc2106.inc文件,只能引用lpc2106.h文件, 这是什么原因 且当我的主程序用汇编编写时,不能引用lpc2106.h,用lpc2106.inc则无法加入project,请问汇编器应如何设置 A:不用加2106.inc只要该文件在你的工程文件夹中,就可以直接在汇编程序的开始处加 include
31、 2106.inc. 注意:该文件是汇编文件定义的头文件,定义内部寄存器。第20问: Q:入口点是什么意思 我在使用LPC2106上移植UCOS-II,每次MAKE时总是提示我 Image does not have an entry point,可是我是把光盘的vetctors.s 复制过来的,而且仔细看了看,已经声明了ENTERY,这是怎么回事A:需要在ADS中设置入口。第21问: Q:请教:如何定义不被初始化变量 A:让编译器不知道有这个内存地址即可。 A:如用分散加载文件分配RAM故意预留一部分RAM不分配,用它来存您不需要初始化的东西。或者不调用编译器提供的启动代码,不过这样可能编程
32、会麻烦一些。第22问: Q:我直接通过JTAG口 HYPERLINK / t _blank 下载EasyArm板带的Ext1_test程序到 HYPERLINK t _blank arm中,出现中断向量的告警: interrupt vector is not correct HYPERLINK t _blank arm is not running freely. 果然复位后芯片不能运行。但是我用串口 HYPERLINK / t _blank 下载后芯片能正常工作,中断也行的。 并且我用JTAG仿真的话,芯片能正常工作,中断也行的,唯独JTAG口 HYPERLINK / t _blank 下载
33、不行。 不知道是什么原因 A:仿真器配置中要设置Erase Flash when need.也可以这样试试: 1.可以先打开一个工程在RAM中调试运行; 2.stop程序; 3.使用File-Load Image重新加载Ext1_test生成的*.axf文件。 Q:仿真器配置中我是设置了Erase Flash when need,但照你说的话,那不是在RAM下调试吗 在RAM下调试我是可以的,但是下载后出现interrupt vector data is not correct. 我又看了几篇文章,是不是跟中断向量表的累加和不为零有关系啊 A:是的,是向量表的累加和不为零。 因为如果用ISP下
34、载能运行,说明向量表的累加和已为零,而用JTAG下载不能运行的情况可能是 没有正常下载代码。先在RAM中调试,目的是为了后面正确下载程序到FLASH.第23问: Q:用Scatter怎样将某个函数或文件定位在Flash的某个位置 第24问: Q:我在仿真时遇到这样的提示: Error, Flash is protected by user configation! 怎么写到flash里面呢 A:看配套 HYPERLINK t _blank arm微控制器基础与实战附录一。第25问: Q:我在移植实验中想到了两个问题,如下: 1.Debug和Release以及DebugRel有什么不同,为什么在
35、作2104移植实验时,要用Release 2.在Release中为什么要将RW Base设置为0 x40000040 我将其设置为0 x40003000, 为什么不能工作 A:都只是一个问题,内存空间的使用,因为跑OS要比较大的内存空间,所以要腾出点地方。第26问: Q:请问没有MMU的 HYPERLINK t _blank arm芯片是否支持使用malloc()函数动态分配内存 A:是否支持malloc()函数与芯片没有多大关系,主要与编译器有关。 Q:再问:如果没有操作系统支持呢 A:也支持。第27问: Q:在I2C实验程序中,我想查看数据缓冲区DataBuf的值,怎么查看 A:watch
36、窗口或鼠标停留在要查看的变量名上。 Q:我查询的是写入DataBuf缓冲区的值,鼠标在上面根本就不会出现他的值,即使在watch中加入, 结果也是name not found. A:变量被优化,调试时可以把该变量定义为全局变量查看。第28问: Q:仿真软件和2104开发板连接不上 DBE Warning 00041: !An unspecified Debug Toolbox call failed 电源和开发板都连好,错误和没接开发板一样,驱动也安装了,安装时按确定键时,软件很长时间才有如上反应,请帮忙 A:1.并口是否正常 2.在其它操作系统(如98)下或其它台式PC下试试。第29问: Q
37、:如何生成32位hex文件 我在Release Setting- HYPERLINK t _blank arm fromELF-Output Format中设置为Intel 32bit HEX,可是好像没有生成hex文件 A:试试这种方法: Target-Target Setting- ost Link中选择 HYPERLINK t _blank arm fromELF加上你上面设的应该不成问题。第30问: Q:请问关于settings中r0 base rw base的意思 A:ro:read only,rw:read and write.第31问: Q:编译成功后的信息第一行,code,R0
38、 data,RW data,ZI data,debug分别代表什么 A:R0 只读段,即程序代码空间; RW 可读/写段,即数据变量空间; ZI 清零变量段,即需要清零初始化的数据变量空间。第32问: Q:如何在ADS里面看任务执行的一些情况 比如堆栈。 A:多任务环境下的堆栈,内存等信息需要调试软件的支持才可以实现。 ucos下有一个统计功能的模块可以间接实现部分功能。第33问: Q:请问向flash烧数据时出现:exceeds flash limitation 请予赐教! A:要写入的flash地址超过了范围。如果不是代码太大的问题,可以检查scf文件是否正确。第34问: Q:在LPC22
39、14之类的芯片中如何实现数组的绝对地址定位,比如51的_at_的用法。 A:*(char*)0 x40000300)类似访问 Q:谢谢,但这样做就无须定义数组变量,访问也不便,还有高招吗 A:可以使用分散加载。第35问: Q:请问 ADS编译错误L6221E:Execution region ER_RO overlays with Execution region ER_ZI 该如何解决 A:请用我们网站上的工程模板试一试,最大的可能是因为你的RELEASE或者DEBUG选项里面没有正确设置,按照参考 HYPERLINK t _blank arm微控制器基础与实战上面的设置,是不会有这个问题的。第36问: Q:请教一下:将程序写入flash,再用从JTAG方式调试写入之后再复位程序没什么反映。 看了很多以前的帖子,说memmap寄存器要为1,我用的是一个很简单的控制led的例子,改动了参数之后写入flash的。在这个程序的vectors中找不到关于memmap寄存器操作的部分啊,这是怎么回事,该怎么办呢 A: HYPERLINK t _blank arm微控制器基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八项规定手写承诺书范本
- 手足口病防控培训课件
- 2025-2030全球等离子处理设备行业调研及趋势分析报告
- 2025-2030全球医用无纺布电极片行业调研及趋势分析报告
- 2025-2030全球锂电池用隔膜行业调研及趋势分析报告
- 2025年全球及中国发泡奶精行业头部企业市场占有率及排名调研报告
- 2025年全球及中国油炸方便面生产线行业头部企业市场占有率及排名调研报告
- 2025年全球及中国超薄壁PET热缩管行业头部企业市场占有率及排名调研报告
- 2025-2030全球耐高温耐火绝缘砖行业调研及趋势分析报告
- 2025-2030全球卫星锂离子电池行业调研及趋势分析报告
- 房地产调控政策解读
- 五年级数学(小数乘法)计算题专项练习及答案
- 产前诊断室护理工作总结
- 2024-2025学年八年级数学人教版上册寒假作业(综合复习能力提升篇)(含答案)
- 《AP内容介绍》课件
- 医生定期考核简易程序述职报告范文(10篇)
- 市政工程人员绩效考核制度
- 公园景区安全生产
- 安全创新创效
- 《中国糖尿病防治指南(2024版)》更新要点解读
- 初级创伤救治课件
评论
0/150
提交评论