久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: NOKIA5110LCD液晶屏的驅(qū)動(dòng)實(shí)驗(yàn) [打印本頁(yè)]

作者: 51黑科技    時(shí)間: 2016-2-4 00:12
標(biāo)題: NOKIA5110LCD液晶屏的驅(qū)動(dòng)實(shí)驗(yàn)
所需硬件:   1.單片機(jī)實(shí)驗(yàn)開(kāi)發(fā)板可自制
            2.杜邦頭插線
            3.NOKIA5110LCD液晶屏
            4.STC89C51RC單片機(jī)
所需軟件:   1. Keil C51 V8.08或Keil_uv3 綠色版本
            2.STC單片機(jī)ISP下載編程軟件


       NOKIA5110LCD液晶屏連接圖
C語(yǔ)言源程序

  1. /******************************************************************
  2. ** NOKIA5110(3310)液晶屏驅(qū)動(dòng)程序
  3. ** 晶 振  頻 率:11.0592M
  4. ** 線路->單片機(jī)實(shí)驗(yàn)開(kāi)發(fā)板A
  5. ******************************************************************/
  6.     #include

  7. /*-- -------定義 Nokia5110 引角---- -----*/
  8.   sbit sclk = P3^3;
  9.   sbit sdin = P3^4;
  10.   sbit dc   = P3^5;
  11.   sbit sce = P3^7;
  12.   sbit res = P3^6;



  13.   void initNokia5110(void);                         /* NOkia 5110 初始化   */
  14.   void clearNokia5110(void);                         /* 清除屏幕 整屏清空 */
  15.   void Display_char(unsigned char x,unsigned char y,char *s);   /* 寫字符 x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   *s 顯示字符的首地址 */
  16.   void Display_num(unsigned char x,unsigned char y,char s);   /* 寫數(shù)字 x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   s 顯示數(shù)字 */
  17.   void write_byte(unsigned char data1);                 /* 發(fā)送1字節(jié)到 NOkia 5110 */
  18.   void setxy(unsigned char x,unsigned char y);           /* 設(shè)置顯示坐標(biāo) x 行坐標(biāo)(0-83)   unsigned char y 列坐標(biāo)(0-5) */
  19.   void delay(unsigned int time);


  20.    void main(void)
  21. {
  22.         initNokia5110();                         /* NOkia 5110 初始化   */
  23.         clearNokia5110();                         /* 清除屏幕 整屏清空 */
  24.         Display_char(1,2,"www.52c51.com");   /* 寫字符 x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   *s 顯示字符的首地址 */
  25.         Display_char(10,4,"NOKIA5510");   /* 寫字符 x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   *s 顯示字符的首地址 */
  26.         //Display_num(0,0,9);   // 寫數(shù)字
  27. while(1);
  28. }

  29. /****************************5110 0-9字模**************************/
  30. /*函數(shù)原型:無(wú)
  31. /*函數(shù)功能:0-9字模
  32. /*輸入?yún)?shù):無(wú)
  33. /*輸出參數(shù):無(wú)
  34. /*調(diào)用模塊:
  35. /*建立時(shí)間:2006/10/1
  36. /*作者:站長(zhǎng)
  37. /**********************************************************************/
  38. unsigned char code asc2tab[][6] =
  39. {
  40.   
  41.   { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },// sp
  42.   
  43.   { 0x00, 0x00, 0x00, 0x2f, 0x00, 0x00 },// !
  44.   
  45.   { 0x00, 0x00, 0x07, 0x00, 0x07, 0x00 },// "
  46.   
  47.   { 0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14 },// #
  48.   
  49.   { 0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12 },// $
  50.   
  51.   { 0x00, 0x62, 0x64, 0x08, 0x13, 0x23 },// %
  52.   
  53.   { 0x00, 0x36, 0x49, 0x55, 0x22, 0x50 },// &
  54.   
  55.   { 0x00, 0x00, 0x05, 0x03, 0x00, 0x00 },// '
  56.   
  57.   { 0x00, 0x00, 0x1c, 0x22, 0x41, 0x00 },// (
  58.   
  59.   { 0x00, 0x00, 0x41, 0x22, 0x1c, 0x00 },// )
  60.   
  61.   { 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14 },// *
  62.   
  63.   { 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08 },// +
  64.   
  65.   { 0x00, 0x00, 0x00, 0xA0, 0x60, 0x00 },// ,
  66.   
  67.   { 0x00, 0x08, 0x08, 0x08, 0x08, 0x08 },// -
  68.   
  69.   { 0x00, 0x00, 0x60, 0x60, 0x00, 0x00 },// .
  70.   
  71.   { 0x00, 0x20, 0x10, 0x08, 0x04, 0x02 },// /
  72.   
  73.   { 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E },// 0
  74.   
  75.   { 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00 },// 1
  76.   
  77.   { 0x00, 0x42, 0x61, 0x51, 0x49, 0x46 },// 2
  78.   
  79.   { 0x00, 0x21, 0x41, 0x45, 0x4B, 0x31 },// 3
  80.   
  81.   { 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10 },// 4
  82.   
  83.   { 0x00, 0x27, 0x45, 0x45, 0x45, 0x39 },// 5
  84.   
  85.   { 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30 },// 6
  86.   
  87.   { 0x00, 0x01, 0x71, 0x09, 0x05, 0x03 },// 7
  88.   
  89.   { 0x00, 0x36, 0x49, 0x49, 0x49, 0x36 },// 8
  90.   
  91.   { 0x00, 0x06, 0x49, 0x49, 0x29, 0x1E },// 9
  92.   
  93.   { 0x00, 0x00, 0x36, 0x36, 0x00, 0x00 },// :
  94.   
  95.   { 0x00, 0x00, 0x56, 0x36, 0x00, 0x00 },// ;
  96.   
  97.   { 0x00, 0x08, 0x14, 0x22, 0x41, 0x00 },// <
  98.   
  99.   { 0x00, 0x14, 0x14, 0x14, 0x14, 0x14 },// =
  100.   
  101.   { 0x00, 0x00, 0x41, 0x22, 0x14, 0x08 },// >
  102.   
  103.   { 0x00, 0x02, 0x01, 0x51, 0x09, 0x06 },// ?
  104.   
  105.   { 0x00, 0x32, 0x49, 0x59, 0x51, 0x3E },// @
  106.   
  107.   { 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C },// A
  108.   
  109.   { 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36 },// B
  110.   
  111.   { 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22 },// C
  112.   
  113.   { 0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C },// D
  114.   
  115.   { 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41 },// E
  116.   
  117.   { 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01 },// F
  118.   
  119.   { 0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A },// G
  120.   
  121.   { 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F },// H
  122.   
  123.   { 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00 },// I
  124.   
  125.   { 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01 },// J
  126.   
  127.   { 0x00, 0x7F, 0x08, 0x14, 0x22, 0x41 },// K
  128.   
  129.   { 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40 },// L
  130.   
  131.   { 0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F },// M
  132.   
  133.   { 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F },// N
  134.   
  135.   { 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E },// O
  136.   
  137.   { 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06 },// P
  138.   
  139.   { 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E },// Q
  140.   
  141.   { 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46 },// R
  142.   
  143.   { 0x00, 0x46, 0x49, 0x49, 0x49, 0x31 },// S
  144.   
  145.   { 0x00, 0x01, 0x01, 0x7F, 0x01, 0x01 },// T
  146.   
  147.   { 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F },// U
  148.   
  149.   { 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F },// V
  150.   
  151.   { 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F },// W
  152.   
  153.   { 0x00, 0x63, 0x14, 0x08, 0x14, 0x63 },// X
  154.   
  155.   { 0x00, 0x07, 0x08, 0x70, 0x08, 0x07 },// Y
  156.   
  157.   { 0x00, 0x61, 0x51, 0x49, 0x45, 0x43 },// Z
  158.   
  159.   { 0x00, 0x00, 0x7F, 0x41, 0x41, 0x00 },// [
  160.   
  161.   { 0x00, 0x55, 0x2A, 0x55, 0x2A, 0x55 },// 55
  162.   
  163.   { 0x00, 0x00, 0x41, 0x41, 0x7F, 0x00 },// ]
  164.   
  165.   { 0x00, 0x04, 0x02, 0x01, 0x02, 0x04 },// ^
  166.   
  167.   { 0x00, 0x40, 0x40, 0x40, 0x40, 0x40 },// _
  168.   
  169.   { 0x00, 0x00, 0x01, 0x02, 0x04, 0x00 },// '
  170.   
  171.   { 0x00, 0x20, 0x54, 0x54, 0x54, 0x78 },// a
  172.   
  173.   { 0x00, 0x7F, 0x48, 0x44, 0x44, 0x38 },// b
  174.   
  175.   { 0x00, 0x38, 0x44, 0x44, 0x44, 0x20 },// c
  176.   
  177.   { 0x00, 0x38, 0x44, 0x44, 0x48, 0x7F },// d
  178.   
  179.   { 0x00, 0x38, 0x54, 0x54, 0x54, 0x18 },// e
  180.   
  181.   { 0x00, 0x08, 0x7E, 0x09, 0x01, 0x02 },// f
  182.   
  183.   { 0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C },// g
  184.   
  185.   { 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78 },// h
  186.   
  187.   { 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00 },// i
  188.   
  189.   { 0x00, 0x40, 0x80, 0x84, 0x7D, 0x00 },// j
  190.   
  191.   { 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00 },// k
  192.   
  193.   { 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00 },// l
  194.   
  195.   { 0x00, 0x7C, 0x04, 0x18, 0x04, 0x78 },// m
  196.   
  197.   { 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78 },// n
  198.   
  199.   { 0x00, 0x38, 0x44, 0x44, 0x44, 0x38 },// o
  200.   
  201.   { 0x00, 0xFC, 0x24, 0x24, 0x24, 0x18 },// p
  202.   
  203.   { 0x00, 0x18, 0x24, 0x24, 0x18, 0xFC },// q
  204.   
  205.   { 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08 },// r
  206.   
  207.   { 0x00, 0x48, 0x54, 0x54, 0x54, 0x20 },// s
  208.   
  209.   { 0x00, 0x04, 0x3F, 0x44, 0x40, 0x20 },// t
  210.   
  211.   { 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C },// u
  212.   
  213.   { 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C },// v
  214.   
  215.   { 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C },// w
  216.   
  217.   { 0x00, 0x44, 0x28, 0x10, 0x28, 0x44 },// x
  218.   
  219.   { 0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C },// y
  220.   
  221.   { 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44 },// z
  222.   
  223.   { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 }


  224. };


  225. /****************************Nokia5110初始化函數(shù)**************************/
  226. /*函數(shù)原型:initNokia5110(void)
  227. /*函數(shù)功能:Nokia5110初始化
  228. /*輸入?yún)?shù):無(wú)
  229. /*輸出參數(shù):無(wú)
  230. /*調(diào)用模塊:
  231. /*建立時(shí)間:2006/10/1
  232. /*作者:站長(zhǎng)
  233. /**********************************************************************/
  234. void initNokia5110(void)
  235. {
  236.   delay(10);             //系統(tǒng)復(fù)位
  237.   res = 0;
  238.   delay(2);
  239.   res = 1;
  240.   dc   = 0;
  241.   write_byte(0x21);         //;芯片是活動(dòng)的(PD=0) 使用擴(kuò)展指令集
  242.   write_byte(0xd5);   
  243.   write_byte(0x20);         //;芯片是活動(dòng)的(PD=0) 使用水平尋址(V=0) 使用基本指令集(H=0)
  244.   write_byte(0x0c);         //;設(shè)置顯示配置(D=1 E=0)
  245. }


  246. /****************************Nokia5110清屏函數(shù)*********************/
  247. /*函數(shù)原型:void clearNokia5110(void)
  248. /*函數(shù)功能:Nokia5110清屏
  249. /*輸入?yún)?shù):無(wú)
  250. /*輸出參數(shù):無(wú)
  251. /*調(diào)用模塊:
  252. /*建立時(shí)間:2006/10/1
  253. /*作者:站長(zhǎng)
  254. /**********************************************************************/
  255. void clearNokia5110(void)
  256. {  
  257.   unsigned int i,j;
  258.   for(i=0;i<6;i++)
  259.   {
  260.     setxy(j,i);
  261.     dc   = 1;
  262.     while (j<84)
  263.     {

  264.         write_byte(0x00);
  265.         j++;
  266.     }
  267.     j   = 0;

  268.   }
  269. }

  270. /*--------------------------------------
  271. ;模塊名稱:Display_char(unsigned char x,unsigned char y,char *s);
  272. ;功   能:寫字符
  273. ;占用資源:
  274. ;參數(shù)說(shuō)明:x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   *s 顯示字符的首地址
  275. ;創(chuàng)建日期:2001.01.19
  276. ;版   本:VER 2.0         ★STALI☆
  277. ;-------------------------------------*/
  278. void Display_char(unsigned char x,unsigned char y,char *s)
  279. {  
  280.   unsigned char line;
  281.   setxy(x,y);
  282.   while(*s)
  283.   {
  284.     for(line=0;line<6;line++)
  285.     {  
  286.         dc   = 1;
  287.         write_byte(asc2tab[*s - 32][line]);  
  288.     }
  289.     s++;  
  290.   }
  291.   sce = 1;
  292. }

  293. /****************************Nokia5110寫數(shù)字函數(shù)*********************/
  294. /*函數(shù)原型:void Display_num(unsigned char x,unsigned char y,char s)
  295. /*函數(shù)功能:Nokia5110寫數(shù)字
  296. /*輸入?yún)?shù):x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   s 顯示數(shù)字
  297. /*輸出參數(shù):無(wú)
  298. /*調(diào)用模塊:
  299. /*建立時(shí)間:2006/10/1
  300. /*作者:站長(zhǎng)
  301. /**********************************************************************/
  302. void Display_num(unsigned char x,unsigned char y,char s)
  303. {
  304.   unsigned char line;
  305.   setxy(x,y);
  306.   dc   = 1;  
  307.   for(line=0;line<6;line++)
  308.   {  
  309.    
  310.     write_byte(asc2tab[s+16][line]);  
  311.   }
  312.   sce = 1;
  313. }
  314.   
  315. /*************************Nokia5110發(fā)送1字節(jié)函數(shù)*********************/
  316. /*函數(shù)原型:void Display_num(unsigned char x,unsigned char y,char s)
  317. /*函數(shù)功能:發(fā)送1字節(jié)到 NOkia 5110
  318. /*輸入?yún)?shù):x 設(shè)置顯示字符的X位置 ; y 設(shè)置顯示字符的Y位置   s 顯示數(shù)字
  319. /*輸出參數(shù):無(wú)
  320. /*調(diào)用模塊:
  321. /*建立時(shí)間:2006/10/1
  322. /*作者:站長(zhǎng)
  323. /**********************************************************************/
  324. void write_byte(unsigned char data1)
  325. {  
  326.   unsigned char i;
  327.   res = 1;
  328.   sce = 0;
  329.   for(i=0;i<8;i++)
  330.   {
  331.     sdin = (bit) (data1&0x80);
  332.     sclk = 0;
  333.       ;  
  334.     sclk = 1;  
  335.     data1 <<=1;
  336.   }
  337. }

  338. /*************************Nokia5110設(shè)置顯示坐標(biāo)函數(shù)*********************/
  339. /*函數(shù)原型:void setxy(unsigned char x,unsigned char y)
  340. /*函數(shù)功能:設(shè)置顯示坐標(biāo)
  341. /*輸入?yún)?shù):unsigned char x 行坐標(biāo)(0-83)   unsigned char y 列坐標(biāo)(0-5)
  342. /*輸出參數(shù):無(wú)
  343. /*調(diào)用模塊:
  344. /*建立時(shí)間:2006/10/1
  345. /*作者:站長(zhǎng)
  346. /**********************************************************************/
  347. void setxy(unsigned char x,unsigned char y)
  348. {
  349.   dc   = 0;
  350.   write_byte(y|0x40);         //設(shè)置y軸。
  351.   write_byte(x|0x80);         //設(shè)置x軸。
  352. }

  353. /*******************************延時(shí)函數(shù)*********************************/
  354. /*函數(shù)原型:delay(unsigned int delay_time)
  355. /*函數(shù)功能:延時(shí)函數(shù)
  356. /*輸入?yún)?shù):delay_time (輸入要延時(shí)的時(shí)間)
  357. /*輸出參數(shù):無(wú)
  358. /*調(diào)用模塊:無(wú)
  359. /*建立時(shí)間:2005/10/21
  360. /*作者:站長(zhǎng)
  361. /**********************************************************************/
  362. void delay(unsigned int delay_time)   //延時(shí)子程序
  363. {for(;delay_time>0;delay_time--)
  364. {}
  365.   }
