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

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

?? lcd2864_dispaly.c

?? 為LCD的滾動顯示漢字程序
?? C
字號:
//實驗目的:用PICC熟悉12864LCD的中文使用
//使用12864LCD自帶中文字庫
//編程讓LCD12864向上滾動顯示詩詞〈北京歡迎你〉
//硬件設置:
//關斷LCD1602的所有跳線,接通LCD12864的所有跳線。
 #include<p30f6014.h>
 
  _FOSC(CSW_FSCM_OFF & XT_PLL4);  //4倍頻晶振,Failsafe 時鐘關閉
  _FWDT(WDT_OFF);                 //關閉看門狗定時器
  _FBORPOR(PBOR_OFF & MCLR_EN);   //掉電復位禁止,MCLR復位使能。
  _FGS(CODE_PROT_OFF);            //代碼保護禁止

//芯片配置字,看門狗關,上電延時開,掉電檢測關,低壓編程關,加密,4M晶體HS振蕩
#define  rs  LATBbits.LATB4       //定義LCD的數據/命令控制口              
#define  rw  LATBbits.LATB5       //定義LCD的讀/寫控制口
#define  e   LATBbits.LATB6       //定義LCD的使能口
#define  psb LATBbits.LATB2       //8位/4位并口選擇
#define  rst LATBbits.LATB7       //定義復位口 

#define  nop()  asm("nop")            //定義nop()函數


