标题: 51单片机nokia5110显示程序 [打印本页]

作者: passionfruit123    时间: 2020-6-14 14:51
标题: 51单片机nokia5110显示程序

  1. /*
  2. **************************************************************************       

  3.                                 Nokia 5110驱动

  4. *说明:本驱动适用于51单片机,液晶的VCC接5V或3.3V
  5.            修改偏置电压可改变5110点阵显示的亮度
  6.              5110接5V时偏置电压改为(0xBE,0),接3.3V时改为(0xc0,0)

  7. 简介:黑白屏  串行接口与主处理器进行通信  84*48点阵LCD 可最多显示4行汉字
  8.       一行7个汉字,14个字符(6*8点阵)【汉字显示才去12*12的点阵方式NOKIA
  9.       5110液晶不带字库 所以要用字模提取软件PCtoLCD2002,显示汉字可以采用两
  10.       种点阵方式,一种是12*12点阵,一种是16*16点阵(本程序采用12*12点阵)】
  11.           本程序可显示6行字符每行可显示14个字符,可显示3行(理论上说采用12*12的
  12.           点阵是可以显示4汉字,但这里可能程序没处理好,如果有需要可以自己修改)
  13.           汉字每行七个字

  14. ***************************************************************************
  15. */

  16. #include <reg52.h>
  17. #include  "Fonts.h"
  18. #include  "ASCII.h"
  19. #include  "picture.h"
  20. #include  "5110.h"



  21. void display()
  22. {
  23.         /*----------------------------------------------------------------------------------------------------------------------------------*/
  24.         /* 显示英文,一个英文占6*8个点阵,一行可以显示14个字符,可以显示86行                                                                                                                                 */
  25.         /*----------------------------------------------------------------------------------------------------------------------------------*/

  26. //                LCD_WriteString(0,0,"NOKIA5110 test");
  27. //                LCD_WriteString(0,1,"welcome to my blog");

  28.         /*----------------------------------------------------------------------------------------------------------------------------------*/
  29.         /*显示ASCII代码中的一个                                                                                                                                                                                                                                */
  30.         /*----------------------------------------------------------------------------------------------------------------------------------*/

  31. //                LCD_write_ASCII_string(0,2,6,2,0,0);

  32.         /*----------------------------------------------------------------------------------------------------------------------------------*/
  33.         /* 显示数字,一个数字占6*8个点阵,一行可以显示14个数字,可以显示86行                                                                                                                                */
  34.         /* 0到65535显示正常值,之后重0开始重新计数(char的容量为65535)                                                                                                                                                    */
  35.         /*           三个数分别为 列 行 数字                                                                                                                                                                                                  */
  36.         /*----------------------------------------------------------------------------------------------------------------------------------*/

  37. //                LCD_WriteNum(0,0,65535);

  38.         /*----------------------------------------------------------------------------------------------------------------------------------*/
  39.         /*5110汉字显示:一个字符占6格,一个汉字占12格(一行有84格)                                                                           */
  40.     /*显示中文,一个中文占12*12个点阵,显示数组write_chinese[][24]                                                                                                                           */
  41.     /*x=12 Y=1表示列留出12个,行留出一行(有几个应该是自己定义)点阵像素,12*12点阵 显示4个字符,从第0个字符开始显示,汉字的间距为6个点阵像素 */
  42.         /*----------------------------------------------------------------------------------------------------------------------------------*/

  43.       LCD_write_chinese_string(0,0,12,4,0,0); //“输入电压"                                        
  44.       LCD_write_chinese_string(0,1,12,4,4,0); //“输出电压"
  45. //          LCD_write_chinese_string(0,4,12,4,8,0); //“输出电流"

  46.         /*----------------------------------------------------------------------------------------------------------------------------------*/
  47.     /* 显示图片中间的是说明调用的是哪个图片的模                                                                                                                                                                                    */                                                                                                                                                                                                                       
  48.     /*----------------------------------------------------------------------------------------------------------------------------------*/

  49. //                LCD_draw_bmp_pixel(0,0,gImage_1,84,48);

  50. }


  51. /********************************************
  52.    主函数 main()
  53. *********************************************/

  54. void main()
  55. {   
  56.     LCD_Init();    //5110液晶初始化
  57.         LCD_Clear();   //5110液晶清屏函数
  58.         display();     //显示函数       
  59.         while(1);
  60. }
复制代码

5110.zip

38.36 KB, 下载次数: 28, 下载积分: 黑币 -5


作者: whwitp    时间: 2020-6-24 23:33
感谢楼主分享51单片机nokia5110显示程序




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1