6410-linux嵌入式平台搭建

转载说明:此文提到了s3cfb.h

原文地址: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"下方添加:

  1. #include <asm/arch/gpio.h>  
  2. #include <linux/gpio.h>  
  3. #include <asm/uaccess.h>  
  4. #include <plat/gpio-cfg.h>  
  5. #include <plat/regs-gpio.h>  
  6.   
  7. #define GPIO_LCD_PWR_CTRL      S3C64XX_GPF(15)  
  8. #define LCD_PWR_CTRL_ON()      s3c_gpio_setpin(GPIO_LCD_PWR_CTRL, 0)  
  9. #define LCD_PWR_CTRL_OFF()     s3c_gpio_setpin(GPIO_LCD_PWR_CTRL, 1)  
②       void s3cfb_stop_lcd(void) 函数处
  1. writel(tmp & ~(S3C_VIDCON0_ENVID_ENABLE | S3C_VIDCON0_ENVID_F_ENABLE), S3C_VIDCON0);  
下方添加:
  1. LCD_PWR_CTRL_OFF();  

③      void s3cfb_start_lcd(void)函数处

  1. writel(tmp | S3C_VIDCON0_ENVID_ENABLE | S3C_VIDCON0_ENVID_F_ENABLE, S3C_VIDCON0);  
下方添加:
  1. printk("--->>Look--->>%s--->>LCD_PWR_ON !\n", __FUNCTION__);  
  2. LCD_PWR_CTRL_ON();  

④      static int __init s3cfb_probe(struct platform_device *pdev)函数处

  1. goto release_mem;}  
下方添加:
  1. s3c_gpio_cfgpin(S3C64XX_GPF(15), S3C64XX_GPF_OUTPUT(15));  
  2. gpio_direction_output(S3C64XX_GPF(15), 1);  
  3. gpio_set_value(S3C64XX_GPF(15), 1);  
  4. LCD_PWR_CTRL_OFF();  
  5. printk("--->>This--->>%s--->>LCD_PWR_Ctrl__Init !\n", __FUNCTION__);  

⑤      static int __init s3cfb_probe(struct platform_device *pdev) 函数处

  1. s3cfb_set_backlight_level(S3CFB_DEFAULT_BACKLIGHT_LEVEL);  
下方添加:
  1. s3c_gpio_cfgpin(S3C64XX_GPF(15), S3C64XX_GPF_OUTPUT(15));  
  2. gpio_direction_output(S3C64XX_GPF(15), 1);  
  3. gpio_set_value(S3C64XX_GPF(15), 0);  
  4. LCD_PWR_CTRL_ON();  
  5. 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处修改

  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”处修改为

[html]  view plain copy print ?
  1. #qtopia  
  2. echo “starting software *** ….”  
  3. start_software.sh  


不能直接将外部写好的rcS文件cp到本目录覆盖源文件,即使设置了权限,仍可能导致操作系统识别不了,提示找不到rcS文件

②      编写start_software.sh脚本。需要到执行文件当前目录才能执行的,cd进入当前目录。

③      Qt库的预先导入:默认情况下,开机启动时是尚未导入QT库的,而操作系统启动之后才导入。不预先导入Qt库会报No such file错。在start_software.sh执行文件启动之前加入如下代码:

[html]  view plain copy print ?
  1. export QTDIR=/usr/local/QtEmbedded-4.5.2  
  2. export QPEDIR=/usr/local/QtEmbedded-4.5.2  
  3. export PATH=$QTDIR/bin:$PATH               
  4. export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH  
  5. export TSLIB_TSDEVICE=/dev/input/event1                            
  6. export TSLIB_CONFFILE=/usr/local/etc/ts.conf                       
  7. export TSLIB_PLUGINDIR=/usr/local/lib/ts                           
  8. export TSLIB_CALIBFILE=/etc/pointercal                             
  9. export QWS_MOUSE_PROTO="TSLIB:/dev/input/event1"  
  10. export QWS_SIZE='480X272'                         
  11. # USB:/dev/input/mice"                            
  12. export QWS_KEYBOARD=TTY:/dev/tty1  
  13. export LD_LIBRARY_PATH=/usr/local/QtEmbedded-4.5.2/lib:$LD_LIBRARY_PATH  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值