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

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

?? lcmdrv.c

?? 這是網名為Rein Lee寫的一篇在PROTEUS中使用ARM處理器及uC/OS-II移植理解
?? C
?? 第 1 頁 / 共 2 頁
字號:
/****************************************Copyright (c)**************************************************
**--------------File Info-------------------------------------------------------------------------------
** File name: LCMDRV.C
** Last modified Date:2007-12-20
** Last Version: 1.0
** Descriptions: MG12864圖形液晶模塊驅動程序。T6963C控制器
**------------------------------------------------------------------------------------------------------
** Created by:   Rein Lee
** Created date: 2007-12-20
** Version:      1.0
** Descriptions: The original version
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
********************************************************************************************************/
#include "config.h"
/* 定義總線起始的GPIO,即D0對應的GPIO值(P0.4) */
/* 定義顯示緩沖區 */
#define  BUS_NO		4
/* 輸出總線數據宏定義 */
#define	 OutData(dat)	IO0DIR = IO0DIR |(0xff<<BUS_NO); IO0CLR = 0xff<<BUS_NO; IO0SET = (dat&0xff)<<BUS_NO
#define	 InData()	IO0DIR = IO0DIR &~(0x000000ff<<BUS_NO);dat = (uint8)((IO0PIN&(0xFFFFFFFF))>>BUS_NO)
/* 定義READ控制 */
#define  LCM_RD		12
#define  LCM_UNREAD()		IO0SET = 1<<LCM_RD
#define  LCM_READ()			IO0CLR = 1<<LCM_RD
/* 定義WRITE控制 */
#define  LCM_WR	13
#define  LCM_UNWRITE()		IO0SET = 1<<LCM_WR
#define  LCM_WRITE()		IO0CLR = 1<<LCM_WR
/* 定義C/D#控制 */
#define  LCM_CD		14
#define  LCM_COM()			IO0SET = 1<<LCM_CD
#define  LCM_DATA()			IO0CLR = 1<<LCM_CD
/* 定義C/D#控制 */
#define  LCM_CE		15
#define  LCM_DISABLE()			IO0SET = 1<<LCM_CE
#define  LCM_ENABLE()			IO0CLR = 1<<LCM_CE
/* 定義LCM操作的命令字 */
// T6963C 命令定義
#define LCM_CUR_POS 0x21 // 光標位置設置
#define LCM_CGR_POS 0x22 // CGRAM 偏置地址設置
#define LCM_ADD_POS 0x24 // 地址指針位置
#define LCM_TXT_STP 0x40 // 文本區首址
#define LCM_TXT_WID 0x41 // 文本區寬度
#define LCM_GRH_STP 0x42 // 圖形區首址
#define LCM_GRH_WID 0x43 // 圖形區寬度
#define LCM_MOD_OR	0x80 // 顯示方式邏輯或
#define LCM_MOD_XOR 0x81 // 顯示方式邏輯異或
#define LCM_MOD_AND 0x82 // 顯示方式邏輯與
#define LCM_MOD_TCH 0x83 // 顯示方式文本特征
#define LCM_DIS_SW	0x90 // 顯示開關D0=1/0:光標閃爍啟用/禁用
// D1=1/0:光標顯示啟用/禁用
// D2=1/0:文本顯示啟用/禁用
// D3=1/0:圖形顯示啟用/禁用
#define LCM_CUR_SHP 0xA0 // 光標形狀選擇0xA0-0xA7表示光標占的行數
#define LCM_AUT_WR 0xB0 // 自動寫設置
#define LCM_AUT_RD 0xB1 // 自動讀設置
#define LCM_AUT_OVR 0xB2 // 自動讀/寫結束
#define LCM_INC_WR 0xC0 // 數據一次寫地址加1
#define LCM_INC_RD 0xC1 // 數據一次讀地址加1
#define LCM_DEC_WR 0xC2 // 數據一次寫地址減1
#define LCM_DEC_RD 0xC3 // 數據一次讀地址減1
#define LCM_NOC_WR 0xC4 // 數據一次寫地址不變
#define LCM_NOC_RD 0xC5 // 數據一次讀地址不變
#define LCM_SCN_RD 0xE0 // 屏讀
#define LCM_SCN_CP 0xE8 // 屏拷貝
#define LCM_BIT_OP 0xF0 // 位操作
uint8 const  turnf[8] = {7,6,5,4,3,2,1,0};
uint8 const  DEC_HEX_TAB1[8] = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01};
uint8 const  DEC_HEX_TAB[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};
/*********************************************************************************************************
** 函數名稱: LCM_READSTATE
** 功能描述: 讀取LCM內部的狀態
** 輸 入: 無
** 輸 出: LCM內部狀態值       
** 全局變量: 
** 調用模塊: 
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LCM_READSTATE()
{
	uint8 dat;
	IO0DIR = IO0DIR &~(0x000000ff<<BUS_NO);
	LCM_UNWRITE();
	LCM_COM();
	LCM_READ();
	LCM_ENABLE();
	//DELAY5();
	//DELAY5();
	//DELAY5();
	//InData();
	dat = (uint8)((IO0PIN)>>BUS_NO);
	//LCM_UNREAD();
	//LCM_UNWRITE();
	LCM_DISABLE();
	return dat;
}
/*********************************************************************************************************
** 函數名稱: LCM_STA01
** 功能描述: 狀態位STA1,STA0判斷讀寫指令和讀寫數據,在讀寫數據或者寫入命令前必須保證均為1
** 輸 入: 無 
** 輸 出: 無       
** 全局變量: 無
** 調用模塊: LCM_READSTATE
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LCM_STA01(void)
{
    uint8 i;
    for(i=10;i>0;i--)
    {
        if(( LCM_READSTATE() & 0x03) == 0x03) // 讀取狀態
        {
            break;
        }
    }
    return(i); // 若返回零說明錯誤
}
/*********************************************************************************************************
** 函數名稱: LCM_STA3
** 功能描述: 狀態位STA3
** 輸 入: 無 
** 輸 出: 無       
** 全局變量: 無
** 調用模塊: LCM_READSTATE
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LCM_STA3(void)
{
    uint8 i;
    for(i=10;i>0;i--)
    {
        if(( LCM_READSTATE() & 0x08) == 0x08) // 讀取狀態
        {
            break;
        }
    }
    return(i); // 若返回零說明錯誤
}
/*********************************************************************************************************
** 函數名稱: LCM_WrCommand
** 功能描述: 寫命令子程序
** 輸 入: command  	要寫入LCM的命令字
** 輸 出: 無       
** 全局變量: 無
** 調用模塊: 無
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void LCM_WrCommand(uint8 command) 
{
	LCM_UNREAD();
	LCM_COM();
	LCM_WRITE();
	LCM_ENABLE();
	OutData(command);
	//LCM_UNWRITE();
	//LCM_READ();
	LCM_DISABLE();
}
/*********************************************************************************************************
** 函數名稱: LCM_WrData
** 功能描述: 寫數據子程序
** 輸 入: wrdata  	要寫入LCM的數據
** 輸 出: 無       
** 全局變量: 無
** 調用模塊: 無
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void LCM_WrData(uint8 wrdata) 
{  
	LCM_UNREAD();
	LCM_DATA();
	LCM_WRITE();
	LCM_ENABLE();
	OutData(wrdata);
	//LCM_UNWRITE();
	//LCM_READ();
	LCM_DISABLE();	 
}
/*********************************************************************************************************
** 函數名稱: LCM_WrParameter
** 功能描述: 向LCM寫入參數,帶雙參數,一個參數,或者不帶參數
** 輸 入: cmd參數;para1參數1;para2參數2;num參數個數 
** 輸 出: 返回操作結果       
** 全局變量: 無
** 調用模塊: 無
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LCM_WrParameter(uint8 cmd,uint8 para1,uint8 para2,uint8 num)
{
	switch (num)
	{
		case 0x00:
		/*
			if(LCM_STA01() == 0)
    		{
        		return 1;
    		}
    	*/	
   			LCM_WrCommand(cmd);
			break;
		case 0x01:
			/*
			if(LCM_STA01() == 0)
    		{
        		return 1;
    		}
    		LCM_WrData(para1);
    		if(LCM_STA01() == 0)
    		{
       		return 2;
    		}
    		LCM_WrCommand(cmd);
    		*/
    		LCM_WrData(para1);
    		LCM_WrCommand(cmd);
			break;
		case 0x02:
		/*
			if(LCM_STA01() == 0)
    		{
        		return 1;
    		}
    		LCM_WrData(para1);
   			if(LCM_STA01() == 0)
    		{
        		return 2;
    		}
   			 LCM_WrData(para2);
    		if(LCM_STA01() == 0)
    		{
        		return 3;
    		}
    		LCM_WrCommand(cmd);
    	*/	
    	LCM_WrData(para1);
    	LCM_WrData(para2);
    	LCM_WrCommand(cmd);
			break;		
	}
	return 0;
}
/*********************************************************************************************************
** 函數名稱: LCM_ReadByte
** 功能描述: 讀取指定點上的字節數據
** 輸 入: x,y坐標值 
** 輸 出: 返回該點上的字節數據       
** 全局變量: 無
** 調用模塊: 無
**------------------------------------------------------------------------------------------------------
** Created by    Rein Lee
** Created date: 2007-12-20
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人听书哪个软件好| 在线观看国产日韩| 欧美午夜电影网| 久久综合九色综合欧美亚洲| 亚洲精品高清在线观看| 国产综合色产在线精品| 欧美日韩一二三| 亚洲欧洲无码一区二区三区| 国产在线不卡视频| 欧美理论片在线| 一级特黄大欧美久久久| 色综合久久天天综合网| 日韩欧美综合在线| 婷婷开心久久网| 欧美亚日韩国产aⅴ精品中极品| 精品国产乱子伦一区| 日韩国产欧美在线视频| 色天天综合色天天久久| 亚洲国产一区二区三区 | 亚洲一区在线电影| 国产成人在线电影| 欧美电影免费观看高清完整版在线观看 | 国产高清在线观看免费不卡| 欧美xxxxx牲另类人与| 午夜影院久久久| 在线一区二区三区四区| 国产精品国产三级国产aⅴ原创 | 精品三级在线观看| 日韩欧美成人午夜| 欧美日韩国产另类不卡| 中文字幕亚洲视频| 国产成人一区在线| 久久色中文字幕| 国产乱妇无码大片在线观看| 欧美va亚洲va| 国产麻豆91精品| 日本一区二区免费在线| 成人午夜又粗又硬又大| 国产精品欧美精品| 91小视频在线观看| 亚洲一区二区高清| 91精品国产aⅴ一区二区| 男人的j进女人的j一区| 精品毛片乱码1区2区3区| 国产麻豆精品视频| 国产精品三级视频| 在线精品视频小说1| 五月开心婷婷久久| 精品剧情在线观看| 国产91丝袜在线观看| 欧美激情一区二区三区| 欧美激情一区三区| 成人免费视频视频在线观看免费| 亚洲欧美日韩在线播放| 91国偷自产一区二区使用方法| 尤物视频一区二区| 欧美一区二区免费观在线| 精品一区二区三区在线视频| 中文字幕高清一区| 色老汉一区二区三区| 日本三级亚洲精品| 中文子幕无线码一区tr| 91福利在线播放| 久久se这里有精品| 亚洲色图清纯唯美| 欧美一区二区三区视频在线观看| 国产激情视频一区二区三区欧美| 亚洲视频在线一区二区| 日韩欧美一级片| 99精品在线观看视频| 日本午夜一区二区| 中文字幕佐山爱一区二区免费| 678五月天丁香亚洲综合网| 久久精品一区二区三区av | aaa国产一区| 亚洲va国产va欧美va观看| 精品乱码亚洲一区二区不卡| kk眼镜猥琐国模调教系列一区二区 | 亚洲成人动漫av| 国产欧美一区二区精品久导航 | 99久久精品久久久久久清纯| 视频一区欧美日韩| 中文字幕在线观看不卡| 欧美电视剧在线观看完整版| 欧洲人成人精品| 粉嫩绯色av一区二区在线观看| 日韩和欧美一区二区| 亚洲欧洲日韩女同| 欧美精品一区二| 欧美精品xxxxbbbb| 91蜜桃免费观看视频| 处破女av一区二区| aaa欧美日韩| 亚洲国产成人av| 亚洲国产成人一区二区三区| 欧美大片免费久久精品三p| 欧美在线免费播放| 波多野结衣中文字幕一区| 精品一区二区三区蜜桃| 亚洲图片自拍偷拍| 亚洲精品福利视频网站| 中文字幕免费在线观看视频一区| 欧美v日韩v国产v| 欧美一区二区美女| 欧美人成免费网站| 欧美视频一区二区在线观看| 91免费视频大全| 97se亚洲国产综合在线| 成人网页在线观看| 岛国一区二区三区| 成人免费毛片aaaaa**| 国产成人精品综合在线观看 | 午夜在线电影亚洲一区| 亚洲最大成人综合| 亚洲午夜精品在线| 亚洲第一久久影院| 亚洲精品老司机| av中文字幕一区| 国产一区二区导航在线播放| 麻豆91在线观看| 日本麻豆一区二区三区视频| 丝袜亚洲另类丝袜在线| 日韩av电影天堂| 免费在线成人网| 日韩精品一级中文字幕精品视频免费观看 | 在线观看一区二区视频| 欧美亚州韩日在线看免费版国语版 | 欧美日韩亚洲综合在线| 欧美日本一区二区三区四区| 欧美日韩国产首页| 日韩精品影音先锋| 国产精品视频免费| 一个色妞综合视频在线观看| 午夜电影网亚洲视频| 麻豆精品视频在线观看视频| 国产精品69毛片高清亚洲| 波多野洁衣一区| 精品欧美黑人一区二区三区| 亚洲国产精品久久艾草纯爱| 国产精品欧美经典| 亚洲精品乱码久久久久久日本蜜臀| 亚洲男帅同性gay1069| 亚洲成人动漫在线免费观看| 精品亚洲成av人在线观看| 成人国产精品免费| 欧美日韩一级视频| 欧美国产一区二区在线观看 | 不卡的av网站| 欧美美女网站色| 久久久电影一区二区三区| 亚洲色图欧洲色图| 老司机免费视频一区二区| av一区二区三区在线| 3d动漫精品啪啪1区2区免费| 国产农村妇女精品| 亚洲高清在线精品| 国产成人99久久亚洲综合精品| 欧美在线视频你懂得| 精品国产乱码久久久久久老虎| 亚洲色图另类专区| 国产一区91精品张津瑜| 欧美三级电影网| 国产精品乱码一区二区三区软件 | 国产一区二区毛片| 欧美系列一区二区| 久久精品日产第一区二区三区高清版| 国产精品免费av| 蜜臀av一区二区在线观看| 91女神在线视频| 国产婷婷色一区二区三区| 性欧美疯狂xxxxbbbb| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 中文字幕国产一区| 亚洲精品国产第一综合99久久 | 国产一区二区三区美女| 欧美中文字幕亚洲一区二区va在线 | 日韩国产成人精品| 福利一区二区在线| 欧美不卡一区二区三区四区| 亚洲精品成人精品456| 国产v日产∨综合v精品视频| 欧美一区二区三区色| 亚洲精品福利视频网站| www.日韩在线| 欧美国产一区二区在线观看| 国产一区二区0| 精品久久久久久久久久久久包黑料| 亚欧色一区w666天堂| 91久久精品一区二区| 亚洲男人都懂的| 91视频.com| 一区二区三区在线视频播放| 丁香桃色午夜亚洲一区二区三区| 亚洲精品一区二区三区在线观看| 蜜桃视频一区二区| 精品第一国产综合精品aⅴ| 久久99精品国产| 久久新电视剧免费观看| 国产乱码精品一品二品| 欧美精品一区男女天堂|