打印
[MCU]

ILI9481如何滚动显示

[复制链接]
2203|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangch_sh|  楼主 | 2014-12-29 10:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
wangch_sh|  楼主 | 2014-12-29 10:46 | 只看该作者
高手支招啊!

使用特权

评论回复
板凳
wangch_sh|  楼主 | 2014-12-29 11:47 | 只看该作者
没人知道吗?

使用特权

评论回复
地板
wangch_sh|  楼主 | 2014-12-29 15:30 | 只看该作者
沉得好快呀!

使用特权

评论回复
5
zqjqq88| | 2014-12-29 17:36 | 只看该作者
一看是技术达人问问题没人敢说了~

使用特权

评论回复
6
Zhou_g| | 2015-1-4 13:53 | 只看该作者
滚动的起始地址(37h)设置了没有,33h只是设置滚动的区域而已

使用特权

评论回复
7
wangch_sh|  楼主 | 2015-1-4 16:19 | 只看该作者
设置了,不知道对不对,我贴出来。
//进入垂直滚动模式
void Enter_Vertical_Scroll_Mode(void)
{
         *CmdAddress=0x0033;                                        //设置滚动区域
         *DataAddress=0x0001;
         *DataAddress=0x00e0;
         *DataAddress=0x0001;
         *DataAddress=0x00e0;
         *DataAddress=0x0001;
         *DataAddress=0x00e0;
         *CmdAddress=0x002A;                                        //设置列地址
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=0x0001;
         *DataAddress=0x003f;

         *CmdAddress=0x002B;                                        //设置页地址
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=0x0001;
         *DataAddress=0x00df;
         *CmdAddress=0x0036;                                        //设置地址模式
         *DataAddress=0x0023;
         *CmdAddress=0x002C;                                        //写存储器起始
         dispchar(50,50,'0');
         disphanzi(100,100,"红");
         dispstring(200,200,"陈长兵Ok!");
         //*CmdAddress=0x0037;                                        //设置滚动起始
         //*DataAddress=0x0000;
         //*DataAddress=0x0000;
}
//连续滚动
void Continuous_Scroll(void)
{
         *CmdAddress=0x002A;                                        //设置列地址
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=0x0001;
         *DataAddress=0x003f;

         *CmdAddress=0x002B;                                        //设置页地址
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=0x0001;
         *DataAddress=0x00df;
         *CmdAddress=0x002C;                                        //写存储器起始
         dispchar(50,50,'0');
         disphanzi(100,100,"红");
         dispstring(200,200,"陈长兵Ok!");
         *CmdAddress=0x0037;                                        //设置滚动起始
         *DataAddress=0x0000;
         *DataAddress=Scroll_Cnt;
         Scroll_Cnt++;

}
主程序:
。。。。。。。。。。。。。。。。。。。。。。。
HD_reset();
        ddelay(2);           //50ms
        LCD_INIT_ILI9481();
        //*CmdAddress=0x0020;
        //dispchar(50,50,'0');
        //disphanzi(100,100,"红");
        //dispstring(200,200,"陈长兵Ok!");
        Enter_Vertical_Scroll_Mode();
        for(;;)
           {
                Continuous_Scroll();
                ddelay(2);
           }  

使用特权

评论回复
8
JY-DX-JY| | 2015-1-5 08:24 | 只看该作者
本帖最后由 JY-DX-JY 于 2015-1-5 08:28 编辑

同问

使用特权

评论回复
9
Zhou_g| | 2015-1-5 13:47 | 只看该作者
//连续滚动
void Continuous_Scroll(void)
{
         unsigned  char Scroll_Cnt;
         for(Scroll_Cnt=32;Scroll_Cnt<480)
        {
         //清了上一次显示的位置
         *CmdAddress=0x0033;
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=Scroll_Cnt>>8;
         *DataAddress=Scroll_Cnt;
         *DataAddress=0x0000;
         *DataAddress=0x0000;

         *CmdAddress=0x0037;
         *DataAddress=0x0000;
         *DataAddress=0x0020;
         
         dispchar(50,50,'0');
         disphanzi(100,100,"红");
         dispstring(200,200,"陈长兵Ok!");
         Scroll_Cnt+=5;                            //每次滚动的间隔为5个点
        }
}

使用特权

评论回复
10
Zhou_g| | 2015-1-5 13:50 | 只看该作者

//连续滚动
void Continuous_Scroll(void)
{
         unsigned  char Scroll_Cnt;
         for(Scroll_Cnt=32;Scroll_Cnt<480;)
        {
         //清了上一次显示的位置
         *CmdAddress=0x0033;
         *DataAddress=0x0000;
         *DataAddress=0x0000;
         *DataAddress=Scroll_Cnt>>8;
         *DataAddress=Scroll_Cnt;
         *DataAddress=0x0000;
         *DataAddress=0x0000;

         *CmdAddress=0x0037;
         *DataAddress=0x0000;
         *DataAddress=0x0020;
         
         dispchar(50,50,'0');
         disphanzi(100,100,"红");
         dispstring(200,200,"陈长兵Ok!");
         Scroll_Cnt+=5;                            //每次滚动的间隔为5个点
        }
}

使用特权

评论回复
11
wangch_sh|  楼主 | 2015-1-5 16:14 | 只看该作者
有效果了,谢谢!

使用特权

评论回复
12
Zhou_g| | 2015-1-5 16:56 | 只看该作者
不客气:)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:为江山踏坏了乌骓马,为社稷拉断了宝雕弓。

318

主题

2814

帖子

5

粉丝