㈠ ADS编译器问题
一个ARM程序包含3部分:RO,RW和ZI
RO是程序中的指令和常量
RW是程序中的已初始化变量
ZI是程序中的未初始化的变量
由以上3点说明可以理解为:
RO就是readonly,
RW就是read/write,
ZI就是zero
ARM映像文件的组成
所谓ARM映像文件就是指烧录到ROM中的bin文件,也成为image文件。以下用Image文件来称呼它。
Image文件包含了RO和RW数据。
㈡ 编译错误怎么解决
如果使用C的编译器,应该是能编译通过 因为C编译器如果没有写明函数的返回值的话默认的函数返回值是int 如果使用C++的编译器就编译不过了 因为C++比C更严格了,不允许默认的int返回值
㈢ ADS1.2在win7(X86)上安装编译出错
好像库都找不到了。
问题就出在Program Files (x86)那个括号上。ADS是1997年的产品,对本地化支持不好。
这种情况只会出现在WIN7 X64的系统下,x32下没有Program Files (x86)的目录,不会有这样的问题。
所以ADS的所有访问的路径,不能有文中或特殊符号。
解决方法:你把ADS安装在C根目录下就可以。比如:C:\ARM\ADSv1_2。
还有运行ADS时需要以管理员身份启动。
㈣ 在ADS下编程遇到的问题,高手帮小弟解决下
你应该把定义放到.c文件去,这里.h文件全部使用声明,最好带上extern。
比如:
/*udisk.c file*/
#include "udisk.h"
SETUPPKG usbDevSetup;
unsigned char usbBuf[USB_BUF_SIZE];
short usbTimer = 0;
s3c2410_ohci_TD genTd[4];
s3c2410_ohci_ED controlEd;
s3c2410_ohci_ED bulkEd[2];
//分配HCCA空间
s3c2410_ohci_HCCA hcca;
USB_DEVICE_INFO usbDevInfo;
ENUM_DEV enumDev;
USB_CMD_STATE usbCmdState;
DEVICE_INFO usbDeviceInfo;
//ohci寄存器
struct ohci_regs* pUHP = (ohci_regs* )REGS_BASSADDRESS;
UFI_CMD_RUNNING ufiCmdRunning;
/*udisk.h*/
#ifndef __UDISK_H_ZW__
#define __UDISK_H_ZW__
extern SETUPPKG usbDevSetup;
extern unsigned char usbBuf[USB_BUF_SIZE];
extern short usbTimer;
extern s3c2410_ohci_TD genTd[4];
extern s3c2410_ohci_ED controlEd;
extern s3c2410_ohci_ED bulkEd[2];
//分配HCCA空间
extern s3c2410_ohci_HCCA hcca;
extern USB_DEVICE_INFO usbDevInfo;
extern ENUM_DEV enumDev;
extern USB_CMD_STATE usbCmdState;
extern DEVICE_INFO usbDeviceInfo;
//ohci寄存器
extern struct ohci_regs* pUHP;
extern UFI_CMD_RUNNING ufiCmdRunning;
#endif
注意:头文件中不需要对变量赋初值,实现文件再赋初值
㈤ ADS1.2在win7 64位系统中调试程序,编译能够通过,链接的时候就会出现如图错误,求高手指导解决!!!!
问题就出在Program Files (x86)那个括号上。ADS是1997年的产品,对本地化支持不好。
这种情况只会出现在WIN7 X64的系统下,x32下没有Program Files (x86)的目录,不会有这样的问题。
所以ADS的所有访问的路径,不能有文中或特殊符号。
解决方法:你把ADS安装在C根目录下就可以。比如:C:ARMADSv1_2。
还有运行ADS时需要以管理员身份启动。
㈥ 我安装的win7专业版 64位操作系统,使用ADS1.2编译报错,是什么原因呢急!急!急!
装个虚拟机吧
㈦ unkown software exception 在虚拟机上用ADS编译时弹出的~帮帮忙~重谢啦~~
unknown software exception (0x*00000**),位置为0x0***0***
这个问题大多是杀毒残留,但也有可能是你卸载某个软件不正确留下的注册表残留。杀毒后,病毒被删除,但启动项里相关加载设置还在,解决方法就是以下方法,如果找不到那个加载失败的启动项就可能是做了伪装,具体伪装到哪个启动项需要分析系统环境。启动项并不一定指向特定的dll名字,提示中的加载失败的项也可能只是启动项其中一个需要调用的文件,而这个文件可能被相关软件程序卸载的时候一并删除了,所以要了解你所有启动项的来路,这样才能找出可疑的启动项来删除,从而解决加载失败的问题。正常的启动项网络都可以搜索到其解释。
1、开始菜单→运行→输入msconfig回车
在里边的启动栏里把可疑的.dll前面的勾去掉就行了。
2、开始→运行→msconfig→启动→把加载项可疑xx.dll的勾去掉→ 重启电脑一般就可以解决了,如果还弹出来再看下面:
3、开始→运行→regedit→ 在下面的位置删除相应键值:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
4、注册表修改法:点→开始→运行→输入→regedit→在
“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\”中,右边窗口找到残留的程序名删除。或者打开注册表编辑器→在编辑→查找中→输入出错文件名→把搜到的删除→按F3键→搜索下一个→直到删完所有的为止。
如果以上方式无法处理好,看下面:
完全注册dll:
打开“运行”输入→cmd→回车
然后把下面这行字符复制到黑色cmd框里面去回车等待dll文件全部注册完成就关闭可以了,为防止输入错误可以复制这条指令,然后在命令提示符后击鼠标右键→粘贴→回车,耐心等待,直到屏幕滚动停止。
(下面是要运行的代码):
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1
完成后重新启动机器。
㈧ ADS调试问题
帮不了你,不好意思,虽说我不知道怎么用,但我还是建议你,器材这东西,还是找个会的人告诉你,最好能手把手教你,这样会好些,实在不成就去电子市场问问,或许那里会有人会。要是还不成,就去北京革新公司问问。
祝你好运!朋友!
㈨ 用ADS编译arm9程序,总是报这个错误,怎么回事呀 main程序里加了#define GLOBAL_CLK 1还是不行~~~
你虽然定义了GLOBAL_CLK,但如果定义在包含option.h之后,那对option来说还是没有定义,另外,你定义的时候,GLOBAL_CLK后面为什么要有个1啊。你这样试试:
#define GLOBAL_CLK
#include "def.h"
#include "option.h"
#include "2440addr.h"
#include "2440lib.h"
#include "2440slib.h"
#include <stdarg.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
extern U32 PCLK;
㈩ 求救啊!!!ARM9,ads编译出错信息undefined symbol PLCK(referrred from 2440init.o),这是怎么回事啊!
我也遇到过,我想你是用复制旧工程的方式新建新工程时出错的吧!在ADS菜单栏上点击Project->remove object code ,然后再弹出的对话框中,点击确定,最后再编译一下,你就会发现错误没有了!原因我想你现在也应该明白了吧,新建工程下的一些配置,还是旧工程的路径下的配置,与你现在工程的路径什么的配置不符,所以出错,你移除之前的目标文件之后,再编译一下,就生成新的目标文件了,然后就OK了!