主题 : tiny6410裸机的lcd显示屏的代码,7寸的屏幕,型号s70 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 23813
精华: 0
发帖: 22
金钱: 110 两
威望: 22 点
贡献值: 0 点
综合积分: 44 分
注册时间: 2010-06-27
最后登录: 2017-03-23
楼主  发表于: 2014-07-30 17:15

 tiny6410裸机的lcd显示屏的代码,7寸的屏幕,型号s70

求tiny6410裸机的lcd显示屏的代码,7寸的屏幕,型号s70;
需要一些基础配置的代码就可以!


都没用人过来贡献思想,自己已经搞定了;
直接编译代码,下载到nand flash;


下一步,在S70上显示图片:
     求制作图片显示图的代码的步骤,显示图片的代码还没用搞定;
[ 此帖被天堂46800在2014-08-13 11:13重新编辑 ]
附件: 22.1lcd_s70.zip (102 K) 下载次数:81
级别: 新手上路
UID: 47527
精华: 0
发帖: 14
金钱: 70 两
威望: 14 点
贡献值: 0 点
综合积分: 28 分
注册时间: 2011-05-23
最后登录: 2014-11-03
1楼  发表于: 2014-08-05 20:30

 回 楼主(天堂46800) 的帖子

#define INTERLACE_F 0 // 0:progressive, 1:interlace
#define VIDOUT        0 // 00:RGB I/F
#define PNRMODE        0 // 00 RGB p00 = RGB Parallel format (RGB)
/*
   01 = RGB Parallel format (BGR)
   10 = Serial Format (R->G->B)
   11 = Serial Format (B->G->R)
*/
#define CLKVALUP    0 // select clkval_f update timing control
#define CLKVAL_F    3 // 33 = 133/N+1 N=3
#define VCLKFREE    0 // Normal mode
#define CLKDIR        1 // Divided by clkval_f
#define CLKSEL_F    0 // hclk
#define ENVID        1
#define ENVID_F        1

#define IVCLK        0 // Data be latched at the falling edge of DCLK.
#define IHSYNC        1 // inverted
#define IVSYNC        1 // inverted
#define IVDEN        0 // normal

#define HFPD        210    //
#define HSPW        10 // HS pulse width(DCLK)
#define HBPD        46-HSPW    // HS BLANKING                

#define VFPD        22
#define VSPW        10
#define VBPD        23 - VSPW

#define ROW            480
#define COLUMN        800        

#define LEFTTOPX_F    0
#define LEFTTOPY_F    0
#define RIGHTBOTX_F    (COLUMN-1)
#define RIGHTBOTY_F    (ROW-1)
#define FRAMEBUGGER    0x58000000

int LcdInit(void)
{
    // gpio Init
    setValAll(GPICON, 0xaaaaaaaa);
    setValAll(GPJCON, 0xaaaaaa);

    // config display controller
    setValnbit(MIFPCON, 3, 1, 0); // normal mode
    setValnbit(SPCON, 0, 2, 1); // RGB I/F Style
    setValnbit(VIDCON0, 29, 1, 0); // 逐行扫描
    setValnbit(VIDCON0, 26, 2, 0); // rgb i/f
    setValnbit(VIDCON0, 17, 2, 0); // RGB Parallel format(RGB)
    setValnbit(VIDCON0, 16, 1, CLKVALUP); // always
    setValnbit(VIDCON0, 6, 8, CLKVAL_F); // 133/(1+1) = 66
    setValnbit(VIDCON0, 4, 1, CLKDIR);
    setValnbit(VIDCON0, 2, 2, CLKSEL_F);
    setValnbit(VIDCON0, 1, 1, ENVID);
    setValnbit(VIDCON0, 0, 1, ENVID_F);

    setValnbit(VIDCON1, 7, 1, IVCLK);
    setValnbit(VIDCON1, 6, 1, IHSYNC);
    setValnbit(VIDCON1, 5, 1, IVSYNC);
    setValnbit(VIDCON1, 4, 1, IVDEN);

    setValnbit(VIDTCON0, 16, 8, VBPD);
    setValnbit(VIDTCON0, 8, 8, VFPD);
    setValnbit(VIDTCON0, 0, 8, VSPW);

    setValnbit(VIDTCON1, 16, 8, HBPD);
    setValnbit(VIDTCON1, 8, 8, HFPD);
    setValnbit(VIDTCON1, 0, 8, HSPW);

    setValnbit(VIDTCON2, 0, 11, COLUMN - 1);
    setValnbit(VIDTCON2, 11, 11, ROW - 1);

    setValnbit(WINCON0, 2, 4, 0xb); // 24BPP
    setValnbit(WINCON0, 0, 1, 1); // enable video control signal

    setValnbit(VIDOSD0A, 0, 11, LEFTTOPY_F);
    setValnbit(VIDOSD0A, 11, 11, LEFTTOPX_F);
    setValnbit(VIDOSD0B, 0, 11, RIGHTBOTY_F);
    setValnbit(VIDOSD0B, 11, 11, RIGHTBOTX_F);
    setValnbit(VIDOSD0C, 0, 24, ROW*COLUMN);

    setValnbit(VIDW00ADD0B0, 0, 24, FRAMEBUGGER);
    setValnbit(VIDW00ADD1B0, 0, 24, ROW*COLUMN*4);
    setValnbit(GPECON, 0, 4, 1); // output
    setValnbit(GPEDAT, 0, 1, 1); // HIGHT
    setValnbit(GPFCON, 30, 2, 1);
    setValnbit(GPFDAT, 15, 1, 1);
级别: 新手上路
UID: 23813
精华: 0
发帖: 22
金钱: 110 两
威望: 22 点
贡献值: 0 点
综合积分: 44 分
注册时间: 2010-06-27
最后登录: 2017-03-23
2楼  发表于: 2014-08-06 16:02

 回 1楼(独孤求胜) 的帖子

太抽象了,能不能发个附件呢,有没有显示图片的代码