找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1621|回复: 1
打印 上一主题 下一主题
收起左侧

51单片机nokia5110显示程序

[复制链接]
跳转到指定楼层
楼主
ID:436236 发表于 2020-6-14 14:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  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, 下载次数: 27, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:727275 发表于 2020-6-24 23:33 | 只看该作者
感谢楼主分享51单片机nokia5110显示程序
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表