找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

请教关于51单片机驱动RGB接口屏

查看数: 2941 | 评论数: 13 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-4-3 23:53

正文摘要:

一直想用51单片机驱动RGB接口的屏,自己啃英文时序写的,单片机用STC8H8K64U,屏幕是480*272分辨率的RGB接口屏,网上说用DE模式驱动比较简单,麻烦看下我这个程序时序哪有问题,不考虑刷屏速度,就单纯显示个红色。 ...

回复

ID:883242 发表于 2024-4-7 13:48
mtt661 发表于 2024-4-7 11:19
你好 ,按照手册的说法 这个IO的翻转速度可以达到12MHz,也就是83.3333ns,速度是可以达到的啊,不知道我 ...

如果只是DCLK翻转当然够用,但是你看时序图,DCLK翻转前你要把RGB都设置成正常值,这是51单片机无论如何都做不到的。
ID:517951 发表于 2024-4-7 11:53
mtt661 发表于 2024-4-7 11:22
这个我也知道 所以我就想只显示一个颜色,主要是学习下这个时序。

如果只是显示红色, 可以吧显示屏的R0-7全部接高, B0-7,G0-7接GND. 就关注V,Hsync, Den, CLK的时序就行. 这个需要有示波器.  最好还是用SSD1963来直接驱动,不要用单片机直接点, 没有意义. 如果是想搞清楚时序, 建议用FPGA来做, 这个真不是单片机干的活.
ID:1010435 发表于 2024-4-7 11:22
nearsea 发表于 2024-4-5 14:28
一页缓存需要480*272=130.560K (word),8H8K也就是8K字节,差距甚远,换片子吧

这个我也知道 所以我就想只显示一个颜色,主要是学习下这个时序。
ID:1010435 发表于 2024-4-7 11:19
Hephaestus 发表于 2024-4-6 14:10
DCLK周期最多只能有200ns,用51单片机根本做不到,就别痴心妄想了。

你好 ,按照手册的说法 这个IO的翻转速度可以达到12MHz,也就是83.3333ns,速度是可以达到的啊,不知道我这个算法对不对
ID:883242 发表于 2024-4-6 14:10
DCLK周期最多只能有200ns,用51单片机根本做不到,就别痴心妄想了。
ID:73992 发表于 2024-4-5 23:16
mtt661 发表于 2024-4-5 16:26
你的意思是dclk 0和dclk=1的时间必须一致吗?能不能给个简单的时间控制函数

如果你有设备可以测量上述时钟输出,如果频率够就可以使用。如果频率不够试试嵌入汇编。看看你的方案是否可行。
     不然    dclk可以用pwm输出;如果频率够
  while(1)
   {
      DE电平拉低    时间=tvbp — H BACK PORECH ,
     for   (下面循环270次)
           {
                    nop  ;=H BACK PORECH     ;相当于延时
                    DE=1
                    rgb     引脚抖动 / 取值480次;  可增减
                    DE=0
                    nop   ; =H FRONT PORECH        ;相当于延时
             }
            DE电平拉低    时间=tvfp — H FRONT PORECH,
        }
这是我的大概思路,
ID:1010435 发表于 2024-4-5 16:29
rayin 发表于 2024-4-5 15:28
51单片机驱动RGB接口的4.3寸TFT, r,g,b就需要3x8=24个IO口, pclk引脚需要9Mhz的信号,不适合.
可以用SSD19 ...

你好 我就是这个9m信号和mcu频率算不来,是不是说,不管cpu在干嘛,pclk的高低反转必须在5~12m之间才行?
ID:1010435 发表于 2024-4-5 16:26
lyonkon 发表于 2024-4-5 00:12
我看你没有程序控制时间,
        for(i=0;i

你的意思是dclk 0和dclk=1的时间必须一致吗?能不能给个简单的时间控制函数
ID:1010435 发表于 2024-4-5 16:23
nearsea 发表于 2024-4-5 14:26
51干这活有些困难,需要专门的驱动来做这是,毕竟引脚时间还是缓存都是严重不足的。

我就是不太清楚引脚时间是怎么算的,看手册,io的反转最慢也12m,最快25m,而屏看手册需要9m就够了啊
ID:517951 发表于 2024-4-5 15:28
51单片机驱动RGB接口的4.3寸TFT, r,g,b就需要3x8=24个IO口, pclk引脚需要9Mhz的信号,不适合.
可以用SSD1963来转换MCU16bit到RGB接口, 不仅可以驱动4.3寸480x272,也可以驱动800x480的RGB接口.
也可以用STM32H743来驱动, 此芯片自带RGB接口, 不用转换IC了.
ID:1101997 发表于 2024-4-5 14:28
一页缓存需要480*272=130.560K (word),8H8K也就是8K字节,差距甚远,换片子吧
ID:1101997 发表于 2024-4-5 14:26
51干这活有些困难,需要专门的驱动来做这是,毕竟引脚时间还是缓存都是严重不足的。
ID:73992 发表于 2024-4-5 00:12
我看你没有程序控制时间,
        for(i=0;i<hbp;i++)
                {
                        de=0;
                        rrr=0;
                        ggg=0;
                        bbb=0;
                        dclk=0;
                        dclk=1;
                }
我复制的这部分,一个循环时间应该等于一个dclk高低电平宽度。程序中dclk刚等于0 就等于1; 导致程序高电平时间 与低电平不一致。调整这个时序,用示波器 或者逻辑分析仪可以增加调试效率。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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