ARMSYS2440系列产品FAQ(常见问题快速回答)

发 布 时 间 : 2008-11-19 来 源 : 立宇泰论坛 作 者 : 立宇泰电子 浏 览 :

请到立宇泰电子论坛中查看最新的FAQ(常见问题快速回答)!

点击下面的链接>>

http://www.hzlitai.com.cn/bbs/forumdisplay.php?fid=11

最新问题解答:

问:2440可以修改为128M SDRAM和1GB的Nandflash吗?

答:完全可以,立宇泰提供这种方式的配置。请联系我们。

问:hwclock命令输入后出现RTC: No such file or directory错误信息,如何解决?

答:出现这个错误的原因是RTC未编译到内核中。进入内核的make menuconfig, 选中<*>Character devices-->S3C2440 Real Time Clock,然后重新编译内核,就会找到RTC设备了。(2008-07-29)

问:需要route,netstat,ifconfig网络工具标准命令支持(非busybox精简命令)。

答:请联系技术支持索取。(2008-07-14)

问:WINCE5.0中IIC驱动读取数据时会超时,如何解决?

答:请联系技术支持索要更新的IIC驱动代码。(2008-07-07)

问:应该如何编写WINCE5.0下摄像头应用程序?有参考的例程吗?

答:ARMSYS2440随盘提供的“WINCE应用程序实例”加入了摄像头应用程序,cameratestV1.2。

具备了预览显示和图像抓取(保存为BMP)两项功能。

老用户请来信索取。

用cameratest程序抓拍的图片:

 

此主题相关图片如下:

 

 

问:如何修改使UART2在WINCE5.0下可用?

答:修改两处:

1)HKEY_LOCAL_MACHINE\Comm\Irsir1\Parms]

"Port"=dword:4 ;设备编号

; 0 = Use external dongle, 1 = Use internal IR

"IntIR"=dword:0 ;原为1,修改为0

2)去掉SYSGEN_IRDA组件。位于Communication Services and Networking->Networking-Personal Area Network->IrDA。

3)重新Sysgen工程。

注意:UART2的设备名为COM4。

问:CPLD对CS8900实现了怎样的逻辑?

答:

此主题相关图片如下:

 

 

 

问:如何使DEBUGMSG函数输出打印信息?

答: WINCE的驱动开发中,我们一般将工程编译为release模式。如果编译为debug模式,编译结果(NK)将会非常大,超过代码中对NK的限制范围。

而且有的时候我们只需要了解个别设备驱动的调试信息,并不需要将整个工程编译为debug模式。

在这种情况下可以用这样的方法,在驱动文件的头部加上:

#undef DEBUGMSG

#define DEBUGMSG(x,s) NKDbgPrintfW s

这样这个驱动文件里的所有调试信息都会打印出来,并且不理会DebugZone的设置。

问:有没有基于ARMSYS2440应用GPIO的应用实例?

答:这里有WINCE5.0下的实例,包括驱动程序和应用程序实例,

请到这里下载:http://www.hzlitai.com.cn/bbs/dispbbs.asp?BoardID=11&ID=9815

问:使用linux2.6,在做模块装载(insmod)的时候总失败,如下示出错信息:

==============================================

[@lyt /mnt]# insmod hello.ko

Using hello.ko

insmod: Not configured to support old kernels

==============================================

其中hello.ko是在随开发板提供的2.6.15源码内核树下编译所得。

答:出现这个问题是由于目前采用的根文件系统,其中insmod(busybox)及其运行共享库仍旧是采用cross-2.95.3编译产生的;

而hello.ko模块是采用更新的3.4.3版本的编译器编译。解决的方法是用户可以自行用高版本编译器制作自己的根文件系统。

我们也会在近期推出新版本的根文件系统

问:YAFFS文件系统不能启动?Writerootfs擦除阶段出现很多坏页信息?请使用下列方法检查你的Nandflash的坏块情况:

答:用u-boot下擦除工具:

nandE 80 0x3E00000

这样就把80块以后的空间全部擦除了,nandE命令不检测坏块,直接通过擦除是否成功来判断是否有坏块,并报告块号。

SMDK2440 # nandE 80 0x3EC0000

StartBlock 128 (0x80) : Size 65798144 (0x3ec0000)

Total Erase Blocks 4016 (0xfb0)