復(fù)制代碼





作者: prettytank    時(shí)間: 2018-5-2 23:54
樓主真棒,非常好!!!
作者: 陳洪雯    時(shí)間: 2018-10-25 19:54
超級(jí)有用!!
作者: fly_apple    時(shí)間: 2019-2-14 09:05
正好需要,謝謝樓主
作者: starwaver    時(shí)間: 2019-2-21 14:10
不錯(cuò),下載,收藏~
作者: LXJ50    時(shí)間: 2019-2-23 21:19
下載了,解壓不了,提示說(shuō)文件已被破壞。
作者: 艱苦好    時(shí)間: 2019-6-23 21:58
厲害啊
作者: happyw2004    時(shí)間: 2020-2-6 17:30
上面還有一個(gè)LED+是什么引腳呀.




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 精品免费视频 | 国产精品久久久久久久久久尿 | 久久精品中文字幕 | 国产精品一区二区欧美黑人喷潮水 | 国产高清在线精品 | 毛片一级片 | 三级在线视频 | 成人精品啪啪欧美成 | 99精品久久 | 影音先锋中文字幕在线观看 | 天天天天天天天干 | 日韩在线一区二区 | 欧美婷婷 | av网站在线播放 | 国产美女在线免费观看 | 黄色毛片网站在线观看 | 超碰97干| 久久久久久九九九九 | 国产成人精品久久二区二区 | 日日操日日舔 | 久久久久免费 | 久久婷婷国产麻豆91 | 国产精品一级 | 69堂永久69tangcom | 91大神在线看 | 亚洲国产欧美一区二区三区久久 | 国产在线一区二区三区 | 免费久久精品视频 | 国产成人久久精品一区二区三区 | 久久aⅴ乱码一区二区三区 91综合网 | 午夜影院在线观看 | 狠狠亚洲 | 97超碰站 | 成人午夜影院 | 黄色在线免费网站 | 国产精品揄拍一区二区久久国内亚洲精 | 久久成人免费观看 | 亚洲国产成人久久综合一区,久久久国产99 | 毛片av免费看| av永久免费 | 国产有码 |