亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lcd.c

?? 160*160字符圖形液晶Linux2.6.24內核驅動程序
?? C
字號:
#include <stdio.h>#include <stdarg.h>#include <memory.h>#include <errno.h>#include <sys/types.h>#include <sys/socket.h>#include <sys/mman.h>#include <sys/ioctl.h>#include <fcntl.h>#include <signal.h>#include <stdlib.h>#include <unistd.h>#include "pic.h"#define	MEM_LCD_ADDR	0x50000000/* Memory mapping definitions */#define MAP_SIZE 4096UL#define MAP_MASK (MAP_SIZE - 1)#define	DIS_DELAY 1volatile void *map_base;void Display_Picture(unsigned char pic[]);
void Display_Gray(void);
void Display_Grid(unsigned char dat1,unsigned char dat2,unsigned char dat3,unsigned char dat4);
void Initial_LCD(void);
inline void Write_Instruction(unsigned char cmd);
inline void Write_Data(unsigned char dat);
int main(int argc, char *argv[]){	int fd, i, rc, pin, dest_addr, id, retval, flag = 0;	char *current, action, port;	unsigned long readval, writeval;	unsigned char temp = 0;	if((fd = open("/dev/mem", O_RDWR | O_SYNC)) == -1){		printf("Error opening /dev/mem\n");		exit(1);	}  	/* Map one page */	map_base = mmap(0, MAP_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, MEM_LCD_ADDR & ~MAP_MASK);	if(map_base == (void *) -1){		printf("Error mapping memory\n");		close(fd);		exit(1);	}	printf("PHY ADDR:0x%x, map_base:0x%x\n", MEM_LCD_ADDR, map_base);	Initial_LCD();
	while(1)
	{
	        Display_Grid(0xff,0xff,0xff,0xff);
        	sleep(DIS_DELAY);
		Display_Picture(pic1);
        	sleep(DIS_DELAY);
		Display_Picture(pic2);
        	sleep(DIS_DELAY);
        	Display_Gray();
        	sleep(DIS_DELAY);
        	Display_Grid(0xff,0xff,0x00,0x00);
        	sleep(DIS_DELAY);
        	Display_Grid(0x00,0x00,0xff,0xff);
        	sleep(DIS_DELAY);
        	Display_Grid(0x00,0xff,0x00,0xff);
        	sleep(DIS_DELAY);
        	Display_Grid(0xff,0x00,0xff,0x00);
        	sleep(DIS_DELAY);
        	Display_Grid(0xff,0x00,0x00,0xff);
        	sleep(DIS_DELAY);
        	Display_Grid(0x00,0xff,0xff,0x00);
        	sleep(DIS_DELAY);
    	}
	/* Unmap previously mapped page */	if(munmap(map_base, MAP_SIZE) == -1){		printf("Error unmapping memory\n");		close(fd);		exit(1);	}	 	close(fd);	exit(retval);}

inline void Write_Data(unsigned char dat) 
{	*(unsigned char *)(map_base+1) = dat;}

inline void Write_Instruction(unsigned char cmd)
{
	*(unsigned char *)(map_base) = cmd;}

