文章链接: http://blog.csdn.net/lonelyrains/article/details/6700827
1、 烧录sd卡,4KB空间,u-boot_mmc.bin
条件:IROM_Fusing_Tool工具
注意:
① win7不支持IROM_Fusing_Tool,xp可以
② 无论是否烧录,sd卡的使用空间不会增加,总是4KB
2、 从sd卡启动,格式化nandflash
条件:dnw工具
注意:
① 打开dnw,配置串口,连接串口,长按空格再上电
② 拨码开关:1/2/3脚全拨向外
③ 格式化时,有询问是否格式话时需要输入Y,但是不会被打印在屏上,此时直接点回车,不然可能会因输入错误报错
3、 USB下载引导程序u-boot.bin文件
条件:dnw在windows下的USB驱动
注意:连接USB线,装载驱动,直到窗口标题栏显示USB:OK
4、 USB下载内核映像zImage文件
5、 USB下载crame文件系统
6、 将qtopia拷贝到sd卡中,从nandflash启动
7、 从sd卡下载qtopia
8、 从内核启动,导入字体文件wenqy.ttf
条件:串口或者网口FTP或者网口telnet+FTP
注意:
① wenqy.ttf是黑体,也可以从网上下载其他的开源字库
② 从内核启动,拨码1/2脚向内,3脚向外
③ 进入字库目录,全删掉,然后将字体拷贝至该目录即可。字体所在的目录为:/usr/local/QtEembedded***/lib/fonts
9、 linux开机画面设置步骤
① 下载三个工具:pngtopnm,pnmquant,pnmtoplainpnm
② 格式转换:
$ pngtopnm linuxlogo.png > linuxlogo.pnm
$ pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
$ pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
③ 将生成的文件替换在内核文件目录drivers/video/logo/下的开机文件。本版本的内核开机画面文件名为linux_logo_clut224.ppm
④ 重新编译内核(如果有其他修改,可暂时不编译,等一次修改完再编译,比如背光设置部分)
10、 目前版本的6410开发板背光设置
说明:drivers/video/Samsung/s3cfb.c文件,共有5处修改
① #include "s3cfb.h"下方添加:
#include <asm/arch/gpio.h> #include <linux/gpio.h> #include <asm/uaccess.h> #include <plat/gpio-cfg.h> #include <plat/regs-gpio.h> #define GPIO_LCD_PWR_CTRL S3C64XX_GPF(15) #define LCD_PWR_CTRL_ON() s3c_gpio_setpin(GPIO_LCD_PWR_CTRL, 0) #define LCD_PWR_CTRL_OFF() s3c_gpio_setpin(GPIO_LCD_PWR_CTRL, 1)② void s3cfb_stop_lcd(void) 函数处
writel(tmp & ~(S3C_VIDCON0_ENVID_ENABLE | S3C_VIDCON0_ENVID_F_ENABLE), S3C_VIDCON0);下方添加:
LCD_PWR_CTRL_OFF();
③ void s3cfb_start_lcd(void)函数处
writel(tmp | S3C_VIDCON0_ENVID_ENABLE | S3C_VIDCON0_ENVID_F_ENABLE, S3C_VIDCON0);下方添加:
printk("--->>Look--->>%s--->>LCD_PWR_ON !\n", __FUNCTION__); LCD_PWR_CTRL_ON();
④ static int __init s3cfb_probe(struct platform_device *pdev)函数处
goto release_mem;}下方添加:
s3c_gpio_cfgpin(S3C64XX_GPF(15), S3C64XX_GPF_OUTPUT(15)); gpio_direction_output(S3C64XX_GPF(15), 1); gpio_set_value(S3C64XX_GPF(15), 1); LCD_PWR_CTRL_OFF(); printk("--->>This--->>%s--->>LCD_PWR_Ctrl__Init !\n", __FUNCTION__);
⑤ static int __init s3cfb_probe(struct platform_device *pdev) 函数处
s3cfb_set_backlight_level(S3CFB_DEFAULT_BACKLIGHT_LEVEL);下方添加:
s3c_gpio_cfgpin(S3C64XX_GPF(15), S3C64XX_GPF_OUTPUT(15)); gpio_direction_output(S3C64XX_GPF(15), 1); gpio_set_value(S3C64XX_GPF(15), 0); LCD_PWR_CTRL_ON(); printk("--->>This,--->>%s--->>LCD_PWR_Ctrl First ON !\n", __FUNCTION__);
注意:
① 现存的两种版本的内核,0315和0609版本,将上述代码添加至0315版本,编译内核会报错;在0609版本中不会报错
② 背光设置和屏幕偏移部分的代码可以通过对比0315版本和0609版本的drivers/video文件夹的不同找到
11、 目前版本的6410开发板屏幕偏移
说明:drivers/video/Samsung/ s3cfb_video.h文件,共有1处修改
s3cfb_video_parameter_t video_parameter=""的"AT070TN83",/*lcd type or vga type*/ 部分的参数:
8,//40, /* front porch */
4,//48, /* hsync width */
16,//40, /* back porch */
5,//13, /* front porch */
1,//3, /* vsync width*/
7,//29, /* back porch */
注意:目前使用的一组参数是不偏移的参数,注释掉的一组参数是根据目前的屏幕框更改的偏移
12、 程序开机启动的设置
步骤:
① 修改ect/init.d/rcS文件,将”qtopia”处修改为
#qtopia echo “starting software *** ….” start_software.sh
不能直接将外部写好的rcS文件cp到本目录覆盖源文件,即使设置了权限,仍可能导致操作系统识别不了,提示找不到rcS文件
② 编写start_software.sh脚本。需要到执行文件当前目录才能执行的,cd进入当前目录。
③ Qt库的预先导入:默认情况下,开机启动时是尚未导入QT库的,而操作系统启动之后才导入。不预先导入Qt库会报No such file错。在start_software.sh执行文件启动之前加入如下代码:
export QTDIR=/usr/local/QtEmbedded-4.5.2 export QPEDIR=/usr/local/QtEmbedded-4.5.2 export PATH=$QTDIR/bin:$PATH export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH export TSLIB_TSDEVICE=/dev/input/event1 export TSLIB_CONFFILE=/usr/local/etc/ts.conf export TSLIB_PLUGINDIR=/usr/local/lib/ts export TSLIB_CALIBFILE=/etc/pointercal export QWS_MOUSE_PROTO="TSLIB:/dev/input/event1" export QWS_SIZE='480X272' # USB:/dev/input/mice" export QWS_KEYBOARD=TTY:/dev/tty1 export LD_LIBRARY_PATH=/usr/local/QtEmbedded-4.5.2/lib:$LD_LIBRARY_PATH