液晶12864显示图片

news2024/12/31 3:46:16

液晶12864简介

12864是128*64点阵液晶模块的点阵数简称。

基本参数

1、低电源电压(VDD:+3.0~+5.5V)。

2、显示分辨率:128×64 点。

3、内置汉字字库,提供8192 个16×16 点阵汉字。

4、内置128 个16×8 点阵字符。

5、2MHZ时钟频率。

6、显示方式:STN、半透、正显。

7、驱动方式:1/32DUTY,1/5BIAS。

8、视角方向:6 点。

9、背光方式:侧部高亮白色LED。

10、通讯方式:串行、并口可选。

11、内置DC-DC 转换电路,无需外加负压。

12、无需片选信号,简化软件设计。

13、工作温度: 0℃~+55℃ ,存储温度: -20℃~+60℃。

液晶12864接口

液晶12864显示图片程序源代码

/*******************12864显示图片*******************

* 处理器:51单片机

* 开发环境:keil

* 功能:12864显示图片

******************************************************/

#include <reg51.h>

#include <intrins.h>

#define uchar unsigned char

#define uint unsigned int

/*12864端口定义 */

#define LCD_data P0 //数据口

sbit LCD_RS = P1^0; //寄存器选择输入

sbit LCD_RW = P1^1; //液晶读/写控制

sbit LCD_EN = P2^5; //液晶使能控制

sbit LCD_PSB = P1^2; //串/并方式控制

unsigned char code zhu[]=

{

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFE,0x7D,0x7F,0xFF,0xFF,0xFF,0xFD,0xEF,0xFF,0xF0,0x04,0x3F,0xFF,

0xFF,0xFF,0xFF,0xFD,0xBD,0x7F,0xFF,0xFF,0xFF,0xE6,0xE7,0xFF,0xF4,0x00,0x7F,0xFF,

0xFF,0xFF,0xFF,0xFD,0x3D,0x7F,0xFF,0xFF,0xFF,0xDE,0x00,0xFF,0xF0,0x00,0x7F,0xFF,

0xFF,0xFF,0xFF,0xC4,0x3E,0x7F,0xFF,0xFF,0xFF,0xA8,0x00,0x1F,0xF0,0x00,0x7F,0xFF,

0xFF,0xFF,0xFF,0xBA,0x46,0x7F,0x7F,0xFF,0xFF,0x70,0x00,0x0E,0xF0,0x00,0xFF,0xFF,

0xFF,0xFF,0xFF,0x7D,0xBB,0x5F,0x7F,0xFF,0xFE,0xE1,0x70,0x01,0xF0,0x00,0xFF,0xFF,

0xFF,0xFF,0xFF,0x7D,0xA3,0xEF,0x9F,0xFF,0xFF,0x06,0xF8,0x03,0xF0,0x00,0xFF,0xFF,

0xFF,0xFF,0xF0,0x7C,0x07,0xB6,0x07,0xFF,0xFF,0xCC,0xF9,0x81,0xF0,0x01,0xFF,0xFF,

0xFF,0xFF,0xEF,0x75,0xDF,0xB8,0x01,0xFF,0xFF,0x98,0xF9,0x80,0xF1,0xF1,0xEF,0xFF,

0xFF,0xFF,0xEF,0x6D,0xEF,0x58,0xE0,0xFF,0xFF,0x90,0x70,0x00,0xF3,0xFB,0xFF,0xFF,

0xFF,0xFF,0xEF,0xBB,0xEE,0xD9,0xF0,0xFF,0xFF,0xB0,0x0C,0x00,0x73,0x1B,0xAF,0xFF,

0xFF,0xFF,0xF7,0x87,0xAE,0xC2,0xF0,0x7F,0xFF,0xE0,0x0C,0x62,0x36,0xFD,0xFF,0xFF,

0xFF,0xFF,0xF0,0x33,0xDD,0xD2,0x60,0x7F,0xFF,0xE0,0x31,0x61,0x76,0xFD,0xEF,0xFF,

0xFF,0xFF,0xEF,0xA0,0x3B,0xF4,0x18,0x3F,0xFF,0xE0,0x30,0x09,0x6C,0x3D,0xFF,0xFF,

0xFF,0xFF,0xDF,0x83,0xB6,0xA5,0x98,0x3F,0xFF,0xE0,0x00,0x01,0x7B,0xDD,0xAF,0xFF,

0xFF,0xFF,0xDE,0x83,0xCF,0xED,0x80,0x3F,0xFF,0xE0,0x00,0x01,0xFA,0xDD,0xFF,0xFF,

0xFF,0xFF,0xDD,0x7B,0xDE,0xF4,0x00,0x3F,0xFF,0xE0,0x00,0x09,0xFB,0xDD,0xEF,0xFF,

0xFF,0xFF,0xEE,0x5B,0xDF,0xF4,0x00,0x3F,0xFF,0xF0,0x00,0x29,0xF9,0xBB,0xFF,0xFF,

0xFF,0xFF,0xF1,0x79,0xBE,0xB4,0x00,0x3F,0xFF,0xF0,0x00,0x33,0xFF,0xFA,0xAF,0xFF,

0xFF,0xFF,0xEF,0x68,0x03,0xF8,0x00,0x3F,0xFF,0xF8,0x0F,0xE3,0xFF,0xF7,0xFF,0xFF,

0xFF,0xFF,0xDF,0x70,0x16,0xEA,0x01,0x3F,0xFF,0xF8,0x1F,0xC7,0xEF,0xF6,0xEF,0xFF,

0xFF,0xFF,0x07,0x80,0x0F,0xFA,0x1D,0x7F,0xE0,0x3C,0x7F,0x87,0xEF,0xEF,0xFF,0xFF,

0xFF,0xFF,0x0B,0xA0,0x2A,0xB6,0x1E,0x70,0x1F,0xBF,0x3E,0x0F,0xD3,0x9A,0xAF,0xFF,

0xFF,0xFF,0x85,0xA0,0x5F,0xF7,0x3C,0xF7,0xE0,0x3C,0x00,0x3F,0xDC,0x7F,0xFF,0xFF,

0xFF,0xFF,0x41,0x11,0x2E,0xF6,0x81,0xF8,0x00,0x3F,0x00,0xFF,0xAF,0x8E,0xEF,0xFF,

0xFF,0xFF,0x94,0xA0,0xFF,0xF7,0xFF,0xF8,0x00,0x3F,0xFF,0x1F,0xBF,0x77,0xFF,0xFF,

0xFF,0xFF,0xE2,0x3F,0xAA,0xB7,0x8B,0xFC,0x00,0x3F,0xDF,0xDF,0x6A,0xFA,0xAF,0xFF,

0xFF,0xFF,0x88,0x01,0xFF,0xFB,0x75,0xFC,0x00,0x3F,0xDF,0xBE,0xFE,0xFB,0xFF,0xFF,

0xFF,0xFF,0x40,0x00,0x3E,0xEB,0xB7,0xFE,0x00,0x3F,0xE0,0x7C,0x78,0xFB,0xF7,0xFF,

0xFF,0xFF,0x00,0x00,0x0F,0xFD,0xC7,0xFE,0x01,0xBF,0xFF,0xFA,0xA7,0x70,0x6F,0xFF,

0xFF,0xFF,0x0F,0xBF,0x0A,0xAA,0xFF,0xFE,0x0F,0xBF,0xFF,0xE7,0xCF,0x8F,0xAF,0xFF,

0xFF,0xFF,0x47,0x5E,0x2F,0xFF,0x7F,0xFF,0x1F,0xBF,0xFF,0xDF,0xEF,0x8F,0xAF,0xFF,

0xFF,0xFF,0x38,0x21,0xDE,0xEE,0x9F,0xFF,0xBF,0x7F,0xFF,0x3F,0xEF,0x0F,0xB7,0xFF,

0xFF,0xFF,0x07,0xD6,0x2F,0xFF,0xE7,0xFF,0xC0,0xFF,0xFC,0xFF,0xF0,0xEF,0xBF,0xFF,

0xFF,0xFF,0x41,0x8C,0xCA,0xBA,0xB9,0xFF,0xFF,0xFF,0xE3,0xFF,0xFD,0xF0,0x6F,0xFF,

0xFF,0xFF,0x93,0xCC,0xDF,0xFF,0xFE,0x3F,0xFF,0xFE,0x00,0x7F,0xFD,0xF7,0x7F,0xFF,

0xFF,0xFF,0x40,0x03,0x2E,0xEE,0xEF,0xC2,0x03,0xC0,0xFF,0x9F,0xFD,0xF7,0xAF,0xFF,

0xFF,0xFF,0xC0,0x03,0x3F,0xFF,0xFF,0xF9,0xFC,0x37,0xFF,0xE3,0xFE,0xE7,0xDF,0xFF,

0xFF,0xFF,0xD1,0xCC,0xFB,0xBB,0xBB,0xE7,0xFF,0x8F,0xFF,0xFC,0x3E,0x17,0xDF,0xFF,

0xFF,0xFF,0xC0,0x8C,0xFF,0xFF,0xFF,0x9F,0xFF,0xDF,0xFF,0xFF,0xC6,0xF7,0xEF,0xFF,

0xFF,0xFF,0xC0,0x90,0x2F,0xEF,0xEE,0x7F,0xFF,0xBF,0xFF,0xFF,0xF9,0xFB,0xF7,0xFF,

0xFF,0xFF,0xC0,0xA0,0x3F,0xFF,0xF9,0xDF,0xFF,0xBF,0xFF,0xDF,0xFE,0xFB,0xFF,0xFF,

0xFF,0xFF,0x10,0xC0,0x08,0x00,0x00,0x0F,0xFF,0xBF,0xFF,0x80,0x00,0x00,0x07,0xFF,

0xFF,0xFF,0xE8,0x80,0x7F,0xFF,0xFF,0xF3,0xFF,0xBF,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xE1,0xC0,0x7F,0xFF,0xFF,0xFC,0x7E,0x5F,0xF8,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xF0,0x00,0xFF,0xFF,0xFF,0xFF,0x81,0xE0,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF

};

#define delayNOP0(); {_nop_();_nop_();};

#define delayNOP1();{_nop_();_nop_();_nop_();_nop_();};

void delay(int In,int Out)

{

int i,j;

for(i=0;i<In;i++)

{for(j=0;j<Out;j++){;}}

}

/**********************************************************************/

/*检查LCD忙状态 */

/*lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。*/

/**********************************************************************/

bit lcd_busy()

{

bit result;

LCD_RS = 0;

LCD_RW = 1;

LCD_EN = 1;

delayNOP1();

result =(bit)(P0&0x80);

LCD_EN = 0;

return(result);

}

/*******************************************************************/

/*写指令数据到LCD */

/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 */

/*******************************************************************/

void lcd_wcmd(uchar cmd)

{

while(lcd_busy());

LCD_RS = 0;

LCD_RW = 0;

LCD_EN = 0;

delayNOP0();

P0 = cmd;

delayNOP1();

LCD_EN = 1;

delayNOP1();

LCD_EN = 0;

}

/*******************************************************************/

/*写显示数据到LCD */

/*RS=H,RW=L,E=高脉冲,D0-D7=数据。 */

/*******************************************************************/

void lcd_wdat(uchar dat)

{

while(lcd_busy());

LCD_RS = 1;

LCD_RW = 0;

LCD_EN = 0;

P0 = dat;

delayNOP1();

LCD_EN = 1;

delayNOP1();

LCD_EN = 0;

}

/*******************************************************************/

/* LCD初始化设定 */

/*******************************************************************/

void lcd_init()

{

LCD_PSB =1; //并口方式

lcd_wcmd(0x34); //扩充指令操作

delay(5,10);

lcd_wcmd(0x30); //基本指令操作

delay(5,10);

lcd_wcmd(0x0C); //显示开,关光标

delay(5,10);

lcd_wcmd(0x01); //清除LCD的显示内容

delay(5,10);

}

/*********************************************************************

函数名称:Draw_PM

功 能:在整个液晶屏幕上画图

参 数:无

返回值 :无

*********************************************************************/

void Draw_PM(const uchar *ptr)

{

uchari,j,k;

lcd_wcmd(0x34); //打开扩展指令集

i=0x80;

for(j=0;j<32;j++)

{

lcd_wcmd(i++);

lcd_wcmd(0x80);

for(k=0;k<16;k++)

{lcd_wdat(*ptr++);}

}

i = 0x80;

for(j=0;j<32;j++)

{

lcd_wcmd(i++);

lcd_wcmd(0x88);

for(k=0;k<16;k++)

{lcd_wdat(*ptr++);}

}

lcd_wcmd(0x36); //打开绘图显示

lcd_wcmd(0x30); //回到基本指令集

}

main()

{

lcd_init(); //初始化LCD

Draw_PM(zhu); //显示图片

while(1);

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/189867.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HCIA-Datacom题库2023最新放送,能答对60%就拿下证书

HCIA的学习是网络工程师这条路的开始。如果你准备好了&#xff0c;就往下看&#xff01;HCIA认证是华为公司认证体系中的初级认证&#xff0c;是一个入门认证&#xff0c;它包含的技术很简单&#xff0c;只是一个单核心的小网络&#xff0c;距离一个合格的网络工程师还有一段距…

电子文件全程管理与信息安全保障的并行之路

这篇文章是笔者2014年发表在《保密科学技术》第6期的一篇文章&#xff0c;时隔8年温习了一遍之后感觉还是有一定的可取之处&#xff0c;时至今日依然没有明显落伍&#xff0c;所以在修改完善其中部分内容之后分享给大家。 原文 Part. 01 引言 从上世纪八九十年代开始&#xff…

Nacos目录挂载并实现持久化

目录挂在docker pull ndocker pull nacos/nacos-server:v2.0.4 acos/nacos-server:v2.0.4 docker run -d --name nacos -e JVM_XMS256m -e JVM_XMX512m -e MODEstandalone --restartalways -p 8848:8848 nacos/nacos-server:1.4.2docker run -d --name nacos -e JVM_XMS256m -e…

作为一个合格的测试工程师如何跟开发有效沟通?

测试人员每天的例行工作之一就是与开发沟通代码改动&#xff0c;并对改动进行功能回归&#xff0c;我们称之为测试范围确认。对于每个测试人员来说&#xff0c;可能都会遇到以下问题&#xff1a; 1、拿到一个代码改动后我首先做什么&#xff1f; 2、跟开发沟通时问些什么&…

【Cocos新手入门】cocos creator操作 canvas绑定脚本及通过代码操作label组件变化的方法

本篇文章主要讲解利用cocos creator操作 canvas绑定脚本及通过代码操作label组件变化的方法 作者&#xff1a;任聪聪 日期&#xff1a;2023年1月31日 本篇文章仅适合cocos 2.4.3引擎版本下进行练习&#xff0c;其他版本可参考只有写法不同。 基本的操作说明 步骤一、通过cocos…

OJ万题详解––木板上的蚂蚁(C++详解)

题目 题目描述 有一块木板&#xff0c;长度为 n 个 单位 。一些蚂蚁在木板上移动&#xff0c;每只蚂蚁都以 每秒一个单位 的速度移动。其中&#xff0c;一部分蚂蚁向 左 移动&#xff0c;其他蚂蚁向 右 移动。 当两只向 不同 方向移动的蚂蚁在某个点相遇时&#xff0c;它们会同…

MongoDB 数据库操作

场景&#xff1a; 已知广告点击数据的记录已经存在&#xff0c;数据统计在mongodb中&#xff0c;现在要统计广告列表pv和uv。 思路&#xff1a; 这个时候就想到mysql的聚合查询group、count、distinct&#xff0c;但是于是就找了好多文档&#xff0c;发现mongodb的语法和mys…

“易”起涨知识|一文告诉你数字化生产的优势

在信息化高速发展的时代&#xff0c;企业工厂的数字化转型已经不是想不想转的问题&#xff0c;而是必须得转的形势。 智慧工厂是现代工厂信息化发展的新阶段。是在数字化工厂的基础上&#xff0c;利用物联网的技术和设备监控技术加强信息管理和服务&#xff1b;清楚掌握产销流…

Dart语法学习-变量

一、 创建Dart File Hello, World void main() {print(Hello world); }Log: Hello world 二、变量 1.Dart 支持类型推断。 var name Voyager I;var year 1977;var antennaDiameter 3.7;var flybyObjects [A1, A2, A3, A4];var image {tags:[saturn],url:www.baidu,com};…

王道操作系统笔记(四)———— 进程同步与互斥

文章目录一、同步与互斥的概念1.1 同步与互斥的基本概念1.2 临界资源与共享资源1.3 独占设备与共享设备二、实现临界区互斥的基本方法2.1 软件实现方法2.1.1 单标志法2.1.2 双标志先检查法2.1.3 双标志后检查法2.1.4 Peterson 算法2.1.5 软件实现方法总结2.2 硬件实现方法2.2.1…

【电子通识】查找硬件学习资料的方法

做为一名硬件工程师&#xff0c;在工作中会经常遇到一些问题&#xff0c;这些问题最开始可能也并不知道是什么原因。对于这些异常现象&#xff0c;我们可能需要深入去了解电路原理或器件特性等方式&#xff0c;从原理上理解并解决。当再次遇到相同或相似的问题时&#xff0c;我…

Python爬虫2--数据解析方法:bs4库的使用和案例

目录标题数据解析1、BeautifulSoup库1.1 BeautifulSoup库入门1.1.1 BeautifulSoup类的基本元素&#xff1a;1.1.2 基于bs4库的HTML内容遍历方法1.1.3 基于bs4库的HTML格式化和编码1.2 信息组织和提取方法1.2.1 信息标记的三种形式&#xff1a;xml,json,yaml1.2.2 三种信息标记形…

360数据恢复如何操作?360安全卫士恢复误删文件的方法(详解)

3 60安全 卫士属于一款杀毒软件&#xff0c;这是很多人都知道的事情。但是你知道吗&#xff1f;3 60安全 卫士还有一个免费功能&#xff0c;就是文件恢复功能。 当文件被误删&#xff0c;电脑回收站又找不到&#xff0c;你可以尝试通过3 60里面的文件恢复功能来进行数据恢复。…

Leetcode:62. 不同路径、63. 不同路径 II(C++)

目录 62. 不同路径 问题描述&#xff1a; 实现代码与解析&#xff1a; 深度优先&#xff08;超时&#xff09;&#xff1a; 原理思路&#xff1a; 动态规划&#xff1a; 原理思路&#xff1a; 数学方法&#xff1a; 原理思路&#xff1a; 63. 不同路径 II 问题描述&…

AcWing蓝桥杯AB组辅导课09、复杂DP

文章目录前言一、复杂DP例题例题1&#xff1a;AcWing 1050. 鸣人的影分身&#xff08;线性dp&#xff09;分析题解&#xff1a;DP例题2&#xff1a;AcWing 1047. 糖果&#xff08;背包问题变形&#xff09;分析题解&#xff1a;DP&#xff08;01背包问题变形&#xff09;例题3&…

静态库与动态库的生成与使用

一、库文件 预编译——>编译——>汇编——>链接&#xff08;使用库&#xff09;——>可执行文件 二、生成库&#xff1a;把大量的已经实现的代码打包起来 生成动态库&#xff1a; 1、将源码遍历汇编生成二进制指令 gcc -fPIC -c child.c -o child.o 2、将所有二进…

即时通讯开发之详解TCP/IP中的UDP 协议

UDP 是传输层协议,和 TCP 协议处于一个分层中,但是与 TCP 协议不同,UDP 协议并不提供超时重传,出错重传等功能,也就是说其是不可靠的协议。UDP 协议头2.1UDP 端口号由于很多软件需要用到 UDP 协议,所以 UDP 协议必须通过某个标志用以区分不同的程序所需要的数据包。端口号的功能…

C 语言零基础入门教程(二十一)

C 头文件 头文件是扩展名为 .h 的文件&#xff0c;包含了 C 函数声明和宏定义&#xff0c;被多个源文件中引用共享。有两种类型的头文件&#xff1a;程序员编写的头文件和编译器自带的头文件。 在程序中要使用头文件&#xff0c;需要使用 C 预处理指令 #include 来引用它。前…

Linux | 编辑器gcc/g++的使用【动静态库的认识】

文章目录一、对程序的认知 && 初识gcc1、程序是如何诞生的&#xff1f;2、gcc的初步认识3、如何使用gcc二、gcc逐步分析程序的翻译环境1、预编译【进行宏替换】2、编译【C语言——>汇编语言】3、汇编【汇编语言——>可重定位目标二进制文件】4、链接【生成可执行…

一篇文章学会写SQL

本篇文章主要讲如何写SQL&#xff0c;虽然我在之前有篇文章中写到过数据库的操作和概念&#xff0c;其中有讲到数据库和表的操作语句以及有哪些函数和查询关键字&#xff08;本篇不赘述&#xff09;&#xff0c;但毕竟理解概念和会实践书写是两码事。。 身为一名测试人员&#…