void Initial_LCD(void)
{

	Write_Instruction(0x30);
	Write_Instruction(0x94);
	Write_Instruction(0xd1);
	
	Write_Instruction(0x20);
	Write_Data(0x08);
	sleep(1);

	Write_Instruction(0x20);
	Write_Data(0x0b);

	Write_Instruction(0x81); //Contrast adjusting
	Write_Data(0x0f); //0x36
	Write_Data(0x05); //0x04

	Write_Instruction(0xca);
	Write_Data(0x00);
	Write_Data(0x27);
	Write_Data(0x00);

	Write_Instruction(0xa6);

	Write_Instruction(0xbb);
	Write_Data(0x02);

	Write_Instruction(0xbc);
	Write_Data(0x00);
	Write_Data(0x00);
	Write_Data(0x02);

	Write_Instruction(0x75);
	Write_Data(0x00);
	Write_Data(0x9f);

	Write_Instruction(0x15);
	Write_Data(0x00);
	Write_Data(0x35);

	Write_Instruction(0x31);

	Write_Instruction(0x32);
	Write_Data(0x05);
	Write_Data(0x01);
	Write_Data(0x01);

	Write_Instruction(0x22);
	Write_Data(0x04);
	Write_Data(0x1f);
	Write_Data(0x02);

	Write_Instruction(0x20);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);
	Write_Data(0x1f);

	Write_Instruction(0x21);
	Write_Data(0x00);
	Write_Data(0x00);
	Write_Data(0x04);
	Write_Data(0x04);
	Write_Data(0x08);
	Write_Data(0x08);
	Write_Data(0x0c);
	Write_Data(0x0c);
	Write_Data(0x10);
	Write_Data(0x10);
	Write_Data(0x14);
	Write_Data(0x14);
	Write_Data(0x18);
	Write_Data(0x18);
	Write_Data(0x1f);
	Write_Data(0x1f);

	Write_Instruction(0x34);

	Write_Instruction(0x30);
	Write_Instruction(0xaf);

}
void Display_Grid(unsigned char dat1,unsigned char dat2,unsigned char dat3,unsigned char dat4)
{
    register unsigned char i,j,k,l;
    Write_Instruction(0x15);
    Write_Data(0x00);
    Write_Data(0x35);

    Write_Instruction(0x75);
    Write_Data(0x00);
    Write_Data(0x9f);

    Write_Instruction(0x5c);
    for(k=0;k<0x14;k++)
    {
          for(i=0;i<0x04;i++)
          {
            for(j=0;j<0x14;j++)
			{
			    for(l=0;l<0x4;l++)
                    Write_Data(dat1);
			    for(l=0;l<0x4;l++)
                    Write_Data(dat2);
            }
            Write_Data(dat2);
            Write_Data(dat2);
          }
          for(i=0;i<0x04;i++)
          {
            for(j=0;j<0x14;j++)
			{
			    for(l=0;l<0x4;l++)
                    Write_Data(dat3);
			    for(l=0;l<0x4;l++)
                    Write_Data(dat4);
            }
            Write_Data(dat4);
            Write_Data(dat4);
          }
    }
	return;
}
void Display_Gray(void)
{
    register unsigned char i,j,k;
    Write_Instruction(0x15);
    Write_Data(0x00);
    Write_Data(0x35);
    Write_Instruction(0x75);
    Write_Data(0x00);
    Write_Data(0x9f);
    Write_Instruction(0x5c);
    for(k=0;k<0x04;k++)
    {
        for(i=0;i<0x0a;i++)
        {
            for(j=0;j<0xa2;j++)
                Write_Data(0x00);
        }
        for(i=0;i<0x0a;i++)
        {
	        for(j=0;j<0xa2;j++)
                Write_Data(0x4f);
        }
        for(i=0;i<0x0a;i++)
        {
        	for(j=0;j<0xa2;j++)
                Write_Data(0xaf);
        }
        for(i=0;i<0x0a;i++)
        {
	        for(j=0;j<0xa2;j++)
                Write_Data(0xff);
        }
    }
	return;
}
void Display_Picture(unsigned char pic[])
{
    unsigned char i,j,k,tmp,temp;
    Write_Instruction(0x15);
    Write_Data(0x00);
    Write_Data(0x35);
    Write_Instruction(0x75);
    Write_Data(0x00);
    Write_Data(0x9f);
    Write_Instruction(0x5c);
    for(k=0;k<0xa0;k++)
    {
        for(i=0;i<0x14;i++)
        {
			temp=pic[k*20+i];
			for(j=0x00;j<0x08;j++)
			{
				
				tmp=temp&0x80;
				if(tmp==0x80)
	            	Write_Data(0x00);
				else
					Write_Data(0xf8);
				temp=temp<<1;
			}
        }
		Write_Data(0xf8);
		Write_Data(0xf8);
    }
	return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久精品国产| 日韩欧美一级二级三级| 蜜臀久久99精品久久久久宅男| 国产农村妇女毛片精品久久麻豆 | 久久久午夜精品| 26uuu成人网一区二区三区| 欧美一卡在线观看| 精品噜噜噜噜久久久久久久久试看| 欧美日韩二区三区| 在线不卡的av| 欧美一区二区三区视频免费播放 | 国产成人啪午夜精品网站男同| 精品一区二区影视| 国产黑丝在线一区二区三区| 国产一区二区网址| 国产成人丝袜美腿| 91久久线看在观草草青青| 91高清视频免费看| 欧美人狂配大交3d怪物一区 | 日韩一区二区影院| 久久精子c满五个校花| 中文字幕不卡在线观看| 中文字幕一区二区5566日韩| 亚洲精选免费视频| 日本免费新一区视频| 狠狠色丁香九九婷婷综合五月| 国产精品亚洲人在线观看| 不卡的av中国片| 精品污污网站免费看| 精品国产乱码久久久久久浪潮| 久久久久久99久久久精品网站| 国产精品高潮呻吟久久| 亚洲一区二区三区中文字幕| 蜜臀久久99精品久久久画质超高清 | 国产精品日产欧美久久久久| 亚洲精品v日韩精品| 免费av网站大全久久| 成人黄色综合网站| 欧美丰满少妇xxxxx高潮对白| 精品精品国产高清a毛片牛牛| 亚洲欧洲无码一区二区三区| 亚洲成人综合视频| 国产精品1区2区| 欧美在线免费观看亚洲| 国产亚洲一区二区在线观看| 亚洲一二三区在线观看| 国产精品99久久久久久宅男| 欧美伊人精品成人久久综合97| 精品国产91乱码一区二区三区| 国产精品久久久久久久久久免费看 | 欧美电影在哪看比较好| 国产精品传媒入口麻豆| 久久精品国产精品亚洲综合| 一本久道中文字幕精品亚洲嫩| 欧美一级免费大片| 亚洲综合一区二区精品导航| 国产乱子伦视频一区二区三区| 欧美日韩一区 二区 三区 久久精品| 国产午夜精品久久| 久久精品国产精品亚洲精品| 欧美日韩一区二区三区四区| 国产清纯在线一区二区www| 麻豆精品一区二区三区| 欧美老年两性高潮| 亚洲最快最全在线视频| 99re6这里只有精品视频在线观看| 精品国产乱码久久久久久浪潮| 日本中文字幕一区二区有限公司| 日本高清免费不卡视频| 国产精品久久久久aaaa樱花| 国产精品12区| wwwwxxxxx欧美| 精品一区二区免费| 欧美一区二区人人喊爽| 无吗不卡中文字幕| 欧美怡红院视频| 亚洲精品高清在线| 日本高清成人免费播放| 亚洲三级电影全部在线观看高清| 成人黄色综合网站| 亚洲日本丝袜连裤袜办公室| 91视频在线观看| 亚洲日本青草视频在线怡红院 | 91片黄在线观看| 中文字幕在线免费不卡| 97精品视频在线观看自产线路二| 中文字幕精品综合| 99精品视频中文字幕| 亚洲欧洲国产日本综合| 99视频精品全部免费在线| 亚洲视频资源在线| 欧美日韩一区二区在线观看视频| 亚洲观看高清完整版在线观看| 欧美视频三区在线播放| 日韩电影在线观看一区| 亚洲精品在线免费观看视频| 国产精品一卡二卡在线观看| 国产精品视频在线看| 91影视在线播放| 婷婷久久综合九色综合绿巨人| 欧美一区二区三区思思人| 国产精品一级片| 亚洲欧洲国产日韩| 欧美久久久久久久久久| 亚洲综合色成人| 久久99久久99| 欧美国产视频在线| 欧美午夜精品久久久久久超碰| 日韩精品视频网站| 国产偷国产偷精品高清尤物| 成人av在线资源网站| 亚洲成精国产精品女| 久久男人中文字幕资源站| 99久久国产综合精品麻豆| 爽爽淫人综合网网站| 国产欧美一区二区精品久导航| 色婷婷久久综合| 国产中文字幕一区| 亚洲国产欧美一区二区三区丁香婷| 日韩欧美久久久| 在线视频国产一区| 韩日精品视频一区| 亚洲自拍另类综合| 欧美—级在线免费片| 欧美一区二区三区在| aaa欧美大片| 韩国一区二区在线观看| 亚洲午夜精品在线| 国产精品国产三级国产普通话99 | 精品成人佐山爱一区二区| 99精品欧美一区二区三区小说| 亚洲综合色区另类av| 国产精品久久久久桃色tv| 欧美一区二区在线播放| 91蜜桃免费观看视频| 国产成人午夜精品5599| 青青草91视频| 亚洲国产美国国产综合一区二区| 国产日韩欧美高清在线| 日韩一区二区三区电影在线观看| 在线看不卡av| 91亚洲国产成人精品一区二区三 | 国产午夜精品福利| 精品日韩在线观看| 日韩av一区二| 国产女同互慰高潮91漫画| 欧美一级xxx| 欧美一区二区三区视频免费 | 蜜臀va亚洲va欧美va天堂| 亚洲国产欧美在线| 亚洲影视资源网| 亚洲欧美自拍偷拍| 国产精品伦一区二区三级视频| 久久理论电影网| 欧美精品一区二区三区四区| 日韩限制级电影在线观看| 91精品国产一区二区人妖| 在线91免费看| 欧美一区二区视频在线观看2022 | 国产一区二区三区在线观看免费视频| 另类成人小视频在线| 肉肉av福利一精品导航| 激情综合网天天干| 亚洲尤物在线视频观看| 九九在线精品视频| 久久精品99国产精品| 91麻豆.com| 日韩美一区二区三区| 精品一区二区在线观看| 91亚洲精品久久久蜜桃| 色噜噜狠狠成人中文综合| 99久久久免费精品国产一区二区| 高清国产一区二区| 91年精品国产| 精品视频免费看| 精品国产伦一区二区三区免费| 国产亚洲精品bt天堂精选| 国产精品九色蝌蚪自拍| 亚洲尤物在线视频观看| 捆绑紧缚一区二区三区视频| 国产做a爰片久久毛片| av福利精品导航| 欧美主播一区二区三区| 日韩欧美高清在线| 国产精品国产自产拍高清av| 香港成人在线视频| 精品夜夜嗨av一区二区三区| eeuss鲁片一区二区三区| 欧美午夜不卡视频| 亚洲一区二区三区四区的| 国产精品国产自产拍高清av| 精品国产一区二区三区四区四| 中国av一区二区三区| 亚洲va天堂va国产va久| 国产东北露脸精品视频| 在线精品视频一区二区| 欧美成人一级视频| 亚洲精品高清在线观看| 久久se这里有精品| 欧美撒尿777hd撒尿|