请选择 进入手机版 | 继续访问电脑版
搜索

1

主题

2

帖子

20

积分

新手上路

Rank: 1

积分
20
发表于 2018-4-11 17:32:31 10942 浏览 2 回复

求助UBOOT驱动4.3吋LCD

除了背光电路pwm我直接输出高电位,其它设置代码如下 (16 BPP (5:6:5) display types)
请问是哪里设错还是ˋ有没设定到的
  1. #define RGB565(r, g, b)  (((r) << 11) | ((g) << 5) | (b) )
  2. void clean_screen(unsigned long *fb, int w, int h)
  3. {
  4.         int i, j;
  5.         for (i = 0; i < h; i ++) {
  6.                 for (j = 0; j < w; j ++) {
  7.                         fb[i * w + j] = RGB565(0, 255, 0);
  8.                 }               
  9.         }
  10. }

  11. static int do_lcd_on(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  12. {
  13.         unsigned long fb = 0x53000000;

  14.         clean_screen(fb, 480, 272);
  15.         GPC0CON = 0x00000100; //MD_RSTN
  16.         GPL0CON = 0x00010000; //CHG_EN
  17.         GPL1CON = 0x00000010; //CAM5M_RST
  18.         GPL0DAT |=  (0x1 << 4); //CHG_EN on
  19.         GPL1DAT |=  (0x0 << 1); //CAM5M_RST on
  20.        
  21.         GPF0CON        = 0x22222222;       
  22.         GPF1CON = 0x22222222;
  23.         GPF2CON        = 0x22222222;
  24.     GPF3CON = 0x00002222;

  25.         GPF0DRV = 0x0000FFFF;
  26.         GPF1DRV = 0x0000FFFF;
  27.         GPF2DRV = 0x0000FFFF;
  28.         GPF3DRV = 0x0000000F;
  29.         //power
  30.        
  31.         //Blacklight
  32.         GPD0CON  &= ~(0xf << 4); //XPWMTOUT1
  33.         GPD0CON  |=  (0x1 << 4);
  34.         GPD0DAT  &=  ~(0x1 << 1); //XPWMTOUT1 on

  35.         //system register
  36.         LCDBLK_CFG = 2;       
  37.         LCDBLK_CFG2 = 1;
  38.        
  39.         //clock configure
  40.         CLK_SRC_CAM0 |= 0x00001111;
  41.         CLK_DIV_CAM0 |= 0x00002222;
  42.         CLK_GATE_IP_CAM |= 0xF;
  43.         CLK_SRC_LCD0 |=  1; //XusbXTIis Source Clk == 24MHz
  44.         CLK_DIV_LCD  |=  0; //SCLK_FIMD0 == SXusbXTI == 24MHz
  45.         CLK_GATE_IP_LCD |= 1; //

  46.         VIDCON0 = (2 << 6); //24/(2+1)=8MHz
  47.         /* IVDEN  =Normal
  48.            IVSYNC =Inverted
  49.            IHSYNC =Inverted
  50.            IVCLK  =falling edge */
  51.         VIDCON1 |=  (0 << 4) | (1 << 5) | ( 1 << 6) | (0 << 7) | (0 << 9);       
  52.         VIDCON2 = 0;

  53.         VIDTCON0 = 9  | (1 << 8) | (1 << 16);
  54.         VIDTCON1 = 40 | (1 << 8) | (1 << 16);       
  55.         VIDTCON2 = 479 | (271 << 11);

  56.        
  57.         //----------------------------        
  58.         WINCON0 = 1 | (0x5 << 2);       

  59.         SHADOWCON = 0x1;
  60.        
  61. //        WINCHMAP2
  62.        
  63.         VIDOSD0A = 0;
  64.         VIDOSD0B = 135 | (479 << 11);
  65.         VIDOSD0C = 136 * 240;

  66.         //windows 0's  buffer 0
  67.         VIDW00ADD0B0 = fb;       
  68.         VIDW00ADD1B0 = fb + 480 * 272 * 4;
  69.         VIDW00ADD2  = 480;

  70.         //Video output enable
  71.         VIDCON0 |= 1 | (1 << 1);
  72.         GPC0DAT |=  (1 << 2); //MD_RSTN on

  73.         return 0;
  74. }
复制代码




回复

使用道具 举报

1

主题

2

帖子

20

积分

新手上路

Rank: 1

积分
20
 楼主| 发表于 2018-4-13 19:56:54
原来就只差背光打开就行了
背光要用PWM不能只给高电位
回复 点赞

使用道具 举报

151

主题

508

帖子

3567

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3567
发表于 2018-4-16 13:17:03
有pwm的例程的
回复 点赞

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

登录或注册

官方客服

QQ:2551456065

官方QQ群

195631883

扫一扫关注迅为公众号

群号652692981

 
快速回复 返回顶部 返回列表