[ERASE_ERROR:block#=159]

[Program error is occurred but ignored]

[block #159 is marked as a bad block]

之后再进行Writerootfs就能够成功更新YAFFS文件系统了,并且有坏块也不会有问题(无论U0B还是U0C的芯片)。

以上内容在2008-04-23的uboot和zImage下测试成功。

问:Linux下如何保存设置的系统时间?

答:分以下步骤进行:

(1)通过开发板控制台设置开发板的当前系统时间:

date [MMDDhhmm[[CC]YY][.ss]]

例如:

date 010410462008

(2)将系统时间写入RTC:

hwclock -w

读出检验一下,写入是否正确:

hwclock -r

(3)修改开发板根文件系统中的/etc/init.d/rcS文件,

添加一行:

hwclock -s

用于在系统启动时从RTC读出日期时间并设置到系统时间。

(4)重新启动开发板,验证系统时间是否争取。

问:ARMSYS2440的WINCE是否支持USB下载?

答:完全可以支持。前提是必须使用DNW v0.50L版本配合!使用它的[USB Port]->[UBOOT]选项,然后选中你要下载的nk.bin即可,速度非常快。相关连接:

http://www.hzlitai.com.cn/bbs/dispbbs.asp?BoardID=11&ID=6338&replyID=&skin=1

问:ARMSYS2440下运行WINCE5.0,如何旋转屏幕?

答:只要修改注册表项:

; Settings to rotate the screen by 0 degrees clockwise upon download

[HKEY_LOCAL_MACHINE\System\GDI\Rotation]

"Angle"=dword:0

将0改为90,180,270都可以(注意注册表里要写成十六进制)。

=======================================================================

由于2440bsp包中的串口驱动定义了硬件流控制,导致COM1的驱动只能接受不能发送的问题解决如下:

1、打开SMDK2440\INC\S2440.h文件,找到“#define USE_AFC 1”,把1改为0

2、重新编译生成NK.bin,烧录到板子上即可。

(2007-07-28)

=======================================================================

问:ARMSYS2440开发板核心板的功耗有多大? 答:ARMSYS2440在25℃环境温度,单板无外接设备的情况下测试的功耗如下:

测量项目峰值电流平均电流静态电流

ARMSYS2440-CORE核心板1.3V180mA100mA20mA

3.3V150mA50-80mA10mA

问:ARMSYS2440开发板的功耗有多大?

答:+9V/2A供电,工作状态峰值电流(平均工作电流):

Linux WinCE

无外部设备仅连接串口 350mA(230mA) 300mA(170mA)

连接LCD/触摸屏和串口 460mA(300mA) 360mA (250mA)

问:摄像头采集到播放能够达到的帧率是多少? 答:320X240图像采样率可达到30fps;

640X480图像采样率可达到15fps。

问:如何支持USB鼠标?

答:在载入缺省内核配置下,进一步选中USB Support-->HID Input Layer support项目。

问:如何支持USB键盘?

答:在载入缺省内核配置下,进一步选中USB Support-->HID Input Layer support项目;

选中Console drivers-->SMDK24x0 SPI Keyboard Support项目。

问:uboot源码编译时出现路径错误,如何解决? 答:请这样解决, 运行:

make distclean //清除所有旧的路径信息

make smdk2440_config //配置

make //编译并产生二进制文件

问:针对板上Lattice的cpld进行开发的工具在哪里下载? 答:Lattice公司提供了免费下载(但需要注册)的ispLEVER Starter开发软件,用户可以到这里按步骤下载:

http://www.latticesemi.com/products/designsoftware/isplever/ispleverstarter.cfm

不断添加与更新中......

问:Linux下如何进行摄像头测试(基于cramfs文件系统)?

(1)在uboot下设置启动参数(注意红色字体):

setenv linux_arg noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttyS0 mem=49M

(2)在linux下进行预览显示测试:

rgb_4pXX 屏的宽度 屏的高度 16 0 0

这里的xx根据你的屏分辨率的不同而不同,如果是240x320的屏(L35T23),不需要输入xx,直接用rgb_4p;

如果是320x240的屏(L35T32),采用rgb_4p32;

如果是640x480的屏(LXXT64),采用rgb_4p64;

如果是800x480的屏(L70T84),采用rgb_4p84;

(3)在linux下进行图像拍摄(保存为jpg图片)测试:

在tmp目录下创建camera目录,

mkdir /tmp/camera

将rgb_4p_jpg拷贝到camera目录下:

cp /bin/rgb_4p_jpg /tmp/camera/

然后运行:

./rgb_4p_jpg 240 320 16 2 0

运行结束后将在/tmp/camera 目录下产生连续拍摄的2幅jpg图片。

问:如何使我的ARMSYS2440套餐支持WINCE下的camera测试? 答:除套餐3之外,其它套餐请按照如下方法修改:

打开BSP包(SMDK2440A),找到drivers下的camera目录,

修改camera.cpp文件中的Display_Cam_Image函数,找到这一句:

memcpy((void *)(IMAGE_FRAMEBUFFER_UA_BASE+ (240*pos_y + pos_x) + y*240*2),(void *)buffer_rgb,(PREVIEW_X)*2);

将其中的红字部分修改为您自己的LCD屏的水平像素值(例如320,或640...)。

重新编译产生nk.bin下载到板子上。再运行cameratest.exe,就可以看到正确的图像了。

不断添加与更新中......

问:如何在WINCE5.0下修改注册表永久保存?

请看该贴:http://www.hzlitai.com.cn/bbs/dispbbs.asp?boardID=11&ID=1206&page=1



上一篇:关于WINCE下在Flash中永久保存注册表 下一篇:一步一步基于ADS1.2进行开发(ARM9)