免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 952 | 回复: 0

LCD控制实验—孟明明 [复制链接]

论坛徽章:
0
发表于 2011-12-23 03:25 |显示全部楼层
09计应一班 孟明明 LCD控制实验

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#include <fcntl.h>      // open() close()
#include <unistd.h>     // read() write()


#define DEVICE_NAME "/dev/fb0"

#define VERSION         "PXA270RP-LCD-V1.00-090101"

void showversion(void)
{
        printf
("*********************************************\n");
        printf
("\t %s \t\n", VERSION);
        printf
("*********************************************\n\n");

}

//------------------------------------- main ----------------------------------------------------------------
int main(void)
{
       
int fd;
       
int ret;
       
int i;
       
int j;
       
int f=0;
       
int k=0;
       
unsigned short buf[480][800];

        showversion
();

        printf
("\nstart test_lcd test\n\n");

        fd
= open(DEVICE_NAME, O_RDWR);
       
        printf
("fd = %d\n",fd);
       

       
if (fd == -1)
       
{
                printf
("open device %s error\n",DEVICE_NAME);
       
}
       
else
       
{
                                       
                       
for(i=0;i<480;i++){
                               
for(j=0;j<800;j++){
                       
                                buf
[i][j]=0x0001;
                               
}
                       
}
                        ret
=write(fd,buf,sizeof(buf));

                        usleep
(500000);
                        close
(fd);
               
//----------------------------------------------
                       
while(1){                       //设置一个方块中嵌套方块的图片并向四周同时扩散
                                                       
//也可将循环过程封装成一个函数,进行函数回调,效果会更好!

                        fd
= open(DEVICE_NAME, O_RDWR);
                       
                       
for(i=0;i<480;i++){
                               
for(j=0;j<f;j++){
                                buf
[i][j]=0x0001;
                               
                       
}
                       
                       
}
                        ret
=write(fd,buf,sizeof(buf));

                       
//usleep(500000);
                        close
(fd);
                        fd
= open(DEVICE_NAME, O_RDWR);
                       
for(i=200-f;i<280+f;i++){
                               
for(j=340-k;j<460+k;j++){
                                        buf
[i][j]=0xf800;
                                               
}                      
                                       
}
                       
for(i=220-f;i<260+f;i++){
                                       
for(j=370-k;j<430+k;j++){
                                        buf
[i][j]=0x0001;
                               
}
                       
}
                       
for(i=240-f;i<240+f;i++){
                                       
for(j=400-k;j<400+k;j++){
                                        buf
[i][j]=0xf81f;
                               
}
                       
}

                        f
=f+8;
                        k
=k+12;
                        ret
=write(fd,buf,sizeof(buf));
                        usleep
(100000);
                        close
(fd);
                       
                       
                       
if(f>=200||k>=340){
                                               
                       
for(i=0;i<480;i++){
                               
for(j=0;j<800;j++){
                       
                                buf
[i][j]=0x0001;
                                       
}                      
                               
}
                                f
=0;
                                k
=0;
                               
}
                       
}
                       
                       
if(getchar()>0){
                   
                        system
("cat fb >/dev/fb0");
                        system
("cat apl_test/fb >/dev/fb0");
                                     
}
     
       
}

       
return 0;
}// end main

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP