• K_A04_002 基于单片机驱动LCD12864模块显示图片 文字


    目录

    一、资源说明

    二、基本参数

            1、参数

            2、引脚说明

    三、通信协议说明

            写时序:

            写命令代码:

    四、部分代码说明

            1、接线说明

                    1.1、STC89C52RC+LCD12864模块

                    1.2、STM32F103C8T6+LCD12864模块

    五、基础知识学习与相关资料下载

    六、字符图片提取格式

    七、视频效果展示与程序资料获取

    八、项目所有材料清单

    九、注意事项

    十、接线表格


    一、资源说明

    单片机型号

    测试条件

    模块名称

    代码功能

    STC89C52RC

    1.晶振11.0592M

    LCD12864模块

    LCD12864模块显示图片 文字 

    STM32F103C8T6

    1. 晶振8M
    2. 系统时钟72M

    LCD12864模块

    二、基本参数

            1、参数

    1e3c5f7a6afd47b5b4793f7afabe85ad.png

            2、引脚说明

    LCD12864模块

    引脚说明

    GND

    GND引脚接电源地,如果外接电源,一般必须共地

    VDD

    VCC电源引脚,根据版本接5V或3.3V

    V0

    LCD 驱动电压输入端(此处客不接直接用背面电位器)

    RS

    指令/数据选择信号

    RW

    读写选择信号

    E

    使能信号

    DB0

    数据 0

    DB1

    数据 1

    DB2

    数据 2

    DB3

    数据 3

    DB4

    数据 4

    DB5

    数据 5

    DB6

    数据 6

    DB7

    数据 7

    PSB

    并/串行接口选择:H-并行;L-串行

    NC

    空脚

    RST

    复位 低电平有效

    VOUT

    倍压输出脚 (VDD=+3.3V 有效)

    A

    LED+  5V或3.3V

    K

    LED-  GND

    三、通信协议说明

            写时序:

    b26ebd81e3ea4f3d9aafd9f4be88237b.jpeg

            写命令代码:

    1.  //传送数据或者命令,当DI=0是,传送命令,当DI=1,传送数据.
    2. void  TransferData(char data1,bit DI)
    3.  {
    4. WRD=0;
    5. RS=DI;
    6. delay(1);
    7. LCD_Date=data1;
    8. E=1;
    9. delay(1);
    10. E=0;
    11. }

    四、部分代码说明

            1、接线说明

                    需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

                    1.1、STC89C52RC+LCD12864模块

    1. #define LCD_Date P0
    2. sbit RS  = P2^6;
    3. sbit WRD = P2^5;
    4. sbit E   = P2^7;
    5. sbit PSB = P3^2;
    6. sbit RES = P3^3;

                    1.2、STM32F103C8T6+LCD12864模块

    1. void LCD1602_GPIO_Config(void)
    2. {
    3. /*定义一个GPIO_InitTypeDef类型的结构体*/
    4. GPIO_InitTypeDef GPIO_InitStructure;
    5. /*开启LED相关的GPIO外设时钟*/
    6. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB,ENABLE);
    7. //LCD_E引脚初始化
    8. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
    9. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
    10. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    11. GPIO_Init(GPIOA, &GPIO_InitStructure);
    12. //LCD_RW引脚初始化
    13. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
    14. GPIO_Init(GPIOA, &GPIO_InitStructure);
    15. //LCD_RS引脚初始化
    16. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
    17. GPIO_Init(GPIOA, &GPIO_InitStructure);
    18. //LCD_PSB引脚初始化
    19. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
    20. GPIO_Init(GPIOB, &GPIO_InitStructure);
    21. //LCD_RST引脚初始化
    22. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
    23. GPIO_Init(GPIOB, &GPIO_InitStructure);
    24. //D0-D7引脚初始化
    25. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;
    26. GPIO_Init(GPIOA, &GPIO_InitStructure);
    27. }

    五、基础知识学习与相关资料下载

    1. STC89C52RC程序下载 直戳跳转
    2. STM32F103C8T6程序下载
      1. 串口下载                直戳跳转 
      2. ST-LINK下载             直戳跳转
      3. J-LINK下载              直戳跳转
      4. DAP-LINK下载            直戳跳转
    3. 字符软件提取

           PCtoLCD2013软件图形与文字提取          直戳跳转

    六、字符图片提取格式

    图片格式:共阴——逐行式——顺向——C51——行前后缀括号去掉

    手绘图:图像模式——点开新建图像——输入长宽像素并确认——绘制图片——设置输出格式——点生成——复制数据到程序

    74b55ef901a44bef8894833cdf120535.jpeg

    e1225a22ddd84701a4b7d8c14066d97d.jpeg

    打开BMP图:图像模式——点开文件中打开——找到需要打开的BMP图片——设置输出格式——点生成——复制数据到程序

    53b157cbfe544e8a8f2385eed1cbf011.jpeg

    567706a0f0274403a4ec77e10e93dd79.jpeg

    七、视频效果展示与程序资料获取

            视频连接                直戳跳转

            资料获取            ( 滑到最后添加群号看公告免费获取)      

    八、项目所有材料清单

     STC89C52RC驱动方案

    图片

    STM32F103C8T6驱动方案

    图片

    备注

    K_A04_002

    STC89C52RC系统板X1

    48480e40fed64aa08778d6f4532cd122.jpeg

    STM32F103C8T6系统板X1

    e294ee9efa75409c9873250de35f5848.jpeg

    1、STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电

    2、杜邦线建议不用太长的

    LCD12864模块X1

    4aa0f3992bad42658d8c2281dfcb8b3a.jpeg

    LCD12864模块X1

    86494787e3d34aa881a92dede114edcc.jpeg

    Micro USB线X1

    a6ae6aa5cd324582a5728753803e6f3c.jpeg

    Micro USB线X2

    67ea9eadd6534e6caf07b82f837c22a5.jpeg

    母母杜邦线X20根

    5de4f17f8ff94f5789032fda917102ed.jpeg

    母母杜邦线X20根

    597eb3ead599419492e60c2754b8d763.jpeg

    J-LINK下载器

    953b3e8f92cb4968a3d93aeb10a98da2.jpeg

    九、注意事项

    1. VCC GND请勿接反,接反易烧
    2. 显示异常时,排除接线接触不良
    3. 显示中文时候注意字符串格式 中文占用两个字节 所以字符位置开始要在偶数位置
    4. LCD12864背光调节默认可不外接电位器 可调背面电位器

    十、接线表格

    单片机型号

    模块

    对应引脚(上:模块引脚 下:单片机引脚)

    STM32F103

    C8T6

    LCD12864模块

    GND

    VDD

    VO

    RS

    RW

    E

    D0

    D1

    D2

    D3

    GND

    5V

    不接

    PA8

    PA12

    PA11

    PA0

    PA1

    PA2

    PA3

    D4

    D5

    D6

    D7

    PSB

    NC

    RST

    VOUT

    A

    K

    PA4

    PA5

    PA6

    PA7

    PB6

    不接

    PB7

    不接

    3.3V

    GND

    STC89C52RC

    LCD12864模块

    GND

    VDD

    VO

    RS

    RW

    E

    D0

    D1

    D2

    D3

    GND

    5V

    不接

    P2.6

    P2.5

    P2.7

    P0.0

    P0.1

    P0.2

    P0.3

    D4

    D5

    D6

    D7

    PSB

    NC

    RST

    VOUT

    A

    K

    P0.4

    P0.5

    P0.6

    P3.2

    P3.2

    不接

    P3.3

    不接

    5V

    GND

  • 相关阅读:
    opencv4第二章
    黑客技术(自学)——网络安全
    本周的error记录
    SpringBoot-容器功能
    在线书店系统(JSP+java+springmvc+mysql+MyBatis)
    Jira Bug管理工具的操作步骤 提Bug的流程
    AMD AFMF不但能用在游戏,也适用于视频
    【Echart】Echart设置label太长隐藏:
    【算法】链表的基本操作和高频算法题
    反射的作用( 越过泛型检查 和 可以使用反射保存所有对象的具体信息 )
  • 原文地址:https://blog.csdn.net/lfmnlxx79691557/article/details/127829425