const unsigned char sdgt[]={
//北京歡迎你
' ',' ',0xB1,0xB1,0xBE,0xA9,0xBB,0xB6,0xD3,0xAD,0xC4,0xE3,' ',' ',' '};
const unsigned char clear[]={
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '};
const unsigned char time[]={
//2008年10月12日
'2','0','0','8',0xC4,0xEA,'1','0',0xD4,0xC2,'1','2',0xC8,0xD5,' ',' '};
const unsigned char TAB[16][16]={
{//我家大門常打開
0xCE,0xD2,0xBC,0xD2,0xB4,0xF3,0xC3,0xC5,0xB3,0xA3,0xB4,0xF2,0xBF,0xAA,',' ,' '},
{//開放懷抱等你。  
0xBF,0xAA,0xB7,0xC5,0xBB,0xB3,0xB1,0xA7,0xB5,0xC8,0xC4,0xE3,',',' ',' ' ,' '},
{//擁抱過后有了默契,
0xD3,0xB5,0xB1,0xA7,0xB9,0xFD,0xBA,0xF3,0xD3,0xD0,0xC1,0xCB,0xC4,0xAC,0xC6,0xF5},
{//你會愛上這里。 
0xC4,0xE3,0xBB,0xE1,0xB0,0xAE,0xC9,0xCF,0xD5,0xE2,0xC0,0xEF,',', ' ', ' ' , ' '},
{//不管遠近都是朋友,
0xB2,0xBB,0xB9,0xDC,0xD4,0xB6,0xBD,0xFC,0xB6,0xBC,0xCA,0xC7,0xC5,0xF3,0xD3,0xD1},
{//請不要客氣,
0xC7,0xEB,0xB2,0xBB,0xD2,0xAA,0xBF,0xCD,0xC6,0xF8,',',' ',' ', ' ' , ' ' , ' '},
{//第幾次來沒關系。
0xB5,0xDA,0xBC,0xB8,0xB4,0xCE,0xC0,0xB4,0xC3,0xBB,0xB9,0xD8,0xCF,0xB5,',' ,' '},
{//我們歡迎你,
0xCE,0xD2,0xC3,0xC7,0xBB,0xB6,0xD3,0xAD,0xC4,0xE3,',',' ',' ', ' ' , ' ' , ' '},
{//北京歡迎你! 
0xB1,0xB1,0xBE,0xA9,0xBB,0xB6,0xD3,0xAD,0xC4,0xE3,'!',' ',' ', ' ' , ' ' , ' '},
{//讓溫暖感動你,
0xC8,0xC3,0xCE,0xC2,0xC5,0xAF,0xB8,0xD0,0xB6,0xAF,0xC4,0xE3,',',' ',' ',' '},
{//流動中的魅力充滿,
0xC1,0xF7,0xB6,0xAF,0xD6,0xD0,0xB5,0xC4,0xF7,0xC8,0xC1,0xA6,0xB3,0xE4,0xC2,0xFA},
{//著朝氣北京歡迎你。
0xD7,0xC5,0xB3,0xAF,0xC6,0xF8,0xB1,0xB1,0xBE,0xA9,0xBB,0xB6,0xD3,0xAD,0xC4,0xE3},
{//在太陽下分享呼吸,
0xD4,0xDA,0xCC,0xAB,0xD1,0xF4,0xCF,0xC2,0xB7,0xD6,0xCF,0xED,0xBA,0xF4,0xCE,0xFC},
{//在黃土地刷新成績 
0xD4,0xDA,0xBB,0xC6,0xCD,0xC1,0xB5,0xD8,0xCB,0xA2,0xD0,0xC2,0xB3,0xC9,0xBC,0xA8},
{//我家種著萬年青,
0xCE,0xD2,0xBC,0xD2,0xD6,0xD6,0xD7,0xC5,0xCD,0xF2,0xC4,0xEA,0xC7,0xE0,',',' '},
{//開放每段傳奇..,
0xBF,0xAA,0xB7,0xC5,0xC3,0xBF,0xB6,0xCE,0xB4,0xAB,0xC6,0xE6,'.','.','.','.'},
};


unsigned int lcd_x;                 //定義LCD頁地址寄存器
unsigned int lcd_y;                 //定義LCD列地址寄存器
void init();                        //申明I/O口設置函數
void lcd_init();                    //申明LCD初始化函數
void clear_p();                     //申明清屏函數
void qushu(int counts,const unsigned char *ps); //申明查表獲取顯示數據
void send_d(unsigned char x);       //申明送一字節數據顯示函數
void send_i(unsigned char x);       //申明送一字節控制命令函數
void chk_busy();                    //申明檢測LCD是否工作繁忙函數
void delay();                       //申明延時函數,供各命令之間的延時和決定顯示快慢用

//-------------------------------------------
//主程序
int main(void)
{
	unsigned char i,j;
	init();                      //調用I/O口設置函數
	lcd_init();                  //調用LCD初始化函數   
	clear_p();                   //調用清屏函數
	while(1)
	{
		clear_p();
		send_i(0x90);                     //設置顯示位置:第二行
		qushu(0x10,sdgt);                 //顯示歌頭行
		send_i(0x88);                     //設置顯示位置:第三行
		qushu(0x10,time);                 //顯示日期行
		for(j=0;j<160;j++)
			{delay();}                      //延時一定時間
		clear_p();                      //清屏
		
		for(i=0;i<16;i++)                       //顯示完所有信息需移動16次
		{
			send_i(0x80);                   //設置顯示位置:顯示第一行
			qushu(0x10,TAB[i]);  
			send_i(0x90);                   //設置顯示位置:清除第二行
			qushu(0x10,clear); 
			delay();
			send_i(0x90);                   //設置顯示位置:顯示第二行
			qushu(0x10,TAB[i+1]); 
			send_i(0x88);                   //設置顯示位置:清除第三行
			qushu(0x10,clear);       
			delay();   
			send_i(0x88);                   //設置顯示位置:顯示第三行
			qushu(0x10,TAB[i+2]);  
			send_i(0x98);                   //設置顯示位置:清除第四行
			qushu(0x10,clear); 
			delay();
			send_i(0x98);                   //設置顯示位置:顯示第四行
			qushu(0x10,TAB[i+3]); 
			delay();
			for(j=0;j<16;j++)               //控制移動頻率
			{delay();}
		}  
		for(j=0;j<32;j++)                //顯示完一次,等待一定時間
		{delay();}                       
	}
}

//-------------------------------------------
//I/O口設置函數
void init()
{
  TRISB=0X0000;                     //設置B口為輸出   
  TRISD=0X0000;                     //設置D口為輸出
}

//-------------------------------------------
//LCD初始化函數
void lcd_init()
{
  rst=0;                            //復位LCD
  delay();                          //保證復位所需要的時間
  rst=1;                            //恢復LCD正常工作
  nop();        
  psb=1;                            //設置LCD為8位并口通信
  send_i(0x30);                     //基本指令操作
  send_i(0x01);                     //清除顯示
  send_i(0x06);                     //指定在寫入或讀取時,光標的移動方向
  send_i(0x0c);                     //開顯示,關光標,不閃爍
}

//有關顯示設置函數
void wr_zb()
{
  send_i(lcd_y);
  send_i(lcd_x);
}

//-------------------------------------------
//清屏函數
void clear_p()
{
  send_i(0x1);                   //清除所有顯示
  send_i(0x34);                  //擴展指令操作
  send_i(0x30);                  //基本指令操作
}

//------------------------------------------
//查表函數
void qushu(int counts,const unsigned char *ps)
{
  int i;                         //定義循環變量
  for(i=counts;i>0;i--)          //循環counts次
     {  
        send_d(*ps);             //查表取數并調用顯示一個字節數據函數送顯示
        ps++;                    //取下一個數據
     }
}

//-------------------------------------------
//顯示一字節數據函數
void send_d(unsigned char x)
{
   chk_busy();                  //檢測LCD是否工作繁忙
   rs=1;                        //設置該字節數據是顯示數據
   rw=0;                        //設置該次操作為寫
   PORTD=x;                     //送數據口PORTD
   e=1;                         //使能
   nop();
   nop();
   nop();                       
   e=0;                         //禁止
}

//--------------------------------------------
//送一字節命令代碼函數
void send_i(unsigned char x)
{
   chk_busy();                  //檢測LCD是否工作繁忙
   rs=0;                        //設置該字節數據為控制命令
   rw=0;                        //設置此次操作為寫
   PORTD=x;                     //送數據口PORTD
   e=1;                         //使能
   nop();
   nop();
   nop();
   e=0;                         //禁止
}

//-------------------------------------------
//檢測LCD是否工作繁忙
void chk_busy()
{  
   TRISD=0Xffff;                 //更改總線方向為輸入
   rs=0;                         //總線上為命令
   delay();
   rw=1;                         //讀操作
   delay();
   while(PORTDbits.RD7)                  
      {
         delay();
         delay();
         e=1;                   
         delay();
         delay();
         e=0;                   
      }
   e=0;                         
   TRISD=0X0000;                  //總線還原為輸出  
 }

//-------------------------------------------
//延時函數
void delay()
{
    int i;
    for(i=0;i<4000;i++)
       {;}
}

//-------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美最猛黑人xxxxx猛交| 亚洲一区二区三区精品在线| 在线欧美日韩精品| 国产精品18久久久久久vr| 亚洲电影在线播放| 国产精品欧美久久久久无广告 | 一级女性全黄久久生活片免费| 国产农村妇女精品| 国产精品日韩成人| 欧美亚男人的天堂| 欧美视频第二页| 91精品国产综合久久精品性色| 7777女厕盗摄久久久| 日韩欧美第一区| 久久先锋资源网| 国产精品成人午夜| 亚洲一区二区精品久久av| 同产精品九九九| 久久精品国产99久久6| 福利一区二区在线观看| 91原创在线视频| 欧美乱妇23p| 欧美大白屁股肥臀xxxxxx| 久久亚洲精华国产精华液| |精品福利一区二区三区| 一区二区三区.www| 国内欧美视频一区二区 | 日韩欧美一二三| 日韩色在线观看| 久久先锋影音av鲁色资源网| 国产亚洲精品aa午夜观看| 在线免费观看日本欧美| 欧美日韩视频在线观看一区二区三区 | 狠狠色狠狠色综合| 成人国产精品免费观看视频| 在线视频你懂得一区二区三区| 91精品国产手机| 国产精品婷婷午夜在线观看| 午夜精品久久久久久久蜜桃app| 久久99蜜桃精品| 91精彩视频在线| 久久综合久久鬼色中文字| 亚洲精品国产高清久久伦理二区| 美女mm1313爽爽久久久蜜臀| 99re8在线精品视频免费播放| 日韩欧美不卡一区| 亚洲一区二区美女| 成人美女视频在线观看18| 制服丝袜国产精品| 亚洲欧美日韩国产综合| 精品一区二区三区影院在线午夜| 成人91在线观看| 欧美精品一区在线观看| 日韩中文欧美在线| 色妹子一区二区| 国产精品午夜在线| 国产一区二区三区免费播放| 日韩视频中午一区| 亚洲最新视频在线观看| av福利精品导航| 久久精品无码一区二区三区| 日韩不卡免费视频| 欧美日韩一区二区三区不卡| 国产精品传媒入口麻豆| 国产.欧美.日韩| 久久久久久久久蜜桃| 蜜臀av一级做a爰片久久| 欧美精三区欧美精三区 | 欧美三级电影在线观看| 中文字幕一区二区三区不卡在线| 国产盗摄视频一区二区三区| 精品精品国产高清a毛片牛牛| 日韩影院精彩在线| 日韩欧美视频在线| 蜜臀av国产精品久久久久| 91精品国产综合久久久久久久| 亚洲成人综合在线| 91精品福利在线一区二区三区| 天涯成人国产亚洲精品一区av| 欧美日韩亚洲综合一区| 日韩黄色在线观看| 日韩精品一区二区三区swag| 裸体健美xxxx欧美裸体表演| 精品捆绑美女sm三区| 国产中文一区二区三区| 国产欧美一区二区三区沐欲| eeuss鲁片一区二区三区| 有坂深雪av一区二区精品| 欧美日韩日本视频| 日本成人在线电影网| 欧美岛国在线观看| 国产999精品久久久久久| 最新欧美精品一区二区三区| 欧美午夜精品理论片a级按摩| 视频在线观看国产精品| 精品成人a区在线观看| 粉嫩久久99精品久久久久久夜 | 一本久久a久久精品亚洲| 亚洲综合清纯丝袜自拍| 在线成人高清不卡| 国产乱码字幕精品高清av| 综合网在线视频| 在线播放国产精品二区一二区四区| 日本亚洲视频在线| 国产精品欧美久久久久一区二区| 欧美亚洲一区三区| 国产自产视频一区二区三区| 国产精品久久久久久亚洲毛片| 欧美午夜片在线看| 国内精品不卡在线| 亚洲精品一二三| www国产亚洲精品久久麻豆| 91性感美女视频| 精品一区二区三区在线播放视频| 亚洲日本在线a| 精品国产一区二区三区忘忧草| 91在线视频播放地址| 男人的j进女人的j一区| 成人免费在线观看入口| 日韩欧美中文字幕制服| 91尤物视频在线观看| 国产一区999| 青青国产91久久久久久 | 日韩精品一级二级| 亚洲天天做日日做天天谢日日欢| 欧美videos大乳护士334| 91福利国产精品| av毛片久久久久**hd| 韩国女主播一区| 蜜桃在线一区二区三区| 亚洲电影一区二区三区| 日韩美女视频一区二区| 中文字幕的久久| 精品播放一区二区| 日韩一区二区免费电影| 欧洲色大大久久| 91免费版在线| 高清av一区二区| 国产麻豆视频精品| 狠狠v欧美v日韩v亚洲ⅴ| 日韩—二三区免费观看av| 亚洲一区二区三区四区不卡| 综合在线观看色| 最近中文字幕一区二区三区| 国产精品理论片在线观看| 亚洲国产精品二十页| 国产视频一区二区在线| 国产午夜精品一区二区三区嫩草| 国产精品久久久久aaaa樱花 | 日本亚洲最大的色成网站www| 亚洲精品国产品国语在线app| 中文字幕在线播放不卡一区| 国产精品网站一区| 亚洲国产精品激情在线观看| 国产精品久久精品日日| 综合久久给合久久狠狠狠97色| 欧美国产欧美综合| 国产精品看片你懂得| 中文字幕免费观看一区| 国产精品久久久久久亚洲毛片| 日韩理论电影院| 一区二区三区在线播| 亚洲国产另类精品专区| 亚洲成人免费av| 蜜臀av一级做a爰片久久| 极品美女销魂一区二区三区 | 免费成人小视频| 九九国产精品视频| 国产精品资源网站| www.欧美色图| 欧美日韩一区三区四区| 欧美成人综合网站| 久久精品欧美一区二区三区麻豆 | 91黄色在线观看| 884aa四虎影成人精品一区| 精品国产髙清在线看国产毛片| 国产亚洲一区二区三区四区| 亚洲视频在线观看三级| 亚洲成人777| 国产成人在线免费| 91在线播放网址| 精品少妇一区二区三区在线播放| 国产精品人人做人人爽人人添| 亚洲尤物视频在线| 激情小说欧美图片| 97精品久久久久中文字幕| 欧美一区二区精品在线| 最新国产成人在线观看| 麻豆成人综合网| 一本色道久久综合亚洲精品按摩| 日韩一区二区三区在线观看| 国产精品天干天干在线综合| 亚洲图片一区二区| 国产99一区视频免费| 欧美三级中文字幕| 国产欧美视频一区二区三区| 香港成人在线视频| 成人h动漫精品一区二| 欧美一区二区网站| 一区二区在线观看视频|