吴忠躺衫网络科技有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>單片機>LCD12864顯示漢字和數字(程序和電路)

LCD12864顯示漢字和數字(程序和電路)

2012-10-15 | rar | 58.6 KB | 次下載 | 免費

資料介紹

附件為:LCD12864顯示漢字和數字的程序與電路

/*
?自定義延時子函數
*/
void delayms(uchar z)
{
? int x,y;
? for(x=z;x>0;x--)
???? for(y=110;y>0;y--);
}

/*
???? 判斷LCD忙信號狀態
*/
void buys()
{
? int dat;
? RW=1;
? RS=0;
? do
??? {?
???????? P0=0x00;
???????? E=1;
???dat=P0;
???E=0;
???dat=0x80 & dat;
??} while(!(dat==0x00));
}

/*
???? LCD寫指令函數
*/
void w_com(uchar com)
{
? //buys();
? RW=0;
? RS=0;
? E=1;
? P0=com;
? E=0;
}

?/*
???? LCD寫數據函數
*/
void w_date(uchar date)
{
? //buys();
? RW=0;
? RS=1;
? E=1;
? P0=date;
? E=0;
}


/*
??? LCD選屏函數
*/
void select_screen(uchar screen)
{
??? switch(screen)
??? {
??? ??? case 0:???? //選擇全屏
??????????????? CS1=0;
?????? CS2=0;
??? ????? break;
???? case 1:???? //選擇左屏
??????????????? CS1=0;
?????? CS2=1;
??? ????? break;
?????????????
??? ??? ?? case 2:???? //選擇右屏
??????????????? CS1=1;
?????? CS2=0;
??? ????? break;
???/*? case 3:???? //選擇右屏
??????????????? CS1=1;
???????? CS2=1;
??? ????????? break;
???*/
??? }??? ??
???
}

/*
? LCDx向上滾屏顯示
*/
void lcd_rol()
{
??? int x;
??? for(x=0;x<64;x++)
?????? {
??? ??select_screen(0);
????w_com(0xc0+x);
??? ??delayms(500);
??? }


}

/*
??? LCD清屏函數:清屏從第一頁的第一列開始,總共8頁,64列
*/
void clear_screen(screen)
{
? int x,y;
? select_screen(screen);???? //screen:0-選擇全屏,1-選擇左半屏,2-選擇右半屏
? for(x=0xb8;x<0xc0;x++)???//從0xb8-0xbf,共8頁
???? {
???w_com(x);
???w_com(0x40);???//列的初始地址是0x40
???for(y=0;y<64;y++)
????? {
????? ???? w_date(0x00);
?????
?????? }
????? }???
}

/*
??LCD顯示漢字字庫函數
*/
void lcd_display_hanzi(uchar screen,uchar page,uchar col,uint mun)
{??//screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-3,mun:顯示第幾個漢字的參數
????? int a;
?? mun=mun*32;
?? select_screen(screen);
?? w_com(0xb8+(page*2));
?? w_com(0x40+(col*16));
?? for (?a=0;a<16;a++)
????? {
?? ??? w_date(hanzi[mun++]);
??
?? }
?? w_com(0xb8+(page*2)+1);
?? w_com(0x40+(col*16));
?? for (?a=0;a<16;a++)
????? {
?? ??? w_date(hanzi[mun++]);
??
?? }
}

?/*
??LCD顯示字符字庫函數
*/
void lcd_display_zifuk(uchar screen,uchar page,uchar col,uchar mun)
{??//screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-7,mun:顯示第幾個漢字的參數
????? int a;
?? mun=mun*16;
?? select_screen(screen);
?? w_com(0xb8+(page*2));
?? w_com(0x40+(col*8));
?? for (?a=0;a<8;a++)
????? {
?? ??? w_date(zifu[mun++]);
??
?? }
?? w_com(0xb8+(page*2)+1);
?? w_com(0x40+(col*8));
?? for (?a=0;a<8;a++)
????? {
?? ??? w_date(zifu[mun++]);
??
?? }
}

/*
??LCD顯示數字字庫函數
*/
void lcd_display_shuzi(uchar screen,uchar page,uchar col,uchar mun)
{??//screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-7,mun:顯示第幾個漢字的參數
????? int a;
?? mun=mun*16;
?? select_screen(screen);
?? w_com(0xb8+(page*2));
?? w_com(0x40+(col*8));
?? for (?a=0;a<8;a++)
????? {
?? ??? w_date(shuzi[mun++]);
??
?? }
?? w_com(0xb8+(page*2)+1);
?? w_com(0x40+(col*8));
?? for (?a=0;a<8;a++)
????? {
?? ??? w_date(shuzi[mun++]);
??
?? }
}

/*
??LCD初始化函數
*/
void lcd_init()
{
? w_com(0x3f);?? //LCD開顯示
? w_com(0xc0);?? //LCD行初始地址,共64行
? w_com(0xb8);?? //LCD頁初始地址,共8頁
? w_com(0x40);?? //LCD列初始地址,共64列
???
}

/*
??LCD顯示主函數
*/
void main()
{
? //第一行
????? int x;
?? lcd_init();???? //LCD初始化
?? clear_screen(0);??? //LCD清屏幕
?? lcd_display_shuzi(1,0,4,5);??? //LCD顯示數字
?? lcd_display_shuzi(1,0,5,1);??? //LCD顯示數字
????? lcd_display_hanzi(1,0,3,0);??? //LCD顯示漢字
?? lcd_display_hanzi(2,0,0,1);??? //LCD顯示漢字??? //LCD字符漢字
?? lcd_display_hanzi(2,0,1,2);??? //LCD顯示漢字
? //第二行?
?? lcd_display_zifuk(1,1,2,0);??? //LCD顯示字符
?? lcd_display_zifuk(1,1,3,0);??? //LCD顯示字符
?? lcd_display_zifuk(1,1,4,0);??? //LCD顯示字符
?? lcd_display_zifuk(1,1,5,4);??? //LCD顯示字符
?? lcd_display_shuzi(1,1,6,8);??? //LCD顯示字符
?? lcd_display_shuzi(1,1,7,9);??? //LCD顯示字符
?? lcd_display_shuzi(2,1,0,5);??? //LCD顯示字符
?? lcd_display_shuzi(2,1,1,1);??? //LCD顯示字符
?? lcd_display_zifuk(2,1,2,4);
?? lcd_display_zifuk(2,1,3,1);
?? lcd_display_zifuk(2,1,4,2);
?? lcd_display_zifuk(2,1,5,3);
? //第三行
?? for(x=0;x<4;x++)
????? {
?? ? lcd_display_hanzi(1,2,x,3+x);??? //LCD顯示漢字
?? }
?
?? for(x=0;x<4;x++)
????? {
?? ? lcd_display_hanzi(2,2,x,7+x);??? //LCD顯示漢字
?? }
? //第四行

??? for(x=0;x<4;x++)
????? {
?? ? lcd_display_zifuk(1,3,x,5+x);??? //LCD顯示漢字
?? }
??? lcd_display_shuzi(1,3,4,7);
??? lcd_display_shuzi(1,3,5,5);
??? lcd_display_shuzi(1,3,6,5);
??? lcd_display_zifuk(1,3,7,9);
??? lcd_display_shuzi(2,3,0,8);
??? lcd_display_shuzi(2,3,1,9);
??? lcd_display_shuzi(2,3,2,9);
??? lcd_display_shuzi(2,3,3,5);
??? lcd_display_shuzi(2,3,4,6);
??? lcd_display_shuzi(2,3,5,8);
??? lcd_display_shuzi(2,3,6,9);
??? lcd_display_shuzi(2,3,7,2);
?????? while(1);
?? /* while(1)
??? {???? //? LCD向上滾屏顯示
??? ?? lcd_rol();
??? }
?? */
}

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 651單片機窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費
  13. 751單片機大棚環境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
百家乐翻天qvod粤语| 自贡百家乐赌场娱乐网规则| 百家乐官网娱乐备用网址| 百家乐官网的庄闲概率| 皇城国际| 真人娱乐场注册送现金| 新锦江百家乐娱乐场开户注册| 百家乐高手看百家乐| 百家乐官网真人百家乐官网赌博| 大佬百家乐官网现金网| 秦安县| 大发888客服电话 导航| 百家乐怎么押钱| 澳门百家乐真人娱乐城| 百家乐注册开户| 新百家乐官网的玩法技巧和规则| 百家乐官网云顶| 百家乐官网庄闲几率| 菲律宾云顶国际| 大发888线上娱乐| fl水果机教程| 百家乐路子技巧| 百家乐赌注| 百家乐赌场策略| 澳门百家乐职业赌客| 百家乐连跳规律| 澳门百家乐网址多少| 百家乐必胜法hk| 百家乐官网制胜绝招| 百家乐官网赚水方法| 百家乐官网讯特| 澳门百家乐官网送彩金| 真钱百家乐| 百家乐平台| 香港六合彩资料大全| 大发888娱乐场下载ypu rd| 百家乐官网投注最好方法| 百家乐官网注册送10彩金| 宝龙百家乐官网娱乐城| 奔驰百家乐官网游戏| 百家乐官网游戏全讯